From 41aacf110288329a6beb494ccccaeabd217a08b9 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期二, 05 十二月 2023 18:05:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java |   70 +++++++++++++++++++++++++++--------
 1 files changed, 54 insertions(+), 16 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
index edba565..8045c13 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
@@ -50,6 +50,10 @@
 import com.vci.ubcs.starter.web.util.VciBaseUtil;
 import com.vci.ubcs.starter.web.util.WebUtil;
 import com.vci.ubcs.system.cache.NacosConfigCache;
+import com.vci.ubcs.system.entity.Strategy;
+import com.vci.ubcs.system.feign.ISysClient;
+import com.vci.ubcs.system.user.entity.User;
+import com.vci.ubcs.system.user.feign.IUserClient;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.AuthUtil;
@@ -114,10 +118,13 @@
 	private RevisionModelUtil revisionModelUtil;
 
 	@Resource
-	private NacosConfigCache nacosConfigCache;
-
-	@Resource
 	private ICodeFixedValueService codeFixedValueService;
+
+	/**
+	 * 绯荤粺鏈嶅姟
+	 */
+	@Resource
+	private IUserClient userClient;
 
 	/**
 	 * 鍒嗛〉鏌ヨ
@@ -127,13 +134,14 @@
 	 */
 	@Override
 	public IPage<CodeRuleVO> gridCodeRule(Query query, Map<String,Object> conidtionMap) throws VciBaseException {
+		//int i = 1 / 0;
 		//濡傛灉绛変簬鑷繁閰嶇疆鐨勭鐞嗙粍绉熸埛id鍜岀鐞嗙粍瓒呯璐﹀彿锛屽氨涓嶉渶瑕佹寜鐓ц鍒欐墍鏈夎�呮潵杩涜鏌ヨ
-		if(!(AuthUtil.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())
-			&& AuthUtil.getUserId().toString().equals(nacosConfigCache.getAdminUserInfo().getUserId().toString()))
+		/*if(!(AuthUtil.getTenantId().equals(NacosConfigCache.getAdminUserInfo().getTenantId())
+			&& AuthUtil.getUserId().toString().equals(NacosConfigCache.getAdminUserInfo().getUserId().toString()))
 		){
 			// 鎸夌収瑙勫垯鎵�鏈夎�呮潵鏌ヨ
-			conidtionMap.put("owner",AuthUtil.getUserId());
-		}
+			conidtionMap.put("owner",AuthUtil.getUserId().toString());
+		}*/
 		IPage<CodeRule> codeRuleIPage = this.codeRuleMapper.selectPage(Condition.getPage(query), UBCSCondition.getQueryWrapper(conidtionMap, CodeRule.class));
 		//do杞瑅o鍚屾椂setLcStatusText鐢熷懡鍛ㄦ湡鍊硷紝骞跺寘瑁呮垚鍒嗛〉瀵硅薄杩斿洖
 		return CodeRuleWrapper.build().pageVO(codeRuleIPage);
@@ -155,9 +163,10 @@
 		// 灏咲TO杞崲涓篋O
 		CodeRule codeRule = Objects.requireNonNull(BeanUtil.copy(codeRuleDTO, CodeRule.class));
 		// 濉厖榛樿鍊�
-		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRule, MdmBtmTypeConstant.CODE_RULE);
+		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRule, MdmBtmTypeConstant.CODE_RULE,null);
 		codeRule.setLctid(CODE_RULE_LC);
 		codeRule.setLcStatus(FRAMEWORK_RELEASE_EDITING);
+		codeRule.setOwnerText(AuthUtil.getUserAccount()+"("+AuthUtil.getNickName()+")");
 		return R.status(codeRuleMapper.insert(codeRule)>0);
 	}
 
@@ -170,7 +179,7 @@
 	public boolean checkCodeRuleRepeat(CodeRuleDTO codeRuleDTO)throws VciBaseException {
 		LambdaQueryWrapper<CodeRule> wrapper = Wrappers.<CodeRule>query()
 			.lambda().eq(CodeRule::getId, codeRuleDTO.getId());
-		if(AuthUtil.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())){
+		if(AuthUtil.getTenantId().equals(NacosConfigCache.getAdminUserInfo().getTenantId())){
 			wrapper.eq(CodeRule::getTenantId,AuthUtil.getTenantId());
 		}
 		// 鏍规嵁瑙勫垯id鏌ヨ缂栧彿
@@ -223,8 +232,14 @@
 		revisionModelUtil.copyFromDTOIgnore(codeRuleDTO, codeRule);
 		if(!codeRule.getOwner().equals(codeRuleDTO.getOwner())){
 			codeRule.setOwner(codeRuleDTO.getOwner());
+			R<User> userR = userClient.userInfoById(Func.toLong(codeRuleDTO.getOwner()));
+			if(!userR.isSuccess() || Func.isEmpty(userR.getData())){
+				codeRule.setOwnerText(codeRuleDTO.getOwner());
+			}else{
+				codeRule.setOwnerText(userR.getData().getAccount()+"("+userR.getData().getRealName()+")");
+			}
 		}
-		DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeRule);
+		DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeRule,null);
 		return R.status(codeRuleMapper.updateById(codeRule)>0);
 	}
 
