From 3714d4df9a79814b4f9504173b3984617f3f2815 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期三, 02 八月 2023 17:20:39 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClient.java | 24 ++++++++++++ Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java | 2 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 7 --- Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClientFallback.java | 13 ++++++ Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/FlowClient.java | 34 +++++++++++++++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java | 39 +++++++++---------- 6 files changed, 92 insertions(+), 27 deletions(-) diff --git a/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClient.java b/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClient.java index d65e7f3..c94f81f 100644 --- a/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClient.java +++ b/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClient.java @@ -16,7 +16,9 @@ */ package com.vci.ubcs.flow.core.feign; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.vci.ubcs.flow.core.entity.BladeFlow; +import com.vci.ubcs.flow.core.entity.ProcessTemplate; import org.springblade.core.launch.constant.AppConstant; import org.springblade.core.tool.api.R; import org.springframework.cloud.openfeign.FeignClient; @@ -25,6 +27,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; +import java.util.List; import java.util.Map; /** @@ -44,6 +47,8 @@ String COMPLETE_TASK = API_PREFIX + "/complete-task"; String TASK_VARIABLE = API_PREFIX + "/task-variable"; String TASK_VARIABLES = API_PREFIX + "/task-variables"; + String SELECT_BY_WRAPPER = API_PREFIX + "/select-by-wrapper"; + String PROCESS_BATCH_SAVE = API_PREFIX + "/PROCESS-BATCH-SAVE"; /** * 寮�鍚祦绋� @@ -97,4 +102,23 @@ */ @GetMapping(TASK_VARIABLES) R<Map<String, Object>> taskVariables(@RequestParam("taskId") String taskId); + + /** + * 鏌ヨ鏁版嵁wrapper鏂瑰紡 + * + * @param wrapperMap 鏉′欢 + * @return R + */ + @PostMapping(SELECT_BY_WRAPPER) + R<List<ProcessTemplate>> selectByWrapper(@RequestBody Map<String,Object> wrapperMap); + + /** + * 鎵归噺淇濆瓨娴佺▼鏁版嵁 + * + * @param listProcessTemplate 淇濆瓨鏁版嵁 + * @return R + */ + @PostMapping(PROCESS_BATCH_SAVE) + R processBatchSave(@RequestBody List<ProcessTemplate> listProcessTemplate); + } diff --git a/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClientFallback.java b/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClientFallback.java index 5148a22..29790de 100644 --- a/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClientFallback.java +++ b/Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IFlowClientFallback.java @@ -16,10 +16,13 @@ */ package com.vci.ubcs.flow.core.feign; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.vci.ubcs.flow.core.entity.BladeFlow; +import com.vci.ubcs.flow.core.entity.ProcessTemplate; import org.springblade.core.tool.api.R; import org.springframework.stereotype.Component; +import java.util.List; import java.util.Map; /** @@ -55,4 +58,14 @@ return R.fail("杩滅▼璋冪敤澶辫触"); } + @Override + public R<List<ProcessTemplate>> selectByWrapper( Map<String,Object> wrapperMap) { + return R.fail("杩滅▼璋冪敤澶辫触"); + } + + @Override + public R processBatchSave(List<ProcessTemplate> listProcessTemplate) { + return R.fail("杩滅▼璋冪敤澶辫触"); + } + } diff --git a/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/FlowClient.java b/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/FlowClient.java index d093953..e79076e 100644 --- a/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/FlowClient.java +++ b/Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/FlowClient.java @@ -16,9 +16,12 @@ */ package com.vci.ubcs.flow.business.feign; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.vci.ubcs.flow.core.entity.BladeFlow; +import com.vci.ubcs.flow.core.entity.ProcessTemplate; import com.vci.ubcs.flow.core.feign.IFlowClient; import com.vci.ubcs.flow.core.utils.TaskUtil; +import com.vci.ubcs.flow.engine.service.ProcessTemplateService; import lombok.AllArgsConstructor; import org.flowable.engine.IdentityService; import org.flowable.engine.RuntimeService; @@ -34,6 +37,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; +import java.util.List; import java.util.Map; /** @@ -49,6 +53,7 @@ private final RuntimeService runtimeService; private final IdentityService identityService; private final TaskService taskService; + private final ProcessTemplateService processTemplateService; @Override @PostMapping(START_PROCESS_INSTANCE_BY_ID) @@ -104,4 +109,33 @@ return R.data(taskService.getVariables(taskId)); } + + /** + * 鏌ヨ鏁版嵁wrapper鏂瑰紡 + * + * @param wrapperMap 鏉′欢 + * @return R + */ + @Override + @PostMapping(SELECT_BY_WRAPPER) + public R<List<ProcessTemplate>> selectByWrapper(@RequestBody Map<String,Object> wrapperMap){ + return R.data(processTemplateService.listByMap(wrapperMap)); + } + + /** + * 鎵归噺淇濆瓨娴佺▼鏁版嵁 + * + * @param listProcessTemplate 淇濆瓨鏁版嵁 + * @return R + */ + @Override + @PostMapping(PROCESS_BATCH_SAVE) + public R processBatchSave(@RequestBody List<ProcessTemplate> listProcessTemplate) { + if(listProcessTemplate.size() == 0){ + return R.fail("涓轰紶鍏ユ暟鎹紝璇锋鏌ワ紒"); + } + boolean b = processTemplateService.saveBatch(listProcessTemplate); + return R.data(b); + } + } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java index 6ff578d..80894c7 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java @@ -31,6 +31,8 @@ import com.vci.ubcs.code.service.ICodeClstemplateService; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; +import com.vci.ubcs.flow.core.entity.ProcessTemplate; +import com.vci.ubcs.flow.core.feign.IFlowClient; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.revision.model.TreeQueryObject; import com.vci.ubcs.starter.revision.model.TreeWrapperOptions; @@ -106,6 +108,8 @@ private CodeClassifyTemplateMapper codeClassifyTemplateMapper; @Autowired(required = false) private CodePhaseAttrServiceImpl codePhaseattrServiceImpl; + @Autowired(required = false) + private IFlowClient iFlowClient; @Override public IPage<CodeClassifyTemplateVO> selectPlCodeClstemplatePage(IPage<CodeClassifyTemplateVO> page, CodeClassifyTemplateVO plCodeClstemplate) { @@ -545,7 +549,7 @@ } //澶嶅埗妯℃澘娴佺▼ - List<CodeClassifyProcessTemp> codeClassifyProcessTempDOList = copyTemplateProcess(templateOldOid,templateNewOid); + List<ProcessTemplate> codeClassifyProcessTempDOList = copyTemplateProcess(templateOldOid,templateNewOid); //澶嶅埗妯℃澘闃舵锛岄樁娈靛睘鎬� Map phase_attrMap = copyTemplatePhase_attr(templateOldOid,templateNewOid); @@ -557,7 +561,7 @@ //淇濆瓨妯℃澘娴佺▼ if(!CollectionUtils.isEmpty(codeClassifyProcessTempDOList)) { - codeClsflowtempServiceImpl.saveBatch(codeClassifyProcessTempDOList); + iFlowClient.processBatchSave(codeClassifyProcessTempDOList); } //妯℃澘闃舵 if(!CollectionUtils.isEmpty(codeClassifyPhaseDOList)) { @@ -619,7 +623,7 @@ List<CodeClassifyTemplateAttr> codeClassifyTemplateAttrDOList = copyTemplateAttr(oldOid,newOid); //澶嶅埗妯℃澘娴佺▼ - List<CodeClassifyProcessTemp> codeClassifyProcessTempDOList = copyTemplateProcess(oldOid,newOid); + List<ProcessTemplate> codeClassifyProcessTempDOList = copyTemplateProcess(oldOid,newOid); //澶嶅埗妯℃澘闃舵锛岄樁娈靛睘鎬� Map phase_attrMap = copyTemplatePhase_attr(oldOid,newOid); @@ -633,7 +637,7 @@ // baseMapper.insert(codeClassifyTemplateDOList); this.saveBatch(codeClassifyTemplateDOList); codeTempbuttonServiceImpl.saveBatch(codeClassifyTemplateButtonDOList); - codeClsflowtempServiceImpl.saveBatch(codeClassifyProcessTempDOList); + iFlowClient.processBatchSave(codeClassifyProcessTempDOList); codeClstempattrService.saveBatch(codeClassifyTemplateAttrDOList); codeTempphaseServiceImpl.saveBatch(codeClassifyPhaseDOList); codePhaseattrServiceImpl.saveBatch(codePhaseAttrDOList); @@ -696,22 +700,17 @@ /** * 澶嶅埗妯℃澘娴佺▼ */ - public List<CodeClassifyProcessTemp> copyTemplateProcess(String templateOldOid,String templateNewOid){ -// VciQueryWrapperForDO processWrapper = new VciQueryWrapperForDO(CodeClassifyProcessTempDO.class); -// processWrapper.addQueryMap("classifyTemplateOid",templateOldOid); - -// Map<String,Object> condition = new HashMap<>(1); -// condition.put("classifyTemplateOid",templateOldOid); - QueryWrapper<CodeClassifyProcessTemp> wrapper = new QueryWrapper<>(); - wrapper.eq("classifyTemplateOid",templateOldOid); - List<CodeClassifyProcessTemp> codeClsflowtempEntities = codeClsflowtempServiceImpl.list(wrapper); -// List<CodeClassifyProcessTempDO> codeClassifyProcessTempDOList = codeClassifyProcessTempDaoI.selectByWrapper(processWrapper);//瑕佷繚瀛樼殑鏂扮殑妯℃澘娴佺▼ - for (CodeClassifyProcessTemp codeClassifyProcessTempDO:codeClsflowtempEntities){ -// String newOid = VciBaseUtil.getPk(); - codeClassifyProcessTempDO.setOid(null); - //codeClassifyProcessTempDO.setCodeClassifyOid(templateNewOid); - codeClassifyProcessTempDO.setClassifyTemplateOid(templateNewOid); -// codeClsflowtempMapper.insert(codeClassifyProcessTempDO); + public List<ProcessTemplate> copyTemplateProcess(String templateOldOid,String templateNewOid){ + Map<String,Object> wrapperMap = new HashMap(); + wrapperMap.put("template_id",templateOldOid); + R<List<ProcessTemplate>> listR = iFlowClient.selectByWrapper(wrapperMap); + if(!listR.isSuccess()){ + throw new VciBaseException("鏌ヨ妯℃澘娴佺▼鏃跺嚭閿欙紝璇烽噸璇曪紒"); + } + List<ProcessTemplate> codeClsflowtempEntities = listR.getData(); + for (ProcessTemplate codeClassifyProcessTempDO:codeClsflowtempEntities){ + codeClassifyProcessTempDO.setId(null); + codeClassifyProcessTempDO.setTemplateId(templateNewOid); //modify by lihang - @20220406 璁剧疆妯℃澘涓婚敭浣嶇疆鍑洪敊锛屽鑷村崌鐗堢殑妯℃澘涓殑娴佺▼鏄┖鐨勩�� } return codeClsflowtempEntities; 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 e569cfb..02270a0 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 @@ -360,15 +360,10 @@ throw new VciBaseException("鏈煡璇㈠埌鐩稿叧鏁版嵁銆�"); } //杩橀渶瑕佷慨鏀筧llCode鐨勭敓鍛藉懆鏈� -// Map<String, String> conditionMap = new HashMap<>(); QueryWrapper<CodeAllCode> allCodeWrapper = new QueryWrapper<>(); allCodeWrapper.eq("createcodebtm", baseModelDTO.getBtmname()); allCodeWrapper.in("createcodeoid", oids); -// conditionMap.put("createcodeoid", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(oids.toArray(new String[0])) + ")"); -// conditionMap.put("createcodebtm", baseModelDTO.getBtmname()); - List<CodeAllCode> codeCbos = codeAllCodeService.selectByWrapper(allCodeWrapper); -// List<ClientBusinessObject> codeCbos = boService.queryCBO(MdmBtmTypeConstant.CODE_ALL_CODE, conditionMap); - // 鍥炴敹闇�瑕佷笟鍔℃暟鎹垹闄� + List<CodeAllCode> codeCbos = codeAllCodeService.selectByWrapper(allCodeWrapper);// 鍥炴敹闇�瑕佷笟鍔℃暟鎹垹闄� if (CodeDefaultLC.TASK_BACK.getValue().equals(baseModelDTO.getLcStatus())) { R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(baseModelDTO.getBtmname())); if (!listR.isSuccess() || listR.getData().size() == 0) { diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java index 99d2e3c..1e0b59b 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java @@ -215,7 +215,7 @@ // 鐗堟湰瑙勫垯瀛楁涓嶈兘涓虹┖ // vo.setNullableFlag(false); vo.setAttributeLength(150); - if (Arrays.asList("lastr","firstr","lastv","firstv").contains(id)){ + if (Arrays.asList("lastr","firstr","lastv","firstv","revisionseq","versionseq").contains(id)){ vo.setAttributeLength(5); vo.setAttrDataType(VciFieldTypeEnum.VTInteger.name()); } -- Gitblit v1.9.3