From de9b95a2f14d42bcde076aeb32f1e1c4396b67f4 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期一, 18 九月 2023 10:35:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java | 9 +++
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java | 5 +
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java | 6 +-
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 3 +
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 63 ++++++++++++++++++++
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java | 18 ++++-
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java | 20 ++++--
7 files changed, 106 insertions(+), 18 deletions(-)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java
index 529a4ef..729a3ba 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java
@@ -61,13 +61,14 @@
*/
@PostMapping(INSERT_BATCH_BY_TYPE)
R<Integer> insertBatchByType(@RequestParam("btmType")String btmType,@RequestBody List<BaseModel> baseModels);
+
/**
- * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔
+ * 鏇存柊涓氬姟鏁版嵁鍚屾椂瀵圭爜鍊艰〃鏁版嵁鎿嶄綔鎺ュ彛
*
* @param btmType 涓氬姟绫诲瀷
* @param baseModels 澶勭悊鏁版嵁
* @return 澶勭悊鐘舵��
*/
@PostMapping(UPDATE_BATCH_BY_TYPE)
- R<Integer> updateBatchByType(@RequestParam("btmType")String btmType,@RequestBody List<BaseModel> baseModels);
+ R<Integer>updateBatchBtypeDatas(String btmType, List<BaseModel> baseModels);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java
index 1f85f08..0452c25 100644
--- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java
+++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java
@@ -106,7 +106,7 @@
public R getApplyGroupCode(DockingReturnStoreVO dockingReturnStoreVO) {
log.info("鑾峰彇闆嗗洟闆嗗洟鐮侊紝璧嬪�煎埌涓绘暟鎹� start");
try {
- List<BaseModel> editObjectList = new ArrayList();
+ Map<String,List<BaseModel>> editObjectMap = new HashMap<>();
List<DockingPreApplyForm> dockingPreApplyFormList = new ArrayList();
//String classId = javaObject.getClassId();
@@ -167,18 +167,24 @@
if (res) {
//姝ゅ闇�瑕佹煡璇笟鍔℃暟鎹紝鍘绘洿鏀�
BaseModel baseModel = new BaseModel();
- baseModel.setId("10" + customCoding);
+ String classOid=baseModel.getData().getOrDefault("CODECLSFID","");
+ if(partCoe.equals(classOid)){
+ baseModel.setId(10+customCoding);
+ }
+ String btmeName=baseModel.getBtmname();
baseModel.getData().put("groupcode",customCoding);
log.info("鐢宠鍗�:"+applyId+",闆嗗洟鐮侊細"+customCoding+"缂栫爜锛�"+baseModel.getId());
- editObjectList.add(baseModel);
+ editObjectMap.getOrDefault(btmeName,new ArrayList<>()).add(baseModel);
+
}
- List<String> dataOidList=new ArrayList<>();
- dataOidList.add(jdataid);
+ }
+ if(!CollectionUtils.isEmpty(editObjectMap)) {
//璋冪敤涓绘暟鎹湇鍔℃壒閲忎繚瀛樻帴鍙�
- mdmEngineClient.updateBatchByType(jdatabtmname,editObjectList);
+ editObjectMap.forEach((btmName, modeList) -> {
+ mdmEngineClient.updateBatchBtypeDatas(btmName, modeList);
+ });
}
dockingPreApplyFormService.saveOrUpdateBatch(dockingPreApplyFormList);
-
}catch (Throwable e){
e.printStackTrace();
return R.fail("闆嗗洟鐮侀泦鎴愯祴鍊煎け璐�"+e);
diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java
index ae69cc9..b0535f1 100644
--- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java
@@ -9,6 +9,8 @@
import com.vci.ubcs.code.applyjtcodeservice.entity.*;
import com.vci.ubcs.code.applyjtcodeservice.service.IGroupMdmInterService;
import com.vci.ubcs.code.applyjtcodeservice.vo.*;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
+import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO;
import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
import com.vci.ubcs.code.applyjtcodeservice.feign.MdmApplyGroupCodeProvider;
import com.vci.ubcs.code.applyjtcodeservice.mapper.DockingPreAttrMappingMapper;
@@ -168,11 +170,14 @@
if (isEditDatas) {
if (baseModelMap.containsKey(applyId)) {
BaseModel baseModel = baseModelMap.get(applyId);
- baseModel.getData().getOrDefault("codeclassid","");
+ String classOid=baseModel.getData().getOrDefault("CODECLSFID","");
+ if(partCoe.equals(classOid)){
+ baseModel.setId(10+customCoding);
+ }
BeanUtilForVCI.copyDeclaredIgnoreCase(baseModel, baseModel);
DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
- //baseModel.setId(customCoding);
+
baseModel.getData().getOrDefault("groupCode", customCoding);
updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code
}
@@ -202,7 +207,7 @@
}
//淇濆瓨琛ㄥ崟鏁版嵁
dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings);
- mdmEngineClient.updateBatchByType(btmName, updateCbos);//淇濆瓨鏁版嵁
+ mdmEngineClient.updateBatchBtypeDatas(btmName, updateCbos);//淇濆瓨鏁版嵁
}
return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛");
} catch (VciBaseException e) {
@@ -212,7 +217,6 @@
return R.fail("鐢宠鎺ュ彛寮�鍏冲凡鍏抽棴锛屼笉鐢宠闆嗗洟鐮�");
}
}
-
/***
* 涓绘暟鎹儚闆嗗洟鏇存敼缂栫爜
* @param oids 闇�瑕佷慨鏀圭殑鏁版嵁涓婚敭鏁扮粍
@@ -292,6 +296,10 @@
if (baseModelMap.containsKey(applyId)) {
BaseModel baseModel = baseModelMap.get(applyId);
//BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
+ String classOid=baseModel.getData().getOrDefault("CODECLSFID","");
+ if(partCoe.equals(classOid)){
+ baseModel.setId(10+customCoding);
+ }
DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
// baseModel.setId(customCoding);
baseModel.getData().put("groupCode", customCoding);
@@ -323,7 +331,7 @@
}
//淇濆瓨琛ㄥ崟鏁版嵁
dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings);
- mdmEngineClient.updateBatchByType(btmName, updateCbos);//淇濆瓨鏁版嵁
+ mdmEngineClient.updateBatchBtypeDatas(btmName, updateCbos);//淇濆瓨鏁版嵁
}
return R.success("鏇存柊鎺ュ彛璋冪敤鎴愬姛");
} catch (VciBaseException e) {
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java
index 5cc9423..761211d 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java
@@ -79,7 +79,7 @@
}
}
/**
- * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔
+ * 鏇存柊涓氬姟鏁版嵁鍚屾椂瀵圭爜鍊艰〃鏁版嵁鎿嶄綔鎺ュ彛
*
* @param btmType 涓氬姟绫诲瀷
* @param baseModels 澶勭悊鏁版嵁
@@ -87,9 +87,9 @@
*/
@Override
@PostMapping(UPDATE_BATCH_BY_TYPE)
- public R<Integer> updateBatchByType(String btmType, List<BaseModel> baseModels) {
+ public R<Integer>updateBatchBtypeDatas(String btmType, List<BaseModel> baseModels){
try {
- return mdmEngineService.updateBatchByBaseModel(btmType,baseModels);
+ return mdmEngineService.updateBatchBtypeDatas(btmType,baseModels);
} catch (Exception e) {
throw new RuntimeException(e);
}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
index 3174c1e..6dd6af6 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
@@ -413,6 +413,15 @@
R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels);
/**
+ * 鏇存柊涓氬姟鏁版嵁鍚屾椂瀵圭爜鍊艰〃鏁版嵁鎿嶄綔鎺ュ彛
+ *
+ * @param btmType 涓氬姟绫诲瀷
+ * @param baseModels 澶勭悊鏁版嵁
+ * @return 澶勭悊鐘舵��
+ */
+ public R<Integer>updateBatchBtypeDatas(String btmType, List<BaseModel> baseModels);
+
+ /**
* 榛樿鍒楄〃
* @param referConfigVO
* @return
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
index 389adc9..aa73ec6 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -16,6 +16,7 @@
import com.vci.ubcs.code.enumpack.*;
import com.vci.ubcs.code.mapper.CommonsMapper;
import com.vci.ubcs.code.service.*;
+import com.vci.ubcs.code.util.ClientBusinessObject;
import com.vci.ubcs.code.vo.CodeKeyAttrRepeatVO;
import com.vci.ubcs.code.vo.CodeReferConfigVO;
import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
@@ -56,6 +57,7 @@
import com.vci.ubcs.system.user.feign.IUserClient;
import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils;
import oracle.sql.TIMESTAMP;
+import org.aspectj.apache.bcel.classfile.Code;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.core.cache.utils.CacheUtil;
@@ -3684,8 +3686,67 @@
return R.success("鏇存柊鎴愬姛锛�");
}
+ /**
+ * 鏇存柊涓氬姟鏁版嵁鍚屾椂瀵圭爜鍊艰〃鏁版嵁鎿嶄綔鎺ュ彛
+ *
+ * @param btmType 涓氬姟绫诲瀷
+ * @param baseModels 澶勭悊鏁版嵁
+ * @return 澶勭悊鐘舵��
+ */
+ @Transactional(rollbackFor = VciBaseException.class)
+ @Override
+ public R<Integer> updateBatchBtypeDatas(String btmType, List<BaseModel> baseModels) {
- /**
+ //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃
+ R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType));
+ if (!listR.isSuccess() || listR.getData().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒");
+ }
+ //鑾峰彇褰撳墠涓氬姟绫诲瀷鎵�鏈夊瓧娈电敤鏉ュ仛瀵规瘮
+ R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getAllAttributeByBtmId(btmType);
+ if (!allAttributeByBtmId.isSuccess() || allAttributeByBtmId.getData().getAttributes().size() == 0) {
+ throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲瀛楁淇℃伅锛岃妫�鏌ワ紒");
+ }
+ Set<String> existFild = allAttributeByBtmId.getData().getAttributes().stream().map(btmTypeAttributeVO -> {
+ return btmTypeAttributeVO.getId();
+ }).collect(Collectors.toSet());
+ if(!CollectionUtils.isEmpty(baseModels)){
+ List<String> oidList=baseModels.stream().filter(data-> com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotBlank(data.getOid())).map(BaseModel::getOid).distinct().collect(Collectors.toList());
+ LambdaQueryWrapper<CodeAllCode> lqw = new LambdaQueryWrapper<>();
+ lqw.in(CodeAllCode::getCreateCodeOid,oidList);
+ List<CodeAllCode> codeAllCodeList= codeAllCodeService.selectByWrapper(lqw);
+ Map<String, CodeAllCode> cboMap = codeAllCodeList.stream().filter(cbo -> cbo != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getCreateCodeOid(), t -> t));
+ List<CodeAllCode> newCodeAllCodeList=new ArrayList<>();
+ //灏哹ean杞负map,mybatis缁熶竴澶勭悊
+ List<Map<String, String>> maps = new ArrayList<>();
+ try {
+ baseModels.stream().forEach(baseModel->{
+ String oid=baseModel.getOid();
+ try {
+ maps.add(VciBaseUtil.convertBean2Map(baseModel,existFild));
+ } catch (Exception e) {
+ throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.getMessage());
+ }
+ if(cboMap.containsKey(oid)){
+ CodeAllCode codeAllCode= cboMap.get(oid);
+ codeAllCode.setId(baseModel.getId());
+ codeAllCode.setLastModifier(AuthUtil.getUser().getUserName());
+ codeAllCode.setLastModifyTime(new Date());
+ codeAllCode.setLcStatus(baseModel.getLcStatus());
+ newCodeAllCodeList.add(codeAllCode);
+ }
+ });
+ commonsMapper.updateBatchByBaseModel(listR.getData().get(0).getTableName(), maps);
+ codeAllCodeService.saveOrUpdateBatch(newCodeAllCodeList);
+ } catch (Exception e) {
+ throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.getMessage());
+ }
+
+ }
+ return R.success("鏇存柊鎴愬姛锛�");
+ }
+
+ /**
* 鑾峰彇鍙傜収鐨勪俊鎭�
*
* @param referConfigVO 鍙傜収鐨勯厤缃�
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 16ee22f..25953b9 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
@@ -2494,6 +2494,9 @@
//鏄惁璋冪敤闆嗗洟鎺ュ彛鐢宠鎺ュ彛
if(isCodeOrGroupCode){
List<String> IdList=resultDataObjectDetailDOs.stream().filter(xMLResultDataObjectDetailDO-> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(xMLResultDataObjectDetailDO.getId())).map(XMLResultDataObjectDetailDO::getId).distinct().collect(Collectors.toList());
+
+
+
if(!CollectionUtils.isEmpty(IdList)) {
this.sendApplyGroupcode(IdList, classifyFullInfo.getTopClassifyVO().getBtmTypeId(),sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getValue());
}
--
Gitblit v1.9.3