From e7b503e6b37b8ed0b408238313b052fbc82ed2d3 Mon Sep 17 00:00:00 2001 From: SondonYong Date: Tue, 4 Nov 2025 13:37:43 +0800 Subject: [PATCH] =?UTF-8?q?dev:=E5=B2=97=E4=BD=8D=E7=AE=A1=E7=90=86-dubbo?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../info/facade/ZcloudPostFacadeImpl.java | 57 ++++++++++++------- 1 file changed, 36 insertions(+), 21 deletions(-) diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudPostFacadeImpl.java b/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudPostFacadeImpl.java index decce2a..4cd4637 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudPostFacadeImpl.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/facade/ZcloudPostFacadeImpl.java @@ -6,7 +6,9 @@ import com.alibaba.cola.dto.MultiResponse; import com.alibaba.cola.dto.SingleResponse; import com.zcloud.basic.info.api.PostServiceI; import com.zcloud.basic.info.dto.PostListQry; +import com.zcloud.basic.info.dto.clientobject.DepartmentCO; import com.zcloud.basic.info.dto.clientobject.PostCO; +import com.zcloud.gbscommon.utils.DeepCopyUtil; import com.zcloud.gbscommon.zcloudpost.facade.ZcloudPostFacade; import com.zcloud.gbscommon.zcloudpost.request.ZcloudPostQry; import com.zcloud.gbscommon.zcloudpost.response.ZcloudPostCO; @@ -15,7 +17,9 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.BeanUtils; import javax.annotation.Resource; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Objects; import java.util.stream.Collectors; @@ -39,12 +43,18 @@ public class ZcloudPostFacadeImpl implements ZcloudPostFacade { return null; } - ZcloudPostCO zcloudPostCO = new ZcloudPostCO(); - BeanUtils.copyProperties(postCO.getData(), zcloudPostCO); +// ZcloudPostCO zcloudPostCO = new ZcloudPostCO(); +// BeanUtils.copyProperties(postCO.getData(), zcloudPostCO); - List zcloudPostDepartmentCOS = BeanUtil.copyToList(postCO.getData().getDepartmentList(), ZcloudPostDepartmentCO.class); + // 定义映射关系 + Map, Class> mapping = new HashMap<>(); + mapping.put(DepartmentCO.class, ZcloudPostDepartmentCO.class); - zcloudPostCO.setDepartmentList(zcloudPostDepartmentCOS); + ZcloudPostCO zcloudPostCO = DeepCopyUtil.deepCopy(postCO.getData(), ZcloudPostCO.class, mapping); + +// List zcloudPostDepartmentCOS = BeanUtil.copyToList(postCO.getData().getDepartmentList(), ZcloudPostDepartmentCO.class); + +// zcloudPostCO.setDepartmentList(zcloudPostDepartmentCOS); return SingleResponse.of(zcloudPostCO); } @@ -59,24 +69,29 @@ public class ZcloudPostFacadeImpl implements ZcloudPostFacade { return null; } + Map, Class> mapping = new HashMap<>(); + mapping.put(DepartmentCO.class, ZcloudPostDepartmentCO.class); + + List zcloudPostCOList = DeepCopyUtil.copyList(list.getData(), ZcloudPostCO.class, mapping); + // List zcloudPostCOList = BeanUtil.copyToList(list.getData(), ZcloudPostCO.class); - List zcloudPostCOList = list.getData().stream() - .map(postCO -> { - // 复制基本属性 - ZcloudPostCO zcloudPostCO = BeanUtil.toBean(postCO, ZcloudPostCO.class); - - // 手动处理嵌套List - if (CollUtil.isNotEmpty(postCO.getDepartmentList())) { - List deptList = BeanUtil.copyToList( - postCO.getDepartmentList(), - ZcloudPostDepartmentCO.class - ); - zcloudPostCO.setDepartmentList(deptList); - } - - return zcloudPostCO; - }) - .collect(Collectors.toList()); +// List zcloudPostCOList = list.getData().stream() +// .map(postCO -> { +// // 复制基本属性 +// ZcloudPostCO zcloudPostCO = BeanUtil.toBean(postCO, ZcloudPostCO.class); +// +// // 手动处理嵌套List +// if (CollUtil.isNotEmpty(postCO.getDepartmentList())) { +// List deptList = BeanUtil.copyToList( +// postCO.getDepartmentList(), +// ZcloudPostDepartmentCO.class +// ); +// zcloudPostCO.setDepartmentList(deptList); +// } +// +// return zcloudPostCO; +// }) +// .collect(Collectors.toList()); return MultiResponse.of(zcloudPostCOList); }