From 92100cabaa858f49064ac166a2098342d718191f Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期二, 17 十月 2023 13:59:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java | 44 ++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 42 insertions(+), 2 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
index 3f5e3d1..f4dbaa3 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -31,6 +31,7 @@
import com.vci.ubcs.starter.web.util.VciDateUtil;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.secure.utils.AuthUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@@ -278,8 +279,27 @@
QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>();
wrapper.eq("CREATECODEBTM",addCodeDOs.get(0).getCreateCodeBtm());
wrapper.in("ID",addCodeDOs.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
- if(codeAllCodeService.count(wrapper)>0){
+ List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper);
+ List<CodeAllCode> takeBack = codeAllCodes.stream().filter(e -> e.getLcStatus().equals("TakeBack")).collect(Collectors.toList());
+ if(codeAllCodes.size()>takeBack.size()){
throw new ServiceException("鐢熸垚缂栫爜鏁版嵁ID宸叉湁鍘嗗彶璁板綍,璇风‘璁ゅ涓嬬敓鎴愮殑ID鏁版嵁锛�"+ addCodeDOs.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
+ }
+ for (CodeAllCode codeAllCode : takeBack) {
+ codeAllCode.setLcStatus("Released");
+ codeAllCode.setTs(new Date());
+ codeAllCode.setLastModifyTime(new Date());
+ codeAllCode.setLastModifier(AuthUtil.getUserId().toString());
+ Iterator<CodeAllCode> iterator = addCodeDOs.iterator();
+ while (iterator.hasNext()){
+ CodeAllCode next = iterator.next();
+ if(codeAllCode.getId().equals(next.getId())){
+ codeAllCode.setCreateCodeOid(next.getCreateCodeOid());
+ iterator.remove();
+ }
+ }
+ }
+ if(takeBack.size()>0){
+ codeAllCodeService.updateBatchById(takeBack);
}
codeAllCodeService.saveBatch(addCodeDOs);
}
@@ -365,9 +385,29 @@
QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>();
wrapper.eq("CREATECODEBTM",allCodeDOList.get(0).getCreateCodeBtm());
wrapper.in("ID",allCodeDOList.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
- if(codeAllCodeService.count(wrapper)>0){
+ List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper);
+ List<CodeAllCode> takeBack = codeAllCodes.stream().filter(e -> e.getLcStatus().equals("TakeBack")).collect(Collectors.toList());
+ if(codeAllCodes.size()>takeBack.size()){
throw new ServiceException("鐢熸垚缂栫爜鏁版嵁ID宸叉湁鍘嗗彶璁板綍,璇风‘璁ゅ涓嬬敓鎴愮殑ID鏁版嵁锛�"+ allCodeDOList.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
}
+
+ for (CodeAllCode codeAllCode : takeBack) {
+ codeAllCode.setLcStatus("Released");
+ codeAllCode.setTs(new Date());
+ codeAllCode.setLastModifyTime(new Date());
+ codeAllCode.setLastModifier(AuthUtil.getUserId().toString());
+ Iterator<CodeAllCode> iterator = allCodeDOList.iterator();
+ while (iterator.hasNext()){
+ CodeAllCode next = iterator.next();
+ if(codeAllCode.getId().equals(next.getId())){
+ codeAllCode.setCreateCodeOid(next.getCreateCodeOid());
+ iterator.remove();
+ }
+ }
+ }
+ if(takeBack.size()>0){
+ codeAllCodeService.updateBatchById(takeBack);
+ }
codeAllCodeService.saveBatch(allCodeDOList);
// iCodeWupinService.saveBatch(dataCBOList);
mdmEngineService.insertBatchByType(dataCBOList.get(0).getBtmname(),dataCBOList);
--
Gitblit v1.9.3