From 13716d87a6579ea8be6d76beb89f873d51d35a89 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期三, 31 五月 2023 17:19:20 +0800
Subject: [PATCH] 将集团分类树查询待属性集合分开分别查询集团分类树,模型属性
---
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java | 96 ++++++++++++++----------------------------------
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java | 18 +++++++++
Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java | 2
3 files changed, 47 insertions(+), 69 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java
index b801e0f..08eebfe 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java
@@ -62,6 +62,12 @@
private final IDockingPreApplyFormService dockingPreApplyFormService;
+ /***
+ * 灞炴�ф灇涓捐寖鍥存湇鍔�
+ */
+
+ private final IDockingPreViewModelService dockingPreViewModelService;
+
/***
* 灞炴�ф灇涓捐寖鍥存湇鍔�
@@ -134,6 +140,17 @@
return dockingPreClassifyService.treeCompanyGroupClassify(treeQueryObject);
}
+
+ /**
+ * 鍙傜収鏍� 涓绘暟鎹ā鏉垮睘鎬т俊鎭�
+ * @param classifyId 涓绘暟鎹垎绫讳富閿�
+ * @return 涓婚搴撳垎绫绘ā鏉垮睘鎬�
+ */
+ @GetMapping("/listViewModelAttributeByClassId")
+ public R listViewModelAttributeByClassId(String classifyId) {
+ return R.data(dockingPreViewModelService.selectDockingPreViewModelByClassId(classifyId,true));
+ }
+
/**
* 鍙傜収鏍� 涓绘暟鎹垎绫�
* @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 conditionMap 瀛樹笂 codeclsfid=涓绘暟鎹殑鍒嗙被oid
@@ -171,6 +188,7 @@
}
}
+
/***
* 鍚屾闆嗗洟妯″瀷瑙嗗浘
* @return 杩斿洖鎵ц缁撴灉淇℃伅
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java
index 3ff08a5..b325153 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java
@@ -74,7 +74,7 @@
}
TreeWrapperOptions treeWrapperOptions = new TreeWrapperOptions(PARENT_FIELD_NAME.toLowerCase(Locale.ROOT));
treeWrapperOptions.copyFromTreeQuery(treeQueryObject);
- List<DockingPreClassifyVO> dockingPreClassifyVOS= getCompanyGourpClassByParentId(treeQueryObject.getParentOid(),true);
+ List<DockingPreClassifyVO> dockingPreClassifyVOS= getCompanyGourpClassByParentId(treeQueryObject.getParentOid(),false);
List<Tree> tree= revisionModelUtil.doList2Trees(dockingPreClassifyVOS,treeWrapperOptions,(DockingPreClassifyVO s) ->{
//鍙互鍦ㄨ繖閲屽鐞嗘爲鑺傜偣鐨勬樉绀�
return s.getId() + " " + s.getName();//(FrameworkDataLCStatus.DISABLED.getValue().equalsIgnoreCase(s.getLcStatus()) ? (" 銆愬仠鐢ㄣ�� ") : "");
diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java
index b0b17d6..b2ff550 100644
--- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.vci.ubcs.code.feign.IMdmEngineClient;
import com.vci.ubcs.code.webservice.entity.*;
import com.vci.ubcs.code.webservice.vo.*;
import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
@@ -12,7 +13,6 @@
import com.vci.ubcs.code.webservice.mapper.DockingPreAttrMappingMapper;
import com.vci.ubcs.code.webservice.service.*;
import com.vci.ubcs.starter.exception.VciBaseException;
-import com.vci.ubcs.starter.revision.model.BaseModel;
import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
@@ -23,7 +23,7 @@
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-
+import com.vci.ubcs.starter.revision.model.BaseModel;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -88,6 +88,9 @@
*/
@Autowired(required = false)
private IDockingPreMetaAttrService dockingPreMetaAttrService;
+
+ @Autowired(required = false)
+ private IMdmEngineClient mdmEngineClient;
/***
* 涓绘暟鎹儚闆嗗洟鐢宠缂栫爜
* @param oids 闇�瑕佺敵璇风殑鏁版嵁涓婚敭鏁扮粍
@@ -100,20 +103,19 @@
public R applyGroupCode(String oids, String btmName) throws VciBaseException {
try {
List<BaseModel> updateCbos = new ArrayList<BaseModel>();
-
List<DockingPreApplyForm> dockingPreAttrMappings = new ArrayList<>();
VciBaseUtil.alertNotNull(oids, "閫夋嫨鐨勬暟鎹�");
VciBaseUtil.alertNotNull(btmName, "涓氬姟绫诲瀷");
- //List<BaseModelVO> codeWupins=mdmEngineService.listByIds(VciBaseUtil.str2List(oids));
- List<BaseModelVO> dataModelList = new ArrayList<>();
+ R<List<BaseModel>> baseModelR =mdmEngineClient.selectByTypeAndOid(btmName,oids);
+ List<BaseModel> dataModelList= baseModelR.getData();
if (!CollectionUtils.isEmpty(dataModelList)) {
DockingGroupDataVO dockingGroupDataVO = new DockingGroupDataVO();
//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯�
Map<String, DockingPreApplyForm> addDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
Map<String, DockingPreApplyForm> editDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
- Map<String, BaseModelVO> baseModelVOMap = new HashMap<String, BaseModelVO>();
+ Map<String, BaseModel> baseModelMap = new HashMap<String, BaseModel>();
//缁勭粐鏁版嵁
- dockingGroupDataVO = queryApplycodeDataObjects(1, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelVOMap);
+ dockingGroupDataVO = queryApplycodeDataObjects(1, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelMap);
DockingResultVO resultDataObject = mdmApplyGroupCodeProvider.receiveAddApply(dockingGroupDataVO);
code = resultDataObject.getCode();
msg = resultDataObject.getMsg();
@@ -161,13 +163,13 @@
}
//濡傛灉鏈夐泦鍥㈢爜鍒欐洿鏂版暟鎹�
if (isEditDatas) {
- if (baseModelVOMap.containsKey(applyId)) {
- BaseModelVO baseModelVO = baseModelVOMap.get(applyId);
- BaseModel baseModel = new BaseModel();
- BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
+ if (baseModelMap.containsKey(applyId)) {
+ BaseModel baseModel = baseModelMap.get(applyId);
+ BeanUtilForVCI.copyDeclaredIgnoreCase(baseModel, baseModel);
DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
- baseModelVO.setId(customCoding);
+ //baseModel.setId(customCoding);
+ baseModel.getData().getOrDefault("groupCode",customCoding);
updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code
}
}
@@ -196,7 +198,7 @@
}
//淇濆瓨琛ㄥ崟鏁版嵁
dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings);
- //mdmEngineService.saveBatch(updateCbos);//淇濆瓨鏁版嵁
+ mdmEngineClient.insertBatchByType(btmName,updateCbos);//淇濆瓨鏁版嵁
}
return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛");
}catch (VciBaseException e){
@@ -219,16 +221,16 @@
VciBaseUtil.alertNotNull(oids,"閫夋嫨鐨勬暟鎹�");
VciBaseUtil.alertNotNull(btmName,"涓氬姟绫诲瀷");
//List<BaseModelVO> codeWupins=mdmEngineService.listByIds(VciBaseUtil.str2List(oids));
- List<BaseModelVO> dataModelList = new ArrayList<>();
+ List<BaseModel> dataModelList = new ArrayList<>();
try {
if (!CollectionUtils.isEmpty(dataModelList)) {
DockingGroupDataVO dockingGroupDataVO = new DockingGroupDataVO();
//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯�
Map<String, DockingPreApplyForm> addDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
Map<String, DockingPreApplyForm> editDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>();
- Map<String, BaseModelVO> baseModelVOMap = new HashMap<String, BaseModelVO>();
+ Map<String, BaseModel> baseModelMap = new HashMap<String, BaseModel>();
//缁勭粐鏁版嵁
- dockingGroupDataVO = queryApplycodeDataObjects(2, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelVOMap);
+ dockingGroupDataVO = queryApplycodeDataObjects(2, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelMap);
DockingResultVO resultDataObject = mdmApplyGroupCodeProvider.receiveEditApply(dockingGroupDataVO);
code = resultDataObject.getCode();
msg = resultDataObject.getMsg();
@@ -276,13 +278,12 @@
}
//濡傛灉鏈夐泦鍥㈢爜鍒欐洿鏂版暟鎹�
if (isEditDatas) {
- if (baseModelVOMap.containsKey(applyId)) {
- BaseModelVO baseModelVO = baseModelVOMap.get(applyId);
- BaseModel baseModel = new BaseModel();
- BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
+ if (baseModelMap.containsKey(applyId)) {
+ BaseModel baseModel = baseModelMap.get(applyId);
+ //BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
- DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
- baseModelVO.setId(customCoding);
+ // baseModel.setId(customCoding);
+ baseModel.getData().getOrDefault("groupCode",customCoding);
updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code
}
}
@@ -311,7 +312,7 @@
}
//淇濆瓨琛ㄥ崟鏁版嵁
dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings);
- //mdmEngineService.saveBatch(updateCbos);//淇濆瓨鏁版嵁
+ mdmEngineClient.insertBatchByType(btmName,updateCbos);//淇濆瓨鏁版嵁
}
return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛");
}catch (VciBaseException e){
@@ -502,44 +503,6 @@
throw new VciBaseException(e.getMessage());
}
}
-
-// /**
-// * 鍚屾涓绘ā鍨�
-// * @return
-// */
-// private String queryMdmModel() throws VciBaseException {
-// String message="鎵ц鎴愬姛锛�";
-// try {
-//
-//
-// }catch (VciBaseException e){
-// message=e.getMessage();
-// throw new VciBaseException(message);
-// }finally {
-// return message;
-// }
-//
-//
-// }
-//
-// /***
-// * 鍚屾妯″瀷璇︾粏淇℃伅
-// * @param classifyId
-// * @return
-// */
-// private String queryClassModel(String classifyId)throws VciBaseException{
-// String message="鎵ц鎴愬姛锛�";
-// try {
-//
-// }catch (VciBaseException e){
-// message=e.getMessage();
-// throw new VciBaseException(message);
-// }finally {
-// return message;
-// }
-//
-// }
-
/***
* 缁勭粐 淇濆瓨鏁版嵁鏂规硶
@@ -778,12 +741,12 @@
/**
* 缁勭粐鏁版嵁
* */
- private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModelVO> codeWupins,Map<String,DockingPreApplyForm> addDockingPreApplyFormMap,Map<String,DockingPreApplyForm> editDockingPreApplyFormMap,Map<String,BaseModelVO> codeWupinMap) throws VciBaseException{
+ private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModel> codeWupins,Map<String,DockingPreApplyForm> addDockingPreApplyFormMap,Map<String,DockingPreApplyForm> editDockingPreApplyFormMap,Map<String,BaseModel> codeWupinMap) throws VciBaseException{
try {
String curUserName = AuthUtil.getUser().getUserName();
//鐢宠鐨勬暟鎹�
List<DockingMainData> mainDataList=new ArrayList<DockingMainData>();
- for (BaseModelVO dataBusinessObject : codeWupins) {
+ for (BaseModel dataBusinessObject : codeWupins) {
String format = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());
String codeclsfid = dataBusinessObject.getData().getOrDefault("codeclsfid","");
String btmName = dataBusinessObject.getBtmname();
@@ -847,7 +810,7 @@
* @param dataBusinessObject
* @throws VciBaseException
*/
- private List<DockingViewVO>getviewInfos(int type, DockingPreClassify dockingPreClassify, BaseModelVO dataBusinessObject) throws Throwable{
+ private List<DockingViewVO>getviewInfos(int type, DockingPreClassify dockingPreClassify, BaseModel dataBusinessObject) throws Throwable{
List<DockingViewVO> viewInfoList=new ArrayList<>();
String jclassOid= dockingPreClassify.getOid();
List<DockingPreViewModel> dockingPreViewModels=new ArrayList<>();
@@ -876,16 +839,13 @@
* @return
* @throws VciBaseException
*/
- private List<Map<String, Object>> getViewValueList(DockingPreViewModel dockingPreViewModel,String jclassOid,BaseModelVO dataBusinessObject) throws Throwable{
+ private List<Map<String, Object>> getViewValueList(DockingPreViewModel dockingPreViewModel,String jclassOid,BaseModel dataBusinessObject) throws Throwable{
//鏋勯�犳ā鍨嬭鍥炬暟鎹�
List<Map<String, Object>> viewValueList=new ArrayList<Map<String,Object>>();
String oid = dockingPreViewModel.getOid();
Map<String,String> dataValueMap=dataBusinessObject.getData();
String codeClassifyId=dataValueMap.get("codeclsfid");
Map<String,String>conditionsMap=new HashMap<String, String>();
-
-
-
List<DockingPreAttrMapping> dockingPreAttrMappingList = dockingPreAttrMappingMapper.selectList(Wrappers.<DockingPreAttrMapping>query().lambda()
.eq(DockingPreAttrMapping::getSourceClassifyId, jclassOid).eq(DockingPreAttrMapping::getTargetClassifyId, codeClassifyId));
if(CollectionUtils.isEmpty(dockingPreAttrMappingList)) {
--
Gitblit v1.9.3