From 529738fcb3e08b40e6065dd8f2eb679d08e402a3 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 19 十二月 2023 12:14:06 +0800
Subject: [PATCH] 254,完善,编码回收记录业务数据到codeallcode表总

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java |   47 +++++++++++++++++++++++++++++------------------
 1 files changed, 29 insertions(+), 18 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
index a5fa9f8..e021231 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -216,12 +217,16 @@
 		// 涓嶄负绌哄氨闇�瑕佽褰撳墠鍒嗙被涓嬫墍鏈夊瓙鍒嗙被鐨刬sParticipateCheck
 		if(!codeClassifies.isEmpty()){
 			List<String> oids = codeClassifies.stream().map(CodeClassify::getOid).collect(Collectors.toList());
-			updateAttr = codeClassifyMapper.update(
-				null,
-				Wrappers.<CodeClassify>update()
-					.lambda().in(CodeClassify::getOid, oids)
-					.set(CodeClassify::getIsParticipateCheck, codeClassifyEntity.getIsParticipateCheck())
-			);
+			LambdaUpdateWrapper<CodeClassify> updateWrapper = Wrappers.<CodeClassify>update()
+				.lambda().in(CodeClassify::getOid, oids)
+				.set(CodeClassify::getIsParticipateCheck, codeClassifyEntity.getIsParticipateCheck());
+			// 鐖跺垎绫荤殑涓氬姟绫诲瀷鍋氫簡鏇存敼锛屾墍鏈夊瓙鍒嗙被鐨勯兘寰楄繘琛屾洿鏀�
+			if(!codeClassifyEntity.getBtmTypeId().equals(detail.getBtmTypeId())){
+				updateWrapper.set(CodeClassify::getBtmTypeId,codeClassifyEntity.getBtmTypeId())
+					.set(CodeClassify::getBtmTypeName,codeClassifyEntity.getBtmTypeName());
+			}
+			updateAttr = codeClassifyMapper.update(null,updateWrapper);
+
 		}
 
 //         //澶勭悊鏁版嵁闆嗘垚閫昏緫,鎴愬姛鍚庢墽琛岄泦鎴愮涓�姝�,鍒嗙被鏁版嵁鐗规畩澶勭悊銆傚彧鏈夊惎鐢ㄧ姸鎬佺殑鍒嗙被鎵嶆帹閫�
@@ -665,7 +670,7 @@
 	 * @return
 	 */
 	public List<CodeClassifyVO> selectAllClassifyByOid(String oid, String fieldInPath){
-		List<CodeClassify>  codeClassifyList=codeClassifyMapper.selectAllClassifyByOid(oid,AuthUtil.getTenantId(),fieldInPath);
+		List<CodeClassify>  codeClassifyList=codeClassifyMapper.selectAllClassifyByOid(oid,fieldInPath,AuthUtil.getTenantId());
 		List<CodeClassifyVO> voList = codeClassifyDO2VOs(codeClassifyList);
 		return voList;
 
@@ -683,7 +688,10 @@
 		if(codeClassifies.isEmpty()){
 			return "";
 		}
-		String oids = codeClassifies.stream().map(CodeClassify::getOid).collect(Collectors.joining(","));
+		String oids = codeClassifies.stream()
+			.map(CodeClassify::getOid)
+			.map(s -> "'" + s + "'")
+			.collect(Collectors.joining(","));;
 		return oids;
 	}
 
@@ -703,28 +711,31 @@
 			QueryWrapper<CodeBasicSec> secWrapper = new QueryWrapper<>();
 			secWrapper.eq("PKCODERULE",codeAllCodeVO.getCodeRuleOid());
 			secWrapper.eq("SECTYPE","codeserialsec");
-			CodeBasicSec codeBasicSec = codeBasicSecMapper.selectOne(secWrapper);
+			List<CodeBasicSec> codeBasicSecs = codeBasicSecMapper.selectList(secWrapper);
+			if(codeBasicSecs.size() == 0 ){
+				throw new ServiceException("鏍规嵁鐮佸�糏D锛�" + codeAllCodeVO.getCodeRuleOid() + ",鐮佹绫诲瀷涓烘祦姘寸爜娈�(codeserialsec),鍦ㄥ熀纭�鐮佹涓湭鎵惧埌鐩稿叧鏁版嵁锛�");
+			}
 			QueryWrapper<CodeSerialValue> wrapper = new QueryWrapper<>();
 			wrapper.eq("codeRuleOid",codeAllCodeVO.getCodeRuleOid());
 			wrapper.eq("serialUnit",codeAllCodeVO.getSerialUnit());
-			wrapper.eq("codeSecOid",codeBasicSec.getOid());
-			CodeSerialValue codeSerialValue = codeSerialValueMapper.selectOne(wrapper);
-			if(codeSerialValue == null){
+			wrapper.eq("codeSecOid",codeBasicSecs.get(0).getOid());
+			List<CodeSerialValue> codeSerialValues = codeSerialValueMapper.selectList(wrapper);
+			if(codeSerialValues.size() == 0){
 				CodeSerialValue newSerialValue = new CodeSerialValue();
 				DefaultAttrAssimtUtil.addDefaultAttrAssimt(newSerialValue,"codeserialvalue");
 				newSerialValue.setCodeRuleOid(codeAllCodeVO.getCodeRuleOid());
-				newSerialValue.setCodeSecOid(codeBasicSec.getOid());
+				newSerialValue.setCodeSecOid(codeBasicSecs.get(0).getOid());
 				newSerialValue.setSerialUnit(codeAllCodeVO.getSerialUnit());
 				newSerialValue.setMaxSerial(codeAllCodeVO.getUnFillSerial());
 				newSerialValue.setLctid("defaultLC");
 				newSerialValue.setLcStatus("Exist");
 				codeSerialValueMapper.insert(newSerialValue);
 			}else{
-				codeSerialValue.setMaxSerial(codeAllCodeVO.getUnFillSerial());
-				codeSerialValue.setLastModifyTime(new Date());
-				codeSerialValue.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
-				codeSerialValue.setTs(new Date());
-				codeSerialValueMapper.updateById(codeSerialValue);
+				codeSerialValues.get(0).setMaxSerial(codeAllCodeVO.getUnFillSerial());
+				codeSerialValues.get(0).setLastModifyTime(new Date());
+				codeSerialValues.get(0).setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
+				codeSerialValues.get(0).setTs(new Date());
+				codeSerialValueMapper.updateById(codeSerialValues.get(0));
 			}
 		}
 		return R.success("鎿嶄綔鎴愬姛锛�");

--
Gitblit v1.9.3