dev:岗位管理-dubbo实现

main
SondonYong 2025-11-04 10:25:52 +08:00
parent fe2f74ecf4
commit d337fa6c5c
1 changed files with 25 additions and 1 deletions

View File

@ -1,6 +1,7 @@
package com.zcloud.basic.info.facade; package com.zcloud.basic.info.facade;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.cola.dto.MultiResponse; import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.SingleResponse; import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.basic.info.api.PostServiceI; import com.zcloud.basic.info.api.PostServiceI;
@ -9,12 +10,14 @@ import com.zcloud.basic.info.dto.clientobject.PostCO;
import com.zcloud.gbscommon.zcloudpost.facade.ZcloudPostFacade; import com.zcloud.gbscommon.zcloudpost.facade.ZcloudPostFacade;
import com.zcloud.gbscommon.zcloudpost.request.ZcloudPostQry; import com.zcloud.gbscommon.zcloudpost.request.ZcloudPostQry;
import com.zcloud.gbscommon.zcloudpost.response.ZcloudPostCO; import com.zcloud.gbscommon.zcloudpost.response.ZcloudPostCO;
import com.zcloud.gbscommon.zcloudpost.response.ZcloudPostDepartmentCO;
import org.apache.dubbo.config.annotation.DubboService; import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* @author SondonYong * @author SondonYong
@ -39,6 +42,10 @@ public class ZcloudPostFacadeImpl implements ZcloudPostFacade {
ZcloudPostCO zcloudPostCO = new ZcloudPostCO(); ZcloudPostCO zcloudPostCO = new ZcloudPostCO();
BeanUtils.copyProperties(postCO.getData(), zcloudPostCO); BeanUtils.copyProperties(postCO.getData(), zcloudPostCO);
List<ZcloudPostDepartmentCO> zcloudPostDepartmentCOS = BeanUtil.copyToList(postCO.getData().getDepartmentList(), ZcloudPostDepartmentCO.class);
zcloudPostCO.setDepartmentList(zcloudPostDepartmentCOS);
return SingleResponse.of(zcloudPostCO); return SingleResponse.of(zcloudPostCO);
} }
@ -52,7 +59,24 @@ public class ZcloudPostFacadeImpl implements ZcloudPostFacade {
return null; return null;
} }
List<ZcloudPostCO> zcloudPostCOList = BeanUtil.copyToList(list.getData(), ZcloudPostCO.class); // List<ZcloudPostCO> zcloudPostCOList = BeanUtil.copyToList(list.getData(), ZcloudPostCO.class);
List<ZcloudPostCO> zcloudPostCOList = list.getData().stream()
.map(postCO -> {
// 复制基本属性
ZcloudPostCO zcloudPostCO = BeanUtil.toBean(postCO, ZcloudPostCO.class);
// 手动处理嵌套List
if (CollUtil.isNotEmpty(postCO.getDepartmentList())) {
List<ZcloudPostDepartmentCO> deptList = BeanUtil.copyToList(
postCO.getDepartmentList(),
ZcloudPostDepartmentCO.class
);
zcloudPostCO.setDepartmentList(deptList);
}
return zcloudPostCO;
})
.collect(Collectors.toList());
return MultiResponse.of(zcloudPostCOList); return MultiResponse.of(zcloudPostCOList);
} }