From f74ae001c619477ca2ece68b72af4113cfabbd9c Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Thu, 6 Oct 2022 20:42:36 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E8=B4=B9=E7=94=A8?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=E4=BB=A5=E5=8F=8A=E4=BB=98=E6=AC=BE=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=E7=9A=84=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/fincostapply/FinCostapplyService.java | 82 +++++++++++++++++-- .../FinPaymentapplyService.java | 69 ++++++++++++++++ 2 files changed, 143 insertions(+), 8 deletions(-) diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincostapply/FinCostapplyService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincostapply/FinCostapplyService.java index a81a2e61df..ffda27f5d1 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincostapply/FinCostapplyService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincostapply/FinCostapplyService.java @@ -43,6 +43,7 @@ import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; +import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; @@ -59,6 +60,9 @@ import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; +import com.yxt.messagecenter.api.message.MessageFeign; +import com.yxt.messagecenter.api.message.MessageFlowVo; +import com.yxt.messagecenter.api.message.MessageFlowableQuery; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -99,6 +103,8 @@ public class FinCostapplyService extends MybatisBaseService listPageVo(PagerQuery pq) { FinCostapplyQuery query = pq.getParams(); @@ -259,9 +265,9 @@ public class FinCostapplyService extends MybatisBaseService variables = new HashMap<>(); - Map appMap = new HashMap<>(); - appMap.put("sid",businessSid); - variables.put("app",appMap); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); //用户的部门全路径sid bv.setOrgSidPath(orgSidPath); //业务sid @@ -317,6 +323,18 @@ public class FinCostapplyService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); return voResultBean; } if (r == 2) { @@ -382,15 +400,33 @@ public class FinCostapplyService extends MybatisBaseService vaributes = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", bv.getBusinessSid()); + vaributes.put("app", appMap); + bv.setFormVariables(vaributes); ResultBean resultBean = flowableFeign.handleProsess(bv); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); } updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); - /* //ToDo:出纳付款记录 - if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { - - }*/ + if (!"Event_end".equals(resultBean.getData().getTaskDefKey())){ + //极光推送 + UpdateFlowFieldVo ufVo = resultBean.getData(); + finCostapply = fetchBySid(bv.getBusinessSid()); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + ufVo.setProcDefId(finCostapply.getProcDefId()); + ufVo.setProcInsId(finCostapply.getProcInstId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(bv.getBusinessSid()); + messageFlowableQuery.setModuleName("费用申请"); + messageFlowableQuery.setMsgContent(finCostapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("费用申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + } return rb.success().setData(resultBean.getData()); } else { return rb.setMsg("操作失败!提交的数据不一致"); @@ -443,6 +479,7 @@ public class FinCostapplyService extends MybatisBaseService vaributes = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", query.getBusinessSid()); + vaributes.put("app", appMap); + flowTaskVo.setValues(vaributes); ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); @@ -461,6 +503,30 @@ public class FinCostapplyService extends MybatisBaseService map = BeanUtil.beanToMap(resultBean.getData()); //更新业务中的流程相关的参数 updateFlowFiled(map); + //极光推送 + UpdateFlowFieldVo ufVo = resultBean.getData(); + finCostapply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = finCostapply.getProcInstId(); + ufVo.setProcInsId(procId); + ufVo.setProcDefId(finCostapply.getProcDefId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("费用申请"); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); + if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(finCostapply.getCreateBySid())) { + messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); + } else { + messageFlowableQuery.setMsgContent(finCostapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + + messageFlowableQuery.setMsgTitle("费用申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); return rb.success(); } } @@ -544,7 +610,7 @@ public class FinCostapplyService extends MybatisBaseService appDetails(String sid) { ResultBean rb = ResultBean.fireFail(); AppFinCostApplyVo appFinCostApplyVo = baseMapper.appDetails(sid); - if ('1'.equals(appFinCostApplyVo.getIsVehKey())) {//涉及车辆 + if ("1".equals(appFinCostApplyVo.getIsVehKey())) {//涉及车辆 List vinNoList = finCostapplyVehicleService.selectByApplySid(sid); String vins = StringUtils.join(vinNoList.toArray(), "\n"); appFinCostApplyVo.setVins(vins); diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java index 7899d6ac4b..9f5e2ee3c3 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java @@ -47,6 +47,7 @@ import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; +import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; @@ -62,6 +63,9 @@ import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; +import com.yxt.messagecenter.api.message.MessageFeign; +import com.yxt.messagecenter.api.message.MessageFlowVo; +import com.yxt.messagecenter.api.message.MessageFlowableQuery; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -104,6 +108,8 @@ public class FinPaymentapplyService extends MybatisBaseService listPageVo(PagerQuery pq) { FinPaymentapplyQuery query = pq.getParams(); @@ -267,6 +273,18 @@ public class FinPaymentapplyService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); return voResultBean; } if (r == 2) { @@ -331,6 +349,11 @@ public class FinPaymentapplyService extends MybatisBaseService vaributes = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", bv.getBusinessSid()); + vaributes.put("app", appMap); + bv.setFormVariables(vaributes); ResultBean resultBean = flowableFeign.handleProsess(bv); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); @@ -353,6 +376,22 @@ public class FinPaymentapplyService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); } return rb.success().setData(resultBean.getData()); } else { @@ -407,6 +446,7 @@ public class FinPaymentapplyService extends MybatisBaseService vaributes = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", query.getBusinessSid()); + vaributes.put("app", appMap); + flowTaskVo.setValues(vaributes); ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); @@ -424,6 +469,30 @@ public class FinPaymentapplyService extends MybatisBaseService map = BeanUtil.beanToMap(resultBean.getData()); //更新业务中的流程相关的参数 updateFlowFiled(map); + //极光推送 + UpdateFlowFieldVo ufVo = resultBean.getData(); + finPaymentapply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = finPaymentapply.getProcInstId(); + ufVo.setProcInsId(procId); + ufVo.setProcDefId(finPaymentapply.getProcDefId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("付款申请"); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); + if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(finPaymentapply.getCreateBySid())) { + messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); + } else { + messageFlowableQuery.setMsgContent(finPaymentapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + + messageFlowableQuery.setMsgTitle("付款申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); return rb.success(); } }