From d7eba1786ed1fba2b3674f9da3af4fbf1a3f8692 Mon Sep 17 00:00:00 2001 From: fujunling <2984387807@qq.com> Date: 星期四, 01 六月 2023 18:49:05 +0800 Subject: [PATCH] 解决冲突 --- Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/GroupMdmInterServiceImpl.java | 118 ++++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 84 insertions(+), 34 deletions(-) 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 90eaac9..fb328fa 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){ @@ -326,7 +327,7 @@ * @throws VciBaseException */ @Override - public R queryClassModel(String groupClassifyId) throws VciBaseException { + public R queryClassModel(String groupClassifyId) throws Throwable { log.info("鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎵ц淇濆瓨start"); String message="鎵ц鎴愬姛锛�"; try { @@ -383,6 +384,7 @@ log.info(message); throw new Throwable(message); } + DockingModelQueryVO dockingModelQueryVO = new DockingModelQueryVO(); dockingModelQueryVO.setSysName(dockingApplySysName); DockingQueryModelVO dockingQueryModelVO= mdmApplyGroupCodeProvider.queryMdmModel(dockingModelQueryVO); @@ -419,7 +421,7 @@ dockingPreClassify.setPid(pid); dockingPreClassify.setId(classNumber); dockingPreClassify.setNodeLink(nodeLink); - dockingPreClassify.setGetNodeLinkName(nodeLinkName); + dockingPreClassify.setNodeLinkName(nodeLinkName); dockingPreClassify.setClassName(className); dockingPreClassify.setVersionValue(version); dockingPreClassifyList.add(dockingPreClassify); @@ -450,6 +452,57 @@ return R.success(message); } + + + /*** + * 鏌ヨ鐢宠鍗曠姸鎬� + * @param dataOids + * @return 鎵ц缁撴灉 + */ + public R queryApplyState(String dataOids) { + + String message="鎵ц鎴愬姛锛�"; + log.info("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙tatr"); + try { + VciBaseUtil.alertNotNull(dataOids,"鎵�鏌ョ敵璇峰崟鏁版嵁涓婚敭"); + VciBaseUtil.alertNotNull(dockingApplySysName,"绯荤粺鏍囪瘑閰嶇疆锛歞ocking.apply.unitCode"); + + List<DockingPreApplyForm> dockingPreApplyFormList= this.dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().in(DockingPreApplyForm::getDataOid, VciBaseUtil.str2List(dataOids))); + dockingPreApplyFormList.stream().forEach(dockingPreApplyForm -> { + dockingPreApplyForm.getId(); + + }); + + }catch (Throwable e){ + e.printStackTrace();; + log.error("鑾峰彇鏁版嵁妯″瀷澶辫触"+e); + R.fail(message); + } + log.info("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙nd"); + return R.success(message); + } + + /*** + * 鍚屾闆嗗洟妯″瀷淇℃伅 + * @param classifyId + * @param operationType + * @return 杩斿洖鎵ц缁撴灉 + * @throws VciBaseException + */ + @Override + public R syncClassifyModel(String classifyId, String operationType) throws VciBaseException { + VciBaseUtil.alertNotNull(operationType,"闆嗘垚鎿嶄綔绫诲瀷"); + try { + if(operationType.equals("all")){ + return queryMdmModel(); + }else{ + VciBaseUtil.alertNotNull(classifyId,"闆嗗洟鍒嗙被涓婚敭"); + return queryClassModel(classifyId); + } + } catch (Throwable e) { + throw new VciBaseException(e.getMessage()); + } + } /*** * 缁勭粐 淇濆瓨鏁版嵁鏂规硶 @@ -492,7 +545,7 @@ dockingPreClassify.setPid(pid); dockingPreClassify.setId(classNumber); dockingPreClassify.setNodeLink(nodeLink); - dockingPreClassify.setGetNodeLinkName(nodeLinkName); + dockingPreClassify.setNodeLinkName(nodeLinkName); dockingPreClassify.setClassName(className); dockingPreClassifyArrayList.add(dockingPreClassify); // 鑾峰彇瀵瑰簲鐨勫垎绫昏鍥炬ā鍨� @@ -688,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(); @@ -734,7 +787,7 @@ DockingMainData mainData = new DockingMainData(); mainData.setApplyEntId(dockingApplyUnitCode);//鐢宠鍗曚綅浠g爜 mainData.setApplyId(apllyCode);//鐢宠鍗曞彿 - mainData.setClassName(dockingPreClassify.getGetNodeLinkName());//鍒嗙被鍚嶇О + mainData.setClassName(dockingPreClassify.getNodeLinkName());//鍒嗙被鍚嶇О mainData.setCreateBy(curUserName);// mainData.setSecretLevel("鍐呴儴");//瀵嗙骇锛岄粯璁や负鍐呴儴 mainData.setViewInfos(getviewInfos(optationtype,dockingPreClassify, dataBusinessObject));//鑾峰彇瑙嗗浘妯″瀷 @@ -757,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<>(); @@ -786,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