From a472fa1f44b9976ce7e2b502814b130ec72e0f29 Mon Sep 17 00:00:00 2001
From: yuxc <653031404@qq.com>
Date: 星期三, 19 七月 2023 11:31:11 +0800
Subject: [PATCH] 1、主要解决在批量插入的时候通过业务类型去获取字段信息,对比字段没有的则不进行插入。

---
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 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 95e3f5a..58a305b 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
@@ -104,6 +104,7 @@
 				String[] secLengths = cbo.getData().get(CODE_SEC_LENGTH_FIELD).split("#");
 				cbo.getData().remove(CODE_SEC_LENGTH_FIELD);//灏嗘key闄ゅ幓
 				cbo.getData().remove(IMPORT_ROW_INDEX);//灏嗘key闄ゅ幓
+				cbo.getData().remove("codeclassifyid");//灏嗘key闄ゅ幓
 				List<CodeBasicSecVO> secVOList = ruleVO.getSecVOList().stream().sorted(((o1, o2) -> o1.getOrderNum().compareTo(o2.getOrderNum()))).collect(Collectors.toList());
 				Map<String/**鐮佹鐨勪富閿�**/,String/**鐮佹鐨勫��**/> serialValueMap = new HashMap<>();
 				Map<String, CodeBasicSecVO> secVOMap = secVOList.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t));
@@ -290,6 +291,9 @@
 
 			for (int i = 0; i < dataCBOList.size(); i++) {
 				BaseModel cbo = dataCBOList.get(i);
+				cbo.getData().remove(CODE_SEC_LENGTH_FIELD);//灏嗘key闄ゅ幓
+				cbo.getData().remove(IMPORT_ROW_INDEX);//灏嗘key闄ゅ幓
+				cbo.getData().remove("codeclassifyid");//灏嗘key闄ゅ幓
 				List<String> thisSecValueList = new LinkedList<>();
 				for (int j = 0; j < secValueList.size(); j++) {
 					thisSecValueList.add(secValueList.get(j));
@@ -323,15 +327,17 @@
 			}
 			saveSerialValue( ruleVO, lastMaxSerialValueMap, maxSerialValueMap);
 
+			allCodeDOList.stream().forEach(
+				allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");}
+			);
+
+
 			Map<String, String> statusMap = allCodeDOList.stream().collect(Collectors.toMap(s -> s.getOid(), s -> s.getLcStatus()));
 			allCodeDOList.stream().filter(s -> StringUtils.equalsIgnoreCase("codeallcode",s.getBtmname())).forEach(s -> {
 				s.setLcStatus(statusMap.get(s.getOid()));
 			});
 
 
-			allCodeDOList.stream().forEach(
-				allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");}
-			);
 
 			codeAllCodeService.saveBatch(allCodeDOList);
 //			iCodeWupinService.saveBatch(dataCBOList);
@@ -783,7 +789,7 @@
 	private String getValueByFormulaForCBO(BaseModel cbo,String rule)  {
 		Map<String, Object> dataMap = null;
 		try{
-			dataMap = VciBaseUtil.convertBean2Map(cbo);
+			dataMap = VciBaseUtil.convertBean2Map(cbo,null);
 		}catch(Exception e){
 			throw new VciBaseException("mapToBeanError:"+e);
 		}

--
Gitblit v1.9.3