From f6b6ea193719ef3e72baf0e140dbd63ad5b83bff Mon Sep 17 00:00:00 2001
From: zhangxp <zhangxp@chicecm.com>
Date: 星期五, 26 五月 2023 18:23:52 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs

---
 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java |   48 +++++++++++++++++++++++++++---------------------
 1 files changed, 27 insertions(+), 21 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java
index c12be50..266fe5a 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java
@@ -6,14 +6,12 @@
 import com.alibaba.nacos.api.exception.NacosException;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.omd.cache.EnumCache;
+import com.vci.ubcs.omd.constant.BtmTypeConstant;
 import com.vci.ubcs.omd.constant.BtmTypeFieldConstant;
 import com.vci.ubcs.omd.dto.BtmAndLinkTypeDdlDTO;
 import com.vci.ubcs.omd.entity.Attribute;
 import com.vci.ubcs.omd.repeater.DomainRepeater;
-import com.vci.ubcs.omd.service.IAttributeService;
-import com.vci.ubcs.omd.service.IBtmTypeAttributeService;
-import com.vci.ubcs.omd.service.IModifyAttributeService;
+import com.vci.ubcs.omd.service.*;
 import com.vci.ubcs.omd.vo.*;
 import com.vci.ubcs.omd.wrapper.BtmTypeWrapper;
 import com.vci.ubcs.omd.wrapper.ModifyAttributeWrapper;
@@ -24,7 +22,6 @@
 import com.vci.ubcs.omd.entity.BtmTypeAttribute;
 import com.vci.ubcs.omd.entity.ModifyAttributeInfo;
 import com.vci.ubcs.omd.mapper.BtmTypeMapper;
-import com.vci.ubcs.omd.service.IBtmTypeService;
 import com.vci.ubcs.starter.exception.VciBaseException;
 import com.vci.ubcs.starter.web.enumpck.BooleanEnum;
 import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
@@ -75,6 +72,12 @@
 	 */
 	@Autowired
 	private IModifyAttributeService modifyAttributeService;
