package cn.ey.biz.module.system.convert.auth;

import cn.ey.biz.common.pojo.PageResult;
import cn.ey.biz.module.system.api.oauth2.dto.OAuth2ClientRespDTO;
import cn.ey.biz.module.system.controller.admin.appuser.vo.OAuth2ClientReqVO;
import cn.ey.biz.module.system.controller.admin.oauth2.vo.client.OAuth2ClientCreateReqVO;
import cn.ey.biz.module.system.controller.admin.oauth2.vo.client.OAuth2ClientRespVO;
import cn.ey.biz.module.system.controller.admin.oauth2.vo.client.OAuth2ClientUpdateReqVO;
import cn.ey.biz.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * OAuth2 客户端 Convert
 *
 */
@Mapper
public interface OAuth2ClientConvert {

    OAuth2ClientConvert INSTANCE = Mappers.getMapper(OAuth2ClientConvert.class);

    OAuth2ClientDO convert(OAuth2ClientCreateReqVO bean);

    OAuth2ClientDO voToDo(OAuth2ClientReqVO bean);

    OAuth2ClientDO convert(OAuth2ClientUpdateReqVO bean);

    OAuth2ClientRespVO convert(OAuth2ClientDO bean);

    List<OAuth2ClientRespVO> convertList(List<OAuth2ClientDO> list);

    PageResult<OAuth2ClientRespVO> convertPage(PageResult<OAuth2ClientDO> page);

    OAuth2ClientRespDTO convert2(OAuth2ClientDO bean);

}
