From ec9ce80c1365a07b30e9b1f000428bfbff4d47a8 Mon Sep 17 00:00:00 2001
From: yuxc <653031404@qq.com>
Date: 星期二, 05 十二月 2023 18:17:03 +0800
Subject: [PATCH] 1、修改批量更改由于key大小写转换问题导致新修改的数据被覆盖问题。

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java |   32 +++++++++++++++++++++-----------
 1 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
index e8eb9d3..baaf90a 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
@@ -252,7 +252,7 @@
 		codeBasicSecDO.setValueCutTypeText(EnumCache.getValue(EnumEnum.CODE_CUT_TYPE,codeBasicSecDTO.getValueCutType()));
 		codeBasicSecDO.setCodeGetValueTypeText(EnumCache.getValue(EnumEnum.CODE_GET_VALUE_TYPE,codeBasicSecDTO.getCodeGetValueType()));
 		//濉厖涓�浜涢粯璁ゅ��
-		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeBasicSecDO, MdmBtmTypeConstant.CODE_BASIC_SEC);
+		DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeBasicSecDO, MdmBtmTypeConstant.CODE_BASIC_SEC,null);
 		//鎺掑簭鍙凤紝榛樿绛変簬褰撳墠宸叉湁鐨勬暟閲忓姞1
 		Long total = codeBasicSecMapper.selectCount(Wrappers.<CodeBasicSec>query()
 			.lambda()
@@ -361,15 +361,15 @@
 	 */
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public boolean editSave(CodeBasicSecDTO codeBasicSecDTO) throws VciBaseException {
+	public boolean editSave(CodeBasicSecDTO codeBasicSecDTO) throws ServerException {
 		VciBaseUtil.alertNotNull(codeBasicSecDTO, "闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄");
 		KeyValue attrKv = checkAttrNullableBySecType(codeBasicSecDTO);
-		if (! "success".equals(attrKv.getKey())){
+		if (!"success".equals(attrKv.getKey())){
 			throw new VciBaseException(attrKv.getValue() + "涓嶈兘涓虹┖");
 		}
 		//灏咲TO杞崲涓篋O
 		CodeBasicSec codeBasicSecDO = selectByOid(codeBasicSecDTO.getOid());
-		DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeBasicSecDO);
+		DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeBasicSecDO,null);
 		boolean status = codeRuleService.checkEditDelStatus(codeRuleService.getObjectByOid(codeBasicSecDO.getPkCodeRule()).getLcStatus());
 		boolean resBoolean;
 		CodeReferConfigVO codeReferConfigVO = null;
@@ -400,8 +400,7 @@
 					codeReferConfigService.insert(codeReferConfigVO);
 				}
 			}
-
-//			revisionModelUtil.copyFromDTOIgnore(codeBasicSecDTO, codeBasicSecDO);//姝ゅ鐨勬嫹璐濅細鎶妑eferValueInfo鐨勫�肩粰瑕嗙洊鎺夛紝闇�瑕侀噸鏂拌祴鍊�
+			// revisionModelUtil.copyFromDTOIgnore(codeBasicSecDTO, codeBasicSecDO);//姝ゅ鐨勬嫹璐濅細鎶妑eferValueInfo鐨勫�肩粰瑕嗙洊鎺夛紝闇�瑕侀噸鏂拌祴鍊�
 			BaseModel tempModel = new BaseModel();
 			BeanUtilForVCI.copyPropertiesIgnoreCase(codeBasicSecDO, tempModel);
 			BeanUtil.copyProperties(codeBasicSecDTO, codeBasicSecDO,"referValueInfo");
@@ -411,6 +410,16 @@
 			codeBasicSecDO.setDescription(VciBaseUtil.getStringValueFromObject(VciBaseUtil.getValueFromField("description", codeBasicSecDTO)));
 
 			resBoolean = codeBasicSecMapper.updateById(codeBasicSecDO)>0;