@@ -373,7 +388,7 @@
 	public Collection<CodeRuleVO> listCodeRuleByOids(Collection<String> oidCollections) throws VciBaseException {
 		VciBaseUtil.alertNotNull(oidCollections, "鏁版嵁瀵硅薄涓婚敭闆嗗悎");
 		List<CodeRule> codeRuleDOList = listCodeRuleDOByOidCollections(oidCollections);
-		return CodeRuleWrapper.build().listVO(codeRuleDOList);
+		return codeRuleDO2VOs(codeRuleDOList,true);
 	}
 
 	/**
@@ -387,8 +402,8 @@
 	@Override
 	public Collection<CodeRuleVO> listCodeRuleByIds(Collection<String> oidCollections, boolean hasSec) throws VciBaseException {
 		VciBaseUtil.alertNotNull(oidCollections, "鏁版嵁瀵硅薄涓婚敭闆嗗悎");
-		List<CodeRule> codeRuleDOList = listCodeRuleDOByOidCollections(oidCollections);
-		return codeRuleDO2VOs(codeRuleDOList, true);
+		List<CodeRule> codeRuleDOList = listCodeRuleDOByIdCollections(oidCollections);
+		return codeRuleDO2VOs(codeRuleDOList, hasSec);
 	}
 
 	/**
@@ -403,6 +418,29 @@
 			Collection<Collection<String>> oidCollectionsList = VciBaseUtil.switchCollectionForOracleIn(oidCollections);
 			for (Collection<String> oids : oidCollectionsList) {
 				List<CodeRule> tempDOList = codeRuleMapper.selectBatchIds(oids);
+				if (!CollectionUtils.isEmpty(tempDOList)) {
+					codeRuleDOList.addAll(tempDOList);
+				}
+			}
+		}
+		return codeRuleDOList;
+	}
+
+	/**
+	 * 浣跨敤瑙勫垯id闆嗗悎鏌ヨ鏁版嵁瀵硅薄
+	 *
+	 * @param idCollections id鐨勯泦鍚�
+	 * @return 鏁版嵁瀵硅薄鍒楄〃
+	 */
+	private List<CodeRule> listCodeRuleDOByIdCollections(Collection<String> idCollections) throws VciBaseException {
+		List<CodeRule> codeRuleDOList = new ArrayList<CodeRule>();
+		if (!CollectionUtils.isEmpty(idCollections)) {
+			Collection<Collection<String>> idCollectionsList = VciBaseUtil.switchCollectionForOracleIn(idCollections);
+			for (Collection<String> ids : idCollectionsList) {
+				List<CodeRule> tempDOList = codeRuleMapper.selectList(
+					Wrappers.<CodeRule>query()
+						.lambda().in(CodeRule::getId,ids)
+				);
 				if (!CollectionUtils.isEmpty(tempDOList)) {
 					codeRuleDOList.addAll(tempDOList);
 				}
@@ -480,7 +518,7 @@
 		}
 		VciBaseUtil.alertNotNull(codeRuleDTO, "闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄");
 		CodeRule codeRuleDO = new CodeRule();
-		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRuleDO,MdmBtmTypeConstant.CODE_RULE);
+		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRuleDO,MdmBtmTypeConstant.CODE_RULE,null);
 		BeanUtilForVCI.copyPropertiesIgnoreCase(codeRuleDTO, codeRuleDO);
 		boolean exFlag = codeRuleMapper.insert(codeRuleDO)>0;
 		List<CodeBasicSecDTO> secList = codeRuleDTO.getElements();
@@ -504,7 +542,7 @@
 				continue;
 			}
 			// 鏇存敼鍒涘缓鏃堕棿锛屼慨鏀规椂闂寸瓑榛樿鍊�
-			DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeBasicSecDO,MdmBtmTypeConstant.CODE_BASIC_SEC);
+			DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeBasicSecDO,MdmBtmTypeConstant.CODE_BASIC_SEC,null);
 			// 鍥哄畾鐮佹
 			if(codeBasicSecDO.getSecType().equals(CodeSecTypeEnum.CODE_FIXED_SEC.getValue())){
 				// 鍥哄畾鐮佹瀛樺偍濂給id鍜岀爜鍊肩殑鍏宠仈鍏崇郴
@@ -527,7 +565,7 @@
 			value.stream().forEach(item -> {
 				item.setOid("");
 				item.setCodeFixedSecOid(key);
-				DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item);
+				DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item,null);
 				codeFixedDOValues.add(item);
 			});
 		});

--
Gitblit v1.9.3