From b874509c73cbdea8eab37bb232ed3fd515b9a1a2 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期一, 27 十一月 2023 09:54:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

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

diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
index c168c16..87cfaee 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -2102,50 +2102,54 @@
 				Map<String, List<BaseModel>> indexTodataMap = keyResultVO.getIndexTODataMap();
 				cboList.stream().forEach(cbo -> {
 					String rowIndex = cbo.getAttributeValue(IMPORT_ROW_INDEX);
+					String msg = errorKeyMap.get(rowIndex);
 					if (indexTodataMap.containsKey(rowIndex)) {
 						String oid = cbo.getOid();
 						String sourceOid = oid;
 						String code = "";
-						String groupCode="";
 						String errorid = "201";
 						if(codeOidToSystemOidMap.containsKey(oid)){
 							sourceOid=codeOidToSystemOidMap.get(oid);
 						}
 						List<BaseModel> newCboList = indexTodataMap.get(rowIndex);
 						if (!CollectionUtils.isEmpty(newCboList)) {
-							BaseModel newCbo= newCboList.get(0);
-							String lcstatus =newCbo.getLcStatus();
-							String newOid =newCbo.getOid();
-							Date ts =newCbo.getTs();
-							code = StringUtils.isBlank(newCbo.getId())?"":newCbo.getId();
-							groupCode=newCbo.getData().getOrDefault("GROUPCODE","");
-							String lastmodifier=newCbo.getLastModifier();
-							if (lcstatus!=null&&!lcstatus.equals(CodeDefaultLC.RELEASED.getValue())) {
-								newCbo.setOid(newOid);
-								newCbo.setLastModifier(lastmodifier);
-								/*if(isCodeOrGroupCode) {
-									newCbo.setId(code);
-								}else{
-									newCbo.getData().put("groupcode",groupCode);
-								}*/
-								newCbo.setTs(ts);
-								cbo.setLastModifier(cbo.getLastModifier());
-								editBoList.add(newCbo);
-							}
-							String mes = errorKeyMap.get(rowIndex);
-							XMLResultDataObjectDetailDO resultDataObjectDetailDO = new XMLResultDataObjectDetailDO();
-							if(isCodeOrGroupCode) {
-								if(StringUtils.isBlank(groupCode)){
-									errorid="1";
-									mes+="锛涚敵璇风殑缂栫爜绫诲瀷涓洪泦鍥㈢爜锛岀瓑寰呴泦鍥㈢紪鐮佽祴鍊�";
+							//澶勭悊鍏抽敭灞炴�ф煡鍑哄鏉$殑璇濓紝鏍规嵁闆嗘垚璋冪敤鐨勫綋鍓嶅垎绫讳唬鍙峰彇褰撳墠鍒嗙被鐨勭爜鍊笺��
+							Map<String/**缂栫爜**/, BaseModel/**閲嶅缂栫爜鏁版嵁**/> classOidTOBaseModelMap = new HashMap<>();
+								newCboList.stream().forEach(baseModel->{
+									String codeclsfid=baseModel.getData().get(CODE_CLASSIFY_OID_FIELD.toUpperCase(Locale.ROOT));
+									classOidTOBaseModelMap.put(codeclsfid,baseModel);
+								});
+							String codeclsfid= classifyFullInfo.getCurrentClassifyVO().getOid();
+							if(classOidTOBaseModelMap.containsKey(codeclsfid)){
+								BaseModel newCbo= classOidTOBaseModelMap.get(codeclsfid);
+								String lcstatus =newCbo.getLcStatus();
+								String newOid =newCbo.getOid();
+								Date ts =newCbo.getTs();
+								code = StringUtils.isBlank(newCbo.getId())?"":newCbo.getId();
+								if(isCodeOrGroupCode) {
+									code=newCbo.getData().getOrDefault("GROUPCODE","");
+									if(StringUtils.isBlank(code)){
+										errorid="1";
+										msg="锛涚敵璇风殑缂栫爜绫诲瀷涓洪泦鍥㈢爜锛岀瓑寰呴泦鍥㈢紪鐮佽祴鍊�";
+									}
 								}
-								resultDataObjectDetailDO.setCode(groupCode);
+								String lastmodifier=newCbo.getLastModifier();
+								if (lcstatus!=null&&!lcstatus.equals(CodeDefaultLC.RELEASED.getValue())) {
+									newCbo.setOid(newOid);
+									newCbo.setLastModifier(lastmodifier);
+									newCbo.setTs(ts);
+									cbo.setLastModifier(cbo.getLastModifier());
+									editBoList.add(newCbo);
+								}
 							}else{
-								resultDataObjectDetailDO.setCode(code);
+								errorid="205";
+								msg+="锛涚紪鐮佸垯灞炰簬鍏朵粬鍒嗙被銆�";
 							}
+							XMLResultDataObjectDetailDO resultDataObjectDetailDO = new XMLResultDataObjectDetailDO();
+							resultDataObjectDetailDO.setCode(code);
 							resultDataObjectDetailDO.setId(sourceOid);
 							resultDataObjectDetailDO.setErrorid(errorid);
-							resultDataObjectDetailDO.setMsg(mes);
+							resultDataObjectDetailDO.setMsg(msg);
 
 							resultDataObjectDetailDOs.add(resultDataObjectDetailDO);
 						}
@@ -3904,6 +3908,7 @@
 					newDataList.stream().forEach(stringStringMap -> {
 						BaseModel baseModel=new BaseModel();
 						DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(stringStringMap,baseModel);
+						baseModel.setData(stringStringMap);
 						newCboList.add(baseModel);
 					});
 					// 娣诲姞閿欒鍊�

--
Gitblit v1.9.3