package com.zcloud.basic.info.command.convertor;

import com.jjb.saas.system.client.user.request.FacadeUserAddCmd;
import com.zcloud.basic.info.domain.model.UserE;
import com.zcloud.basic.info.dto.clientobject.UserCO;
import com.zcloud.basic.info.dto.clientobject.UserXmfCO;
import com.zcloud.basic.info.persistence.dataobject.UserDO;
import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity;
import com.zcloud.gbscommon.excelEntity.UserExcelImportEntity;
import com.zcloud.gbscommon.zclouduser.response.ZcloudUserCo;
import org.mapstruct.Mapper;

import java.util.List;



/**
* web-app
* @Author zhangyue
* @Date 2025-11-04 14:07:34
*/
@Mapper(componentModel = "spring")
public interface UserCoConvertor {
    /**
    * @param userDOs
    * @return
    */
    List<UserCO> converDOsToCOs(List<UserDO> userDOs);
    List<UserExcelExportEntity> converDOsToExcelEntitys(List<UserDO> userDOs);
    List<UserDO> converExcelEntitysToDOs(List<UserExcelImportEntity> entities);
    UserCO converDOToCO(UserDO userDO);
    FacadeUserAddCmd converEToFacadeUserAddCmd(UserE userE);

    List<ZcloudUserCo> converCOsToDubboCOs(List<UserCO> userCOList);
    ZcloudUserCo converCOToDubboCO(UserCO userCO);

    List<UserXmfCO> converDOsToXgfCOs(List<UserDO> data);

    List<UserE> convertDOsToEs(List<UserDO> userList);

    List<ZcloudUserCo> converDOsToDubboCOs(List<UserDO> userCOList);
}