+			// 浠庡垎绫荤爜娈垫垨鍥哄畾鐮佹鏀逛负鍏朵粬鐮佹鏃讹紝鍒ゆ柇鐢ㄦ埛鏄惁閫夋嫨浜嗘竻绌虹爜鍊�
+			if(codeBasicSecDTO.getIsClearValue()){
+				// 鍒嗙被鐮佸�兼竻绌�
+				if(codeBasicSecDTO.getSecType().equals(CodeSecTypeEnum.CODE_CLASSIFY_SEC.getValue())){
+					codeClassifyValueService.deleteClassifyValueBySecOid(codeBasicSecDTO.getOid());
+				}else {
+					//鍥哄畾鐮佸�兼竻绌�
+					fixedValueService.deleteFixedValueBySecOid(codeBasicSecDTO.getOid());
+				}
+			}
 			//SessionInfo sessionInfo = VciBaseUtil.getCurrentUserSessionInfo();
 			if(StringUtils.isNotBlank(codeBasicSecDO.getCodeFillSeparator())){
 				DictBiz dictBiz = new DictBiz();
@@ -618,7 +627,7 @@
 				continue;
 			}
 			// 鏇存敼鍒涘缓鏃堕棿锛屼慨鏀规椂闂寸瓑榛樿鍊�
-			DefaultAttrAssimtUtil.addDefaultAttrAssimt(newSecDO,MdmBtmTypeConstant.CODE_BASIC_SEC);
+			DefaultAttrAssimtUtil.addDefaultAttrAssimt(newSecDO,MdmBtmTypeConstant.CODE_BASIC_SEC,null);
 			//鍥哄畾鐮佹
 			if(newSecDO.getSecType().equals(CodeSecTypeEnum.CODE_FIXED_SEC.getValue())){
 				// 鍥哄畾鐮佹瀛樺偍濂給id鍜岀爜鍊肩殑鍏宠仈鍏崇郴
@@ -643,7 +652,7 @@
 			value.stream().forEach(item -> {
 				item.setOid("");
 				item.setCodeFixedSecOid(key);
-				DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item);
+				DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item,null);
 				codeFixedDOValues.add(item);
 			});
 		});
@@ -688,7 +697,7 @@
 			}
 			codeClassValues.forEach((key, value) -> {
 				value.stream().forEach(item -> {
-					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item);
+					DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item,null);
 					item.setCodeClassifySecOid(key);
 					codeClassifyDOValues.add(item);
 				});
@@ -1015,7 +1024,8 @@
 				wrapper = Wrappers.<CodeBasicSec>query().lambda()
 					.eq(CodeBasicSec::getPkCodeRule,codeRuleVO.getOid())
 					.eq(CodeBasicSec::getSerialDependFlag,"true")
-					.orderByAsc(CodeBasicSec::getSerialDependOrder);
+					.orderByAsc(CodeBasicSec::getOrderNum);
+					//.orderByAsc(CodeBasicSec::getSerialDependOrder);
 				List<CodeBasicSec> codeBasicSecList = this.list(wrapper);
 				if(!CollectionUtils.isEmpty(codeBasicSecList)){
 					List<CodeBasicSecVO> codeBasicSecVOS = codeBasicSecDO2VOs(codeBasicSecList);
@@ -1108,7 +1118,7 @@
 		}else{
 			//濡傛灉鏈�澶ф祦姘村彿涓嶄负绌猴紝璇存槑鏃犳渶濂芥祦姘村彿锛屾柊澧炴渶澶ф祦姘村彿
 			CodeSerialValue codeSerialValue = new CodeSerialValue();
-			DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeSerialValue, MdmBtmTypeConstant.CODE_SERIAL_VALUE);
+			DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeSerialValue, MdmBtmTypeConstant.CODE_SERIAL_VALUE,null);
 			codeSerialValue.setCodeRuleOid(codeRuleOid);
 			codeSerialValue.setSerialUnit(serialUnitString);
 			codeSerialValue.setCodeSecOid(codeBasicSec.getOid());

--
Gitblit v1.9.3