From 1cc26a9b8452b4dcd371f97d3a18a0529ef38a0a Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 26 May 2023 11:56:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AC=A0=E6=AC=BE=E6=8F=90=E8=BD=A6=E3=80=81?= =?UTF-8?q?=E5=87=BA=E5=BA=93=E7=94=B3=E8=AF=B7=E7=9A=84=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=90=8D=E7=A7=B0=E4=B8=BA=E5=90=88=E5=90=8C?= =?UTF-8?q?=E7=BC=96=E5=8F=B7+=E6=B5=81=E7=A8=8B=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusDeliveredApplyFeign.java | 8 +-- .../BusDeliveredApplyFeignFallback.java | 8 +-- .../api/busdeliveredapply/GetNodeQuery.java | 2 + .../BusArrearsCarryVehicleApplyService.java | 54 ++++++++++++++- .../BusDeliveredApplyRest.java | 8 +-- .../BusDeliveredApplyService.java | 66 +++++++++++++++---- .../bussalesorder/BusSalesOrderService.java | 2 - .../api/flow/FlowProcessMapQuery.java | 22 +++++++ .../flowable/api/flow/FlowableFallback.java | 5 ++ .../flowable/api/flow/FlowableFeign.java | 5 ++ .../anrui/flowable/biz/flow/FlowableRest.java | 12 ++++ 11 files changed, 163 insertions(+), 29 deletions(-) create mode 100644 anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowProcessMapQuery.java diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java index 91840a42c5..8a522e913a 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java @@ -130,7 +130,7 @@ public interface BusDeliveredApplyFeign { @ResponseBody public ResultBean fetchDetailsBySid(@RequestBody BusDeliveredApplyDetailQuery query); - @ApiOperation("验证是否可出库") + /* @ApiOperation("验证是否可出库") @PostMapping("/checkingApply") // @ResponseBody @ApiIgnore @@ -140,17 +140,17 @@ public interface BusDeliveredApplyFeign { // @ResponseBody @PostMapping(value = "examine") @ApiIgnore - ResultBean examine(@RequestBody BusDeExamineQuery busDeExamineQuery); + ResultBean examine(@RequestBody BusDeExamineQuery busDeExamineQuery);*/ @ApiOperation("出库审核分页列表") @PostMapping("/listExaminePage") @ResponseBody public ResultBean> listExaminePage(@RequestBody PagerQuery pq); - @ApiOperation("提交出库审批流程") + /* @ApiOperation("提交出库审批流程") @PostMapping("/submitDeliveredApply") @ResponseBody - public ResultBean submitDeliveredApply(@Valid @RequestBody SubmitDeliveredApplyDto dto); + public ResultBean submitDeliveredApply(@Valid @RequestBody SubmitDeliveredApplyDto dto);*/ @ApiOperation(value = "办理(同意)") diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java index 261dde0ba4..e36ed9adc6 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java @@ -86,7 +86,7 @@ public class BusDeliveredApplyFeignFallback implements BusDeliveredApplyFeign { return rb.setMsg("接口anrui-buscenter/busdeliveredapply/fetchDetailsBySid无法访问"); } - @Override + /* @Override public ResultBean checkingApply(CheckingApplyQuery query) { return null; } @@ -94,17 +94,17 @@ public class BusDeliveredApplyFeignFallback implements BusDeliveredApplyFeign { @Override public ResultBean examine(BusDeExamineQuery busDeExamineQuery) { return null; - } + }*/ @Override public ResultBean> listExaminePage(PagerQuery pq) { return null; } - @Override + /* @Override public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) { return null; - } + }*/ @Override public ResultBean submitAppDeliveredApply(AppSubmitDeliveredApplyDto dto) { diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/GetNodeQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/GetNodeQuery.java index 7ec58b00a0..f3f02e2653 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/GetNodeQuery.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/GetNodeQuery.java @@ -17,5 +17,7 @@ public class GetNodeQuery implements Query { @ApiModelProperty(value = "分支字段及业务字段") private Map formVariables; + @ApiModelProperty("业务sid") + private String businessSid; } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java index 0876ec5044..72eb318b3f 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java @@ -47,6 +47,7 @@ import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo; import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationFeign; import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo; import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign; +import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery; import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; @@ -1667,7 +1668,6 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService appMap = new HashMap<>(); //需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。 @@ -1680,6 +1680,12 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService voResultBean = flowableFeign.startProcess(bv); if (!voResultBean.getSuccess()) { @@ -1791,7 +1797,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService resultBean = flowableFeign.handleProsess(bv); if (!resultBean.getSuccess()) { @@ -1891,7 +1905,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService appMap = new HashMap<>(); appMap.put("sid", bv.getBusinessSid()); variables.put("app", appMap); + //================================= + FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery(); + flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId()); + flowProcessMapQuery.setVariables(variables); + flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo()); + variables = flowableFeign.getMap(flowProcessMapQuery).getData(); bv.setFormVariables(variables); + //=============================================== bv.setOrgSidPath(busArrearsCarryVehicleApply.getOrgSidPath()); ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo @@ -1975,7 +1996,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); @@ -1996,6 +2024,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); @@ -2026,6 +2062,13 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService appMap = new HashMap<>(); appMap.put("sid", query.getBusinessSid()); variables.put("app", appMap); + //================================= + FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery(); + flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId()); + flowProcessMapQuery.setVariables(variables); + flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo()); + variables = flowableFeign.getMap(flowProcessMapQuery).getData(); + //=============================================== flowTaskVo.setValues(variables); ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); if (!resultBean.getSuccess()) { @@ -2048,7 +2091,6 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService> listResultBean = flowTaskFeign.getLatestTasks(procId); String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); String nextName = listResultBean.getData().get(0).getName_(); - List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); if ("发起申请".equals(nextName)) { messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); baseVehicleTempstateFeign.delByBusSid(busArrearsCarryVehicleApply.getSid()); @@ -2083,13 +2125,19 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService appMap = new HashMap<>(); appMap.put("sid", query.getBusinessSid()); variables.put("app", appMap); + //================================= + FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery(); + flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId()); + flowProcessMapQuery.setVariables(variables); + flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo()); + variables = flowableFeign.getMap(flowProcessMapQuery).getData(); + //=============================================== flowTaskVo.setValues(variables); ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo); if (!resultBean.getSuccess()) { return rb.setMsg("操作失败!"); } String nextNodeUserSids = resultBean.getData().getNextNodeUserSids(); - List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); busArrearsCarryVehicleApply = fetchBySid(query.getBusinessSid()); ResultBean> listResultBean = flowTaskFeign.getLatestTasks(busArrearsCarryVehicleApply.getProcInstId()); String nextName = listResultBean.getData().get(0).getName_(); diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java index 6510e4c5d1..8d6aea5253 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java @@ -147,7 +147,7 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign { return vo; } - @Override + /* @Override public ResultBean checkingApply(CheckingApplyQuery query) { return busDeliveredApplyService.checkingApply(query); } @@ -155,7 +155,7 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign { @Override public ResultBean examine(BusDeExamineQuery busDeExamineQuery) { return busDeliveredApplyService.examine(busDeExamineQuery); - } + }*/ @Override public ResultBean> listExaminePage(PagerQuery pq) { @@ -164,10 +164,10 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign { return rb.success().setData(pv); } - @Override + /* @Override public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) { return busDeliveredApplyService.submitDeliveredApply(dto); - } + }*/ @Override public ResultBean submitAppDeliveredApply(AppSubmitDeliveredApplyDto dto) { diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java index 1c3538d215..a7440ffbdc 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java @@ -86,6 +86,7 @@ import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedRec import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveInvoiceVo; import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveSeleteVo; import com.yxt.anrui.fin.api.finvehicleinvoice.InvoiceVo; +import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery; import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; @@ -472,7 +473,7 @@ public class BusDeliveredApplyService extends MybatisBaseService voResultBean = flowableFeign.startProcess(bv); if (!voResultBean.getSuccess()) { @@ -587,7 +594,7 @@ public class BusDeliveredApplyService extends MybatisBaseService variables = new HashMap<>(); + //若app移动端有此功能,则传递appMap参数 + Map appMap = new HashMap<>(); + //需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。 + appMap.put("outboundSid", bv.getBusinessSid()); + appMap.put("contractId", busDeliveredApply.getContractNo()); + appMap.put("contract_id", busDeliveredApply.getContractNo()); + variables.put("app", appMap); + FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery(); + flowProcessMapQuery.setProDefKey(bv.getModelId()); + flowProcessMapQuery.setVariables(variables); + flowProcessMapQuery.setContractNo(busDeliveredApply.getContractNo()); + variables = flowableFeign.getMap(flowProcessMapQuery).getData(); + bv.setFormVariables(variables); + bv.setModelId(busDeliveredApply.getProcDefId()); if (bv.getTaskId().equals(busDeliveredApply.getTaskId())) { ResultBean resultBean = flowableFeign.handleProsess(bv); if (!resultBean.getSuccess()) { @@ -1036,7 +1058,12 @@ public class BusDeliveredApplyService extends MybatisBaseService> rb = new ResultBean<>(); BusinessVariables bv = new BusinessVariables(); BeanUtil.copyProperties(query, bv); - bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); + if(StringUtils.isNotBlank(query.getBusinessSid())){ + BusDeliveredApply busDeliveredApply = fetchBySid(query.getBusinessSid()); + bv.setModelId(busDeliveredApply.getProcDefId()); + }else{ + bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); + } ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); @@ -1053,7 +1080,12 @@ public class BusDeliveredApplyService extends MybatisBaseService> rb = ResultBean.fireFail(); BusinessVariables bv = new BusinessVariables(); BeanUtil.copyProperties(query, bv); - bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); + if(StringUtils.isNotBlank(query.getBusinessSid())){ + BusDeliveredApply busDeliveredApply = fetchBySid(query.getBusinessSid()); + bv.setModelId(busDeliveredApply.getProcDefId()); + }else{ + bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); + } ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); @@ -1085,6 +1117,11 @@ public class BusDeliveredApplyService extends MybatisBaseService resultBean = flowableFeign.taskReject(flowTaskVo); if (!resultBean.getSuccess()) { @@ -1732,7 +1769,8 @@ public class BusDeliveredApplyService extends MybatisBaseService appMap = new HashMap<>(); //需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。 @@ -1740,8 +1778,12 @@ public class BusDeliveredApplyService extends MybatisBaseService voResultBean = flowableFeign.startProcess(bv); if (!voResultBean.getSuccess()) { diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java index 96281c3050..ee75d45574 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java @@ -4549,8 +4549,6 @@ public class BusSalesOrderService extends MybatisBaseService variables; + @ApiModelProperty("流程id") + private String proDefKey; +} diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java index a87c254107..f152fbda16 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java @@ -101,5 +101,10 @@ public class FlowableFallback implements FlowableFeign { return null; } + @Override + public ResultBean> getMap(FlowProcessMapQuery query) { + return null; + } + } diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java index c7059f789e..4bf602a94e 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java @@ -146,4 +146,9 @@ public interface FlowableFeign { @GetMapping(value = "/selectFlows") @ResponseBody ResultBean selectFlows(@RequestParam("proDefId")String proDefId,@RequestParam("proInsId")String proInsId); + + @ApiOperation(value = "获取map") + @PostMapping(value = "/getMap") + @ResponseBody + ResultBean> getMap(@RequestBody FlowProcessMapQuery query); } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java index 46914b001e..9f506624c2 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java @@ -720,4 +720,16 @@ public class FlowableRest implements FlowableFeign { public ResultBean selectFlows(String proDefId, String proInsId) { return flowableService.selectFlows(proDefId,proInsId); } + + @Override + public ResultBean> getMap(FlowProcessMapQuery query) { + ResultBean> rb = ResultBean.fireFail(); + Map variables = query.getVariables(); + String contractNo = query.getContractNo(); + String proDefKey = query.getProDefKey(); + Map process = processService.getProcessDefByDefId(proDefKey); + String orderNames = contractNo+process.get("NAME_"); + variables.put("orderNames",orderNames); + return rb.success().setData(variables); + } }