+
+	/**
+	 * 鐗堟湰瑙勫垯鐨勬湇鍔�
+	 */
+	@Autowired
+	private IRevisionRuleService revisionRuleService;
 
 	/**
 	 * 灞炴�х殑鏈嶅姟
@@ -589,12 +592,12 @@
 		if (btmTypeDTO.isRevisionFlag()){
 			// 闇�瑕佹帶鍒剁増鏈�
 			// 妫�鏌ヤ娇鐢ㄧ殑鐗堟湰瑙勫垯鏄惁瀛樺湪
-//				if (StringUtils.isNotBlank(btmTypeDTO.getRevisionRuleId())) {
-//					if (revisionRuleServiceI.checkRevisionRuleExist(btmTypeDTO.getRevisionRuleId())) {
-//						throw new VciBaseException("鐗堟湰瑙勫垯{0}[{1}]鍦ㄧ郴缁熶腑涓嶅瓨鍦紝璇峰厛鏌ヨ瘉",
-//							new Object[]{btmTypeDTO.getRevisionRuleId(), btmTypeDTO.getRevisionRuleName()});
-//					}
-//				}
+				if (StringUtils.isNotBlank(btmTypeDTO.getRevisionRuleId())) {
+					if (revisionRuleService.checkRevisionRuleExist(btmTypeDTO.getRevisionRuleId())) {
+						throw new VciBaseException("鐗堟湰瑙勫垯{0}[{1}]鍦ㄧ郴缁熶腑涓嶅瓨鍦紝璇峰厛鏌ヨ瘉",
+							new Object[]{btmTypeDTO.getRevisionRuleId(), btmTypeDTO.getRevisionRuleName()});
+					}
+				}
 			btmTypeDTO.setAttributes(addAttributeByFieldMap(btmTypeDTO.getAttributes(),BtmTypeFieldConstant.REVISION_MANAGE_FIELD_MAP));
 		}
 		if (btmTypeDTO.isLifeCycleFlag()){
@@ -719,7 +722,7 @@
 			btmType.setOid(VciBaseUtil.getPk());
 			btmType.setTs(now);
 			btmType.setCreator(user);
-			btmType.setBtmName("btmType");
+			btmType.setBtmName(BtmTypeConstant.BTMTYPE);
 			btmType.setCreateTime(now);
 			btmType.setDomain(domain);
 			btmType.setLastModifyTime(now);
@@ -734,8 +737,8 @@
 			}).map(attr -> {
 				// 娣诲姞灞炴�э紝1鏄牎楠岋紝2鏄坊鍔�
 				Attribute attribute = new Attribute();
-				attribute.setKey(attr.getId());
-				attribute.setLabel(attr.getName());
+				attribute.setId(attr.getId());
+				attribute.setName(attr.getName());
 				attribute.setTypeCode("attributeType");
 				attribute.setTypeKey(attr.getAttrDataType());
 //				attribute.setDictKey(attr.getAttrDataType());
@@ -748,10 +751,14 @@
 				attribute.setReferToId(attr.getReferBtmTypeId());
 				attribute.setReferToName(attr.getReferBtmTypeName());
 				attribute.setTs(now);
+				attribute.setOwner(user);
 				attribute.setCreateTime(now);
-				attribute.setIsDeleted(0);
-				attribute.setCreateUser(AuthUtil.getUserId());
-				idAttrMap.put(attribute.getKey(),attribute);
+				attribute.setLastModifier(user);
+				attribute.setLastModifyTime(now);
+				attribute.setBtmName(BtmTypeConstant.ATTRIBUTE);
+				attribute.setCreator(user);
+				attribute.setOid(VciBaseUtil.getPk());
+				idAttrMap.put(attribute.getId(),attribute);
 				// 鍦ㄨ繖閲岀粰涓氬姟绫诲瀷璁剧疆鐗堟湰鎺у埗銆佺敓鍛藉懆鏈熸帶鍒躲�佸瘑绾ф帶鍒剁浉鍏崇殑淇℃伅
 
 				// 娣诲姞涓氬姟绫诲瀷鍜屽睘鎬х殑鍏崇郴
@@ -761,7 +768,6 @@
 				btmTypeAttribute.setCreateTime(now);
 				btmTypeAttribute.setLastModifier(user);
 				btmTypeAttribute.setLastModifyTime(now);
-//				btmTypeAttribute.setBtmName("btmTypeAttribute");
 				btmTypeAttribute.setOid(VciBaseUtil.getPk());
 				btmTypeAttribute.setBtmName(btmType.getId());
 				btmTypeAttribute.setOwner(user);
@@ -775,7 +781,7 @@
 			btmType.setConsistence(BooleanEnum.TRUE.getValue());
 			btmList.add(btmType);
 		});
-		List<Attribute> existAttr = attributeService.list(Wrappers.<Attribute>query().lambda().in(Attribute::getKey, attributeIds));
+		List<Attribute> existAttr = attributeService.list(Wrappers.<Attribute>query().lambda().in(Attribute::getId, attributeIds));
 		if (!CollectionUtils.isEmpty(btmList)){
 			baseMapper.batchInsert(btmList);
 		}
@@ -797,8 +803,8 @@
 		if (CollectionUtils.isEmpty(existAttr)){
 			attributeService.saveBatch(idAttrMap.values());
 		}else {
-			List<Attribute> addList = idAttrMap.values().stream().filter(a -> existAttr.stream().noneMatch(b -> StringUtils.equals(a.getKey(), b.getKey()))).collect(Collectors.toList());
-			if (CollectionUtils.isEmpty(addList)) {
+			List<Attribute> addList = idAttrMap.values().stream().filter(a -> existAttr.stream().noneMatch(b -> StringUtils.equals(a.getId(), b.getId()))).collect(Collectors.toList());
+			if (!CollectionUtils.isEmpty(addList)) {
 				attributeService.saveBatch(addList);
 			}
 		}

--
Gitblit v1.9.3