From d4c06254a33d257cd608348d98db901dbda98b58 Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期五, 02 六月 2023 14:31:50 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs

---
 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java |   48 ++++++++++++++++++++++++++++++++++++------------
 1 files changed, 36 insertions(+), 12 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java
index d0cc795..7799f12 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java
@@ -4,10 +4,11 @@
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.code.entity.CodeClassify;
+import com.vci.ubcs.code.feign.ICodeClassifyClient;
+import com.vci.ubcs.code.webservice.entity.*;
 import com.vci.ubcs.code.webservice.mapper.DockingPreAttrMappingMapper;
-import com.vci.ubcs.code.webservice.service.IDockingPreAttrMappingService;
-import com.vci.ubcs.code.webservice.service.IDockingPreAttrRangeService;
-import com.vci.ubcs.code.webservice.service.IDockingPreMetaAttrService;
+import com.vci.ubcs.code.webservice.service.*;
 import com.vci.ubcs.code.webservice.vo.DokingAttributeSerchVO;
 import com.vci.ubcs.code.webservice.wrapper.DockingPreAttrMappingWrapper;
 import com.vci.ubcs.code.webservice.wrapper.DockingPreAttrRangeWrapper;
@@ -15,14 +16,12 @@
 import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
 import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
-import com.vci.ubcs.code.webservice.entity.DockingPreAttrMapping;
-import com.vci.ubcs.code.webservice.entity.DockingPreAttrRange;
-import com.vci.ubcs.code.webservice.entity.DockingPreMetaAttr;
 import com.vci.ubcs.code.webservice.vo.DockingPreAttrMappingVO;
 import com.vci.ubcs.code.webservice.vo.DockingPreAttrRangeVO;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -45,6 +44,11 @@
 	 */
 	@Autowired(required = false)
 	private DockingPreAttrMappingMapper dockingPreAttrMappingMapper;
+	/***
+	 * 涓绘暟鎹垎绫绘湇鍔�
+	 */
+	@Autowired(required = true)
+	private  	ICodeClassifyClient codeClassifyClient;
 
 	/***
 	 * 涓氬姟鏁版嵁灞炴�ф湇鍔�
@@ -64,8 +68,19 @@
 	private IDockingPreAttrRangeService dockingPreAttrRangeService;
 
 
+	/***
+	 * 闆嗗洟鍒嗙被瑙嗗浘妯″瀷鏈嶅姟
+	 */
+	@Autowired(required = false)
 
+	private IDockingPreViewModelService dockingPreViewModelService;
 
+	/***
+	 * 闆嗗洟灞炴�ф湇鍔�
+	 */
+	@Autowired(required = false)
+	@Lazy
+	private IDockingPreClassifyService dockingPreClassifyService;
 
 	/***
 	 * 鏍规嵁涓绘暟鎹垎绫讳富閿幏鍙栧垎绫讳俊鎭厤缃�
@@ -77,31 +92,40 @@
 		VciBaseUtil.alertNotNull(codeClassifyId,"涓绘暟鎹垎绫讳富閿�");
 		VciBaseUtil.alertNotNull(sourceClassifyId,"闆嗗洟鍒嗙被涓婚敭");
 		//棣栧厛鑾峰彇鍒嗙被妯℃澘灞炴�э紝鐒跺悗涓庡睘鎬ч厤缃潗姣旇緝锛屼互闃茶鏈夊鍒犲睘鎬х殑鍙兘
+		DockingPreClassify dockingPreClassify=dockingPreClassifyService.getById(sourceClassifyId);
 		List<DockingPreMetaAttr> dockingPreMetaAttrList=	dockingPreMetaAttrService.selectByWrapper(Wrappers.<DockingPreMetaAttr>query().lambda().eq(DockingPreMetaAttr::getSourceClassifyId,sourceClassifyId));
 		List<DockingPreAttrMapping> dockingPreAttrMappings=this.selectByWrapper(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getSourceClassifyId, sourceClassifyId).eq(DockingPreAttrMapping::getTargetClassifyId, codeClassifyId));
 		Map<String/**灞炴�т富閿�**/, DockingPreAttrMapping> dockingPreAttrMappingMap = dockingPreAttrMappings.stream().filter(cbo -> cbo != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getMetaListId(), t -> t));
-
+		List<DockingPreViewModel> dockingPreViewModelList= dockingPreViewModelService.list(Wrappers.<DockingPreViewModel>query().lambda().eq(DockingPreViewModel::getSourceClassifyId,sourceClassifyId));
+		Map<String,DockingPreViewModel> dockingPreViewModelMap=dockingPreViewModelList.stream().filter(cbo -> cbo != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getOid(), t -> t));
+		CodeClassify codeClassify= codeClassifyClient.getById(codeClassifyId);
 		List<DockingPreAttrMapping> newDockingPreAttrMappingList=new ArrayList<>();
 		dockingPreMetaAttrList.stream().forEach(dockingPreMetaAttr -> {
 			String attrOid=dockingPreMetaAttr.getOid();
 			DockingPreAttrMapping dockingPreAttrMapping=new DockingPreAttrMapping();
 			if(dockingPreAttrMappingMap.containsKey(attrOid)){
 				dockingPreAttrMapping=	dockingPreAttrMappingMap.get(attrOid);
+				DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreAttrMapping);
 			}else{
 				DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreAttrMapping, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
 				dockingPreAttrMapping.setMetaListId(dockingPreMetaAttr.getOid());//灞炴�т富閿�
 				dockingPreAttrMapping.setSourceAttrKey(dockingPreMetaAttr.getEnglishName());//鑻辨枃鍚嶇О
 				dockingPreAttrMapping.setSourceAttrName(dockingPreMetaAttr.getChineseName());//涓枃鍚嶇О
 				dockingPreAttrMapping.setSourceClassifyId(dockingPreMetaAttr.getSourceClassifyId());//闆嗗洟鍒嗙被oid
-				dockingPreAttrMapping.setSourceClassifyName("");//鍒嗙被鍚嶇О
+				DockingPreViewModel dockingPreViewModel=new DockingPreViewModel();
+				if(dockingPreViewModelMap.containsKey(dockingPreMetaAttr.getViewModelId())){
+					dockingPreViewModel=dockingPreViewModelMap.get(dockingPreMetaAttr.getViewModelId());
+				}
+				dockingPreAttrMapping.setSourceClassifyName(dockingPreClassify.getClassName());//鍒嗙被鍚嶇О
 				dockingPreAttrMapping.setViewModeId(dockingPreMetaAttr.getViewModelId());//妯″瀷瑙嗗浘id
-				dockingPreAttrMapping.setViewModelName("");//鍒嗙被妯″瀷鍚嶇О
-				dockingPreAttrMapping.setViewName("");//鍒嗙被妯″瀷鍚嶇О
-
+				dockingPreAttrMapping.setViewModelName(dockingPreViewModel.getName());//鍒嗙被妯″瀷鍚嶇О
+				dockingPreAttrMapping.setViewName(dockingPreViewModel.getViewName());//鍒嗙被妯″瀷鍚嶇О
+				dockingPreAttrMapping.setTargetClassifyId(codeClassifyId);
+				dockingPreAttrMapping.setTargetClassifyName(codeClassify.getName());
 			}
 			newDockingPreAttrMappingList.add(dockingPreAttrMapping);
 		});
-		return 	dockingPreAttrMappingDO2VOS(dockingPreAttrMappings,false);
+		return 	dockingPreAttrMappingDO2VOS(newDockingPreAttrMappingList,false);
 	}
 
 	/***

--
Gitblit v1.9.3