Browse Source

优化流程接口

zhanglei
fanzongzhe 2 years ago
parent
commit
9fc828c6fa
  1. 8
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackage/BaseDiscountpackageService.java
  2. 7
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackageapply/BaseDiscountpackageApplyService.java
  3. 11
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorService.java
  4. 89
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java
  5. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java
  6. 7
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java
  7. 7
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busmaindeposit/BusMainDepositService.java
  8. 10
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java
  9. 164
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincostapply/FinCostapplyService.java
  10. 156
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java
  11. 9
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherpolicyrecordapply/LoanFinOtherPolicyRecordApplyService.java
  12. 9
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicyrecordapply/LoanFinPolicyRecordApplyService.java

8
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackage/BaseDiscountpackageService.java

@ -23,6 +23,7 @@ import com.yxt.anrui.base.biz.basediscountpackageveh.BaseDiscountpackageVehServi
import com.yxt.anrui.base.biz.basevehmodellabel.BaseVehmodelLabelService; import com.yxt.anrui.base.biz.basevehmodellabel.BaseVehmodelLabelService;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkDto; import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkDto;
@ -80,7 +81,8 @@ public class BaseDiscountpackageService extends MybatisBaseService<BaseDiscountp
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired
private FlowFeign flowFeign;
@Autowired @Autowired
private BaseDiscountpackageVehService baseDiscountpackageVehService; private BaseDiscountpackageVehService baseDiscountpackageVehService;
@ -483,7 +485,7 @@ public class BaseDiscountpackageService extends MybatisBaseService<BaseDiscountp
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.SALESPOLICY.getProDefId()); bv.setModelId(ProcDefEnum.SALESPOLICY.getProDefId());
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData(); UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo)); updateFlowFiled(BeanUtil.beanToMap(ufVo));
return voResultBean; return voResultBean;
@ -551,7 +553,7 @@ public class BaseDiscountpackageService extends MybatisBaseService<BaseDiscountp
} }
if (bv.getTaskId().equals(baseDiscountpackage.getTaskId())) { if (bv.getTaskId().equals(baseDiscountpackage.getTaskId())) {
bv.setOrgSidPath(baseDiscountpackage.getOrgSidPath()); bv.setOrgSidPath(baseDiscountpackage.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }

7
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackageapply/BaseDiscountpackageApplyService.java

@ -55,6 +55,7 @@ import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDis
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
@ -110,6 +111,8 @@ public class BaseDiscountpackageApplyService extends MybatisBaseService<BaseDisc
@Autowired @Autowired
private FlowTaskFeign flowTaskFeign; private FlowTaskFeign flowTaskFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private CommonContractService commonContractService; private CommonContractService commonContractService;
@Autowired @Autowired
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign; private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign;
@ -450,7 +453,7 @@ public class BaseDiscountpackageApplyService extends MybatisBaseService<BaseDisc
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId());
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -517,7 +520,7 @@ public class BaseDiscountpackageApplyService extends MybatisBaseService<BaseDisc
String orgSidPath = baseDiscountpackageApply.getOrgSidPath(); String orgSidPath = baseDiscountpackageApply.getOrgSidPath();
if (bv.getTaskId().equals(baseDiscountpackageApply.getTaskId())) { if (bv.getTaskId().equals(baseDiscountpackageApply.getTaskId())) {
bv.setOrgSidPath(baseDiscountpackageApply.getOrgSidPath()); bv.setOrgSidPath(baseDiscountpackageApply.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }

11
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorService.java

@ -25,6 +25,7 @@ import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery; import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -93,6 +94,8 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private MessageFeign messageFeign; private MessageFeign messageFeign;
@Autowired @Autowired
private FlowTaskFeign flowTaskFeign; private FlowTaskFeign flowTaskFeign;
@ -1166,7 +1169,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
if (r == 1) { if (r == 1) {
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.DEALERFILINGAPPLY.getProDefId()); bv.setModelId(ProcDefEnum.DEALERFILINGAPPLY.getProDefId());
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -1241,7 +1244,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
BaseDistributor baseDistributor = this.fetchBySid(businessSid); BaseDistributor baseDistributor = this.fetchBySid(businessSid);
if (bv.getTaskId().equals(baseDistributor.getTaskId())) { if (bv.getTaskId().equals(baseDistributor.getTaskId())) {
bv.setOrgSidPath(baseDistributor.getOrgSidPath()); bv.setOrgSidPath(baseDistributor.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
@ -1364,7 +1367,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
if (r == 1) { if (r == 1) {
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.DEALERFILINGAPPLY.getProDefId()); bv.setModelId(ProcDefEnum.DEALERFILINGAPPLY.getProDefId());
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -1472,7 +1475,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
variables = flowableFeign.getMap(flowProcessMapQuery).getData(); variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//======================================= //=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean1 = flowFeign.handleProsess(bv);
if (!resultBean1.getSuccess()) { if (!resultBean1.getSuccess()) {
return rb.setMsg(resultBean1.getMsg()); return rb.setMsg(resultBean1.getMsg());
} }

89
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java

@ -30,6 +30,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.api.basemodelmodprice.*; import com.yxt.anrui.base.api.basemodelmodprice.*;
import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery; import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery;
import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery; import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery;
@ -40,6 +41,7 @@ import com.yxt.anrui.base.api.basemodelmodpricemodel.BaseModelModpriceModelDto;
import com.yxt.anrui.base.api.basemodelmodpricemodel.BaseModelModpriceModelVo; import com.yxt.anrui.base.api.basemodelmodpricemodel.BaseModelModpriceModelVo;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel; import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel;
import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfig; import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfig;
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApply;
import com.yxt.anrui.base.biz.basemodelconfig.BaseModelConfigService; import com.yxt.anrui.base.biz.basemodelconfig.BaseModelConfigService;
import com.yxt.anrui.base.biz.basemodelmodpricemodel.BaseModelModpriceModelService; import com.yxt.anrui.base.biz.basemodelmodpricemodel.BaseModelModpriceModelService;
import com.yxt.anrui.base.biz.basevehiclemodel.BaseVehicleModelService; import com.yxt.anrui.base.biz.basevehiclemodel.BaseVehicleModelService;
@ -47,6 +49,7 @@ import com.yxt.anrui.base.biz.basevehmodelconfig.BaseVehmodelConfigMapper;
import com.yxt.anrui.base.biz.basevehmodelconfig.BaseVehmodelConfigService; import com.yxt.anrui.base.biz.basevehmodelconfig.BaseVehmodelConfigService;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -74,6 +77,7 @@ import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
@ -87,6 +91,7 @@ import java.math.BigDecimal;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.concurrent.*;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -116,6 +121,8 @@ public class BaseModelModpriceService extends MybatisBaseService<BaseModelModpri
@Autowired @Autowired
private FlowTaskFeign flowTaskFeign; private FlowTaskFeign flowTaskFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
@Autowired @Autowired
private BaseVehmodelConfigMapper baseVehmodelConfigMapper; private BaseVehmodelConfigMapper baseVehmodelConfigMapper;
@ -296,21 +303,35 @@ public class BaseModelModpriceService extends MybatisBaseService<BaseModelModpri
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.BASEMODELMODPRICE.getProDefId()); bv.setModelId(ProcDefEnum.BASEMODELMODPRICE.getProDefId());
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData(); UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo)); updateFlowFiled(BeanUtil.beanToMap(ufVo));
//极光推送 //==================================添加线程
baseModelModprice = fetchBySid(businessSid); try {
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
MessageFlowVo messageFlowVo = new MessageFlowVo(); .setNameFormat("demo-pool-%d").build();
BeanUtil.copyProperties(ufVo, messageFlowVo); ExecutorService pool = new ThreadPoolExecutor(2, 100,
messageFlowableQuery.setUfVo(messageFlowVo); 0L, TimeUnit.MILLISECONDS,
messageFlowableQuery.setAppMap(appMap); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("车型调价申请"); Future future1 = pool.submit(() -> {
messageFlowableQuery.setMsgContent(baseModelModprice.getApplyPeoName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); //极光推送
messageFlowableQuery.setMsgTitle("车型调价"); BaseModelModprice baseModelModprice2 = fetchBySid(businessSid);
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("车型调价申请");
messageFlowableQuery.setMsgContent(baseModelModprice2.getApplyPeoName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("车型调价");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
//==================================添加线程
return voResultBean; return voResultBean;
} }
if (r == 2) { if (r == 2) {
@ -373,7 +394,7 @@ public class BaseModelModpriceService extends MybatisBaseService<BaseModelModpri
variables.put("app", appMap); variables.put("app", appMap);
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(baseModelModprice.getOrgSidPath()); bv.setOrgSidPath(baseModelModprice.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
@ -398,19 +419,33 @@ public class BaseModelModpriceService extends MybatisBaseService<BaseModelModpri
} else { } else {
//极光推送 //极光推送
UpdateFlowFieldVo ufVo = resultBean.getData(); UpdateFlowFieldVo ufVo = resultBean.getData();
baseModelModprice = fetchBySid(businessSid); BaseModelModprice baseModelModprice2 = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); //==================================添加线程
MessageFlowVo messageFlowVo = new MessageFlowVo(); try {
BeanUtil.copyProperties(ufVo, messageFlowVo); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
messageFlowVo.setProcInsId(baseModelModprice.getProcInstId()); .setNameFormat("demo-pool-%d").build();
messageFlowVo.setProcDefId(baseModelModprice.getProcDefId()); ExecutorService pool = new ThreadPoolExecutor(2, 100,
messageFlowableQuery.setUfVo(messageFlowVo); 0L, TimeUnit.MILLISECONDS,
messageFlowableQuery.setAppMap(appMap); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
messageFlowableQuery.setBusinessSid(bv.getBusinessSid());
messageFlowableQuery.setModuleName("车型调价申请"); Future future1 = pool.submit(() -> {
messageFlowableQuery.setMsgContent(baseModelModprice.getApplyPeoName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
messageFlowableQuery.setMsgTitle("车型调价"); MessageFlowVo messageFlowVo = new MessageFlowVo();
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowVo.setProcInsId(baseModelModprice2.getProcInstId());
messageFlowVo.setProcDefId(baseModelModprice2.getProcDefId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(bv.getBusinessSid());
messageFlowableQuery.setModuleName("车型调价申请");
messageFlowableQuery.setMsgContent(baseModelModprice2.getApplyPeoName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("车型调价");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
//==================================添加线程
} }
return rb.success().setData(resultBean.getData()); return rb.success().setData(resultBean.getData());
} else { } else {

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java

@ -423,7 +423,7 @@ public class BaseOutsourcingApplicationService extends MybatisBaseService<BaseOu
} }
String purchasingUnitName = baseOutsourcingApplication.getPurchasingUnitName(); String purchasingUnitName = baseOutsourcingApplication.getPurchasingUnitName();
String purchaseSystemName = baseOutsourcingApplication.getPurchaseSystemName(); String purchaseSystemName = baseOutsourcingApplication.getPurchaseSystemName();
String orderNames = purchaseSystemName + purchasingUnitName + "外采申请"; String orderNames = purchaseSystemName + "<" + purchasingUnitName + ">" + "外采申请";
variables.put("orderNames", orderNames); variables.put("orderNames", orderNames);
//=================添加app参数结束 //=================添加app参数结束
bv.setFormVariables(variables); bv.setFormVariables(variables);
@ -500,7 +500,7 @@ public class BaseOutsourcingApplicationService extends MybatisBaseService<BaseOu
BaseOutsourcingApplication entity = fetchBySid(businessSid); BaseOutsourcingApplication entity = fetchBySid(businessSid);
String purchasingUnitName = entity.getPurchasingUnitName(); String purchasingUnitName = entity.getPurchasingUnitName();
String purchaseSystemName = entity.getPurchaseSystemName(); String purchaseSystemName = entity.getPurchaseSystemName();
String orderNames = purchaseSystemName + purchasingUnitName + "外采申请"; String orderNames = purchaseSystemName + "<" + purchasingUnitName + ">" + "外采申请";
variables.put("orderNames", orderNames); variables.put("orderNames", orderNames);
//=================添加app参数结束 //=================添加app参数结束
bv.setFormVariables(variables); bv.setFormVariables(variables);

7
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java

@ -58,6 +58,7 @@ import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign; import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -120,6 +121,8 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign; private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired @Autowired
private BusHandoverItemsService busHandoverItemsService; private BusHandoverItemsService busHandoverItemsService;
@ -1968,7 +1971,7 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
if (r == 1) { if (r == 1) {
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.BUSHANDOVER.getProDefId()); bv.setModelId(ProcDefEnum.BUSHANDOVER.getProDefId());
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -2068,7 +2071,7 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
BusHandover busHandover = this.fetchBySid(businessSid); BusHandover busHandover = this.fetchBySid(businessSid);
if (bv.getTaskId().equals(busHandover.getTaskId())) { if (bv.getTaskId().equals(busHandover.getTaskId())) {
bv.setOrgSidPath(busHandover.getOrgSidPath()); bv.setOrgSidPath(busHandover.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }

7
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busmaindeposit/BusMainDepositService.java

@ -1387,12 +1387,13 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
return rb.setMsg("当前所在的组织机构不存在"); return rb.setMsg("当前所在的组织机构不存在");
} }
if (StringUtils.isBlank(sysOrganization.getManagerSid())) { if (StringUtils.isBlank(sysOrganization.getManagerSid())) {
return rb.setMsg("当前所在的组织机构未设置主管人员"); // return rb.setMsg("当前所在的组织机构未设置主管人员");
sysOrganization.setManagerSid(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId());
} }
String nextNodeUserSids_ = sysOrganization.getManagerSid(); String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_); bv.setNextNodeUserSids(nextNodeUserSids_);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData(); UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo)); updateFlowFiled(BeanUtil.beanToMap(ufVo));
if ("Event_end".equals(ufVo.getTaskDefKey())) { if ("Event_end".equals(ufVo.getTaskDefKey())) {
@ -1468,7 +1469,7 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(busMainDeposit.getOrgSidPath()); bv.setOrgSidPath(busMainDeposit.getOrgSidPath());
if (bv.getTaskId().equals(busMainDeposit.getTaskId())) { if (bv.getTaskId().equals(busMainDeposit.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
log.info("流程返回:{}", JSONObject.toJSONString(resultBean)); log.info("流程返回:{}", JSONObject.toJSONString(resultBean));
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());

10
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java

@ -68,6 +68,7 @@ import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedRec
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign; import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -134,6 +135,8 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired
private FlowFeign flowFeign;
@Resource @Resource
private SysStaffOrgFeign sysStaffOrgFeign; private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired @Autowired
@ -439,7 +442,8 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
return rb.setMsg("当前所在的组织机构不存在"); return rb.setMsg("当前所在的组织机构不存在");
} }
if (StringUtils.isBlank(sysOrganization.getManagerSid())) { if (StringUtils.isBlank(sysOrganization.getManagerSid())) {
return rb.setMsg("当前所在的组织机构未设置主管人员"); // return rb.setMsg("当前所在的组织机构未设置主管人员");
sysOrganization.setManagerSid(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId());
} }
BusSalesOrderReturnVehApply busSalesOrderReturnVehApply = fetchBySid(dto.getSid()); BusSalesOrderReturnVehApply busSalesOrderReturnVehApply = fetchBySid(dto.getSid());
int r = submitBusinessData(dto, busSalesOrderReturnVehApply); int r = submitBusinessData(dto, busSalesOrderReturnVehApply);
@ -478,7 +482,7 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
String nextNodeUserSids_ = sysOrganization.getManagerSid(); String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_); bv.setNextNodeUserSids(nextNodeUserSids_);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -563,7 +567,7 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(busSalesOrderReturnVehApply.getOrgSidPath()); bv.setOrgSidPath(busSalesOrderReturnVehApply.getOrgSidPath());
if (bv.getTaskId().equals(busSalesOrderReturnVehApply.getTaskId())) { if (bv.getTaskId().equals(busSalesOrderReturnVehApply.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }

164
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincostapply/FinCostapplyService.java

@ -29,9 +29,11 @@ import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.common.enums.BillTypeEnum; import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule; import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo; import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.busmaindeposit.BusMainDeposit;
import com.yxt.anrui.fin.api.fincostapply.*; import com.yxt.anrui.fin.api.fincostapply.*;
import com.yxt.anrui.fin.api.fincostapply.flow.FinCostGetNodeQuery; import com.yxt.anrui.fin.api.fincostapply.flow.FinCostGetNodeQuery;
import com.yxt.anrui.fin.api.fincostapply.flow.FinCostGetNodeVo; import com.yxt.anrui.fin.api.fincostapply.flow.FinCostGetNodeVo;
@ -41,6 +43,7 @@ import com.yxt.anrui.fin.api.fincostapplyvehicle.FinCostapplyVehicle;
import com.yxt.anrui.fin.biz.fincostapplyvehicle.FinCostapplyVehicleService; import com.yxt.anrui.fin.biz.fincostapplyvehicle.FinCostapplyVehicleService;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -63,11 +66,13 @@ import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo; import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery; import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -93,6 +98,8 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private FlowTaskFeign flowTaskFeign; private FlowTaskFeign flowTaskFeign;
@Autowired @Autowired
private FinCostapplyVehicleService finCostapplyVehicleService; private FinCostapplyVehicleService finCostapplyVehicleService;
@ -134,8 +141,8 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
qw.eq("fc.createBySid", pageQuery.getUserSid()); qw.eq("fc.createBySid", pageQuery.getUserSid());
} }
//申请人的组织机构sid全路径 //申请人的组织机构sid全路径
if(StringUtils.isNotBlank(pageQuery.getOrgPath())){ if (StringUtils.isNotBlank(pageQuery.getOrgPath())) {
qw.eq("fc.orgSidPath",pageQuery.getOrgPath()); qw.eq("fc.orgSidPath", pageQuery.getOrgPath());
} }
} }
IPage<FinCostapply> page = PagerUtil.queryToPage(pq); IPage<FinCostapply> page = PagerUtil.queryToPage(pq);
@ -150,12 +157,12 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
if (StringUtils.isBlank(dtoSid)) { if (StringUtils.isBlank(dtoSid)) {
//======================================= //=======================================
String orgSidPath = ""; String orgSidPath = "";
if(StringUtils.isNotBlank(dto.getOrgPath())){ if (StringUtils.isNotBlank(dto.getOrgPath())) {
orgSidPath = dto.getOrgPath(); orgSidPath = dto.getOrgPath();
}else{ } else {
orgSidPath = dto.getOrgSidPath(); orgSidPath = dto.getOrgSidPath();
} }
if(StringUtils.isBlank(orgSidPath)){ if (StringUtils.isBlank(orgSidPath)) {
//根据用户sid获取staffSid //根据用户sid获取staffSid
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getCreateBySid()); ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getCreateBySid());
if (!userVoResultBean.getSuccess()) { if (!userVoResultBean.getSuccess()) {
@ -200,7 +207,7 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
if (finCostapply == null) { if (finCostapply == null) {
return rb.setMsg("该费用申请不存在"); return rb.setMsg("该费用申请不存在");
} }
BeanUtil.copyProperties(dto, finCostapply,"orgSidPath"); BeanUtil.copyProperties(dto, finCostapply, "orgSidPath");
finCostapplyVehicleService.deleteByMainSid(dtoSid); finCostapplyVehicleService.deleteByMainSid(dtoSid);
if (finCostapply.getIsVeh() == 1) { if (finCostapply.getIsVeh() == 1) {
if (finCostapply.getIsOutDoor() == null) { if (finCostapply.getIsOutDoor() == null) {
@ -274,9 +281,9 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
//用户的组织全路径 //用户的组织全路径
String orgSidPath = ""; String orgSidPath = "";
String orgPath = dto.getOrgPath(); String orgPath = dto.getOrgPath();
if(StringUtils.isNotBlank(orgPath)){ if (StringUtils.isNotBlank(orgPath)) {
orgSidPath = orgPath; orgSidPath = orgPath;
}else{ } else {
orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
} }
FinCostapply finCostapply = fetchBySid(dto.getSid()); FinCostapply finCostapply = fetchBySid(dto.getSid());
@ -334,34 +341,46 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
String nextNodeUserSids_ = nextNodeUserSids.toString(); String nextNodeUserSids_ = nextNodeUserSids.toString();
bv.setNextNodeUserSids(nextNodeUserSids_);*/ bv.setNextNodeUserSids(nextNodeUserSids_);*/
List<String> orgPathList = Arrays.asList(orgSidPath.split("/")); List<String> orgPathList = Arrays.asList(orgSidPath.split("/"));
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(orgPathList.get(orgPathList.size()-1)).getData(); SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(orgPathList.get(orgPathList.size() - 1)).getData();
if(sysOrganization == null){ if (sysOrganization == null) {
return rb.setMsg("当前所在的组织机构不存在"); return rb.setMsg("当前所在的组织机构不存在");
} }
if(StringUtils.isBlank(sysOrganization.getManagerSid())){ if (StringUtils.isBlank(sysOrganization.getManagerSid())) {
return rb.setMsg("当前所在的组织机构未设置主管人员"); // return rb.setMsg("当前所在的组织机构未设置主管人员");
sysOrganization.setManagerSid(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId());
} }
String nextNodeUserSids_ = sysOrganization.getManagerSid(); String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_); bv.setNextNodeUserSids(nextNodeUserSids_);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
UpdateFlowFieldVo ufVo = voResultBean.getData(); UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo)); updateFlowFiled(BeanUtil.beanToMap(ufVo));
//极光推送 try {
finCostapply = fetchBySid(businessSid); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); .setNameFormat("demo-pool-%d").build();
MessageFlowVo messageFlowVo = new MessageFlowVo(); ExecutorService pool = new ThreadPoolExecutor(2, 100,
BeanUtil.copyProperties(ufVo, messageFlowVo); 0L, TimeUnit.MILLISECONDS,
messageFlowableQuery.setUfVo(messageFlowVo); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
messageFlowableQuery.setAppMap(appMap); FinCostapply finCostapply2 = fetchBySid(businessSid);
messageFlowableQuery.setBusinessSid(businessSid); Future future1 = pool.submit(() -> {
messageFlowableQuery.setModuleName("费用申请"); //极光推送
messageFlowableQuery.setMsgContent(finCostapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
messageFlowableQuery.setMsgTitle("费用申请"); MessageFlowVo messageFlowVo = new MessageFlowVo();
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("费用申请");
messageFlowableQuery.setMsgContent(finCostapply2.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("费用申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
return voResultBean; return voResultBean;
} }
if (r == 2) { if (r == 2) {
@ -433,27 +452,39 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
vaributes.put("app", appMap); vaributes.put("app", appMap);
bv.setFormVariables(vaributes); bv.setFormVariables(vaributes);
bv.setOrgSidPath(finCostapply.getOrgSidPath()); bv.setOrgSidPath(finCostapply.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
if (!"Event_end".equals(resultBean.getData().getTaskDefKey())){ if (!"Event_end".equals(resultBean.getData().getTaskDefKey())) {
//极光推送 //极光推送
UpdateFlowFieldVo ufVo = resultBean.getData(); UpdateFlowFieldVo ufVo = resultBean.getData();
finCostapply = fetchBySid(bv.getBusinessSid()); try {
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
MessageFlowVo messageFlowVo = new MessageFlowVo(); .setNameFormat("demo-pool-%d").build();
BeanUtil.copyProperties(ufVo, messageFlowVo); ExecutorService pool = new ThreadPoolExecutor(2, 100,
ufVo.setProcDefId(finCostapply.getProcDefId()); 0L, TimeUnit.MILLISECONDS,
ufVo.setProcInsId(finCostapply.getProcInstId()); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
messageFlowableQuery.setUfVo(messageFlowVo); FinCostapply finCostapply2 = fetchBySid(bv.getBusinessSid());
messageFlowableQuery.setAppMap(appMap); Future future1 = pool.submit(() -> {
messageFlowableQuery.setBusinessSid(bv.getBusinessSid()); //极光推送
messageFlowableQuery.setModuleName("费用申请"); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
messageFlowableQuery.setMsgContent(finCostapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); MessageFlowVo messageFlowVo = new MessageFlowVo();
messageFlowableQuery.setMsgTitle("费用申请"); BeanUtil.copyProperties(ufVo, messageFlowVo);
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); ufVo.setProcDefId(finCostapply2.getProcDefId());
ufVo.setProcInsId(finCostapply2.getProcInstId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(bv.getBusinessSid());
messageFlowableQuery.setModuleName("费用申请");
messageFlowableQuery.setMsgContent(finCostapply2.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("费用申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
} }
return rb.success().setData(resultBean.getData()); return rb.success().setData(resultBean.getData());
} else { } else {
@ -533,28 +564,39 @@ public class FinCostapplyService extends MybatisBaseService<FinCostapplyMapper,
updateFlowFiled(map); updateFlowFiled(map);
//极光推送 //极光推送
UpdateFlowFieldVo ufVo = resultBean.getData(); UpdateFlowFieldVo ufVo = resultBean.getData();
finCostapply = fetchBySid(businessSid); try {
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
MessageFlowVo messageFlowVo = new MessageFlowVo(); .setNameFormat("demo-pool-%d").build();
BeanUtil.copyProperties(ufVo, messageFlowVo); ExecutorService pool = new ThreadPoolExecutor(2, 100,
String procId = finCostapply.getProcInstId(); 0L, TimeUnit.MILLISECONDS,
ufVo.setProcInsId(procId); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
ufVo.setProcDefId(finCostapply.getProcDefId()); FinCostapply finCostapply2 = fetchBySid(businessSid);
messageFlowableQuery.setUfVo(messageFlowVo); Future future1 = pool.submit(() -> {
messageFlowableQuery.setAppMap(appMap); //极光推送
messageFlowableQuery.setBusinessSid(businessSid); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
messageFlowableQuery.setModuleName("费用申请"); MessageFlowVo messageFlowVo = new MessageFlowVo();
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId); BeanUtil.copyProperties(ufVo, messageFlowVo);
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); String procId = finCostapply2.getProcInstId();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); ufVo.setProcInsId(procId);
if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(finCostapply.getCreateBySid())) { ufVo.setProcDefId(finCostapply2.getProcDefId());
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); messageFlowableQuery.setUfVo(messageFlowVo);
} else { messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setMsgContent(finCostapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("费用申请");
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(finCostapply2.getCreateBySid())) {
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
} else {
messageFlowableQuery.setMsgContent(finCostapply2.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
}
messageFlowableQuery.setMsgTitle("费用申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
} }
messageFlowableQuery.setMsgTitle("费用申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
return rb.success(); return rb.success();
} }
} }

156
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java

@ -30,11 +30,13 @@ import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign; import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo; import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.common.enums.BillTypeEnum; import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule; import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo; import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.busmaindeposit.BusMainDeposit;
import com.yxt.anrui.fin.api.finpaymentapply.*; import com.yxt.anrui.fin.api.finpaymentapply.*;
import com.yxt.anrui.fin.api.finpaymentapply.flow.FinPayGetNodeQuery; import com.yxt.anrui.fin.api.finpaymentapply.flow.FinPayGetNodeQuery;
import com.yxt.anrui.fin.api.finpaymentapply.flow.FinPayGetNodeVo; import com.yxt.anrui.fin.api.finpaymentapply.flow.FinPayGetNodeVo;
@ -52,6 +54,7 @@ import com.yxt.anrui.fin.biz.finpaymentapplyvehicle.FinPaymentapplyVehicleServic
import com.yxt.anrui.fin.biz.finpaymentrecord.FinPaymentrecordService; import com.yxt.anrui.fin.biz.finpaymentrecord.FinPaymentrecordService;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -76,11 +79,13 @@ import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo; import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery; import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -106,6 +111,8 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private FlowTaskFeign flowTaskFeign; private FlowTaskFeign flowTaskFeign;
@Autowired @Autowired
private SysOrganizationFeign sysOrganizationFeign; private SysOrganizationFeign sysOrganizationFeign;
@ -154,7 +161,7 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
if (StringUtils.isNotBlank(pageQuery.getUserSid())) { if (StringUtils.isNotBlank(pageQuery.getUserSid())) {
qw.eq("fp.createBySid", pageQuery.getUserSid()); qw.eq("fp.createBySid", pageQuery.getUserSid());
} }
if(StringUtils.isNotBlank(pageQuery.getOrgPath())){ if (StringUtils.isNotBlank(pageQuery.getOrgPath())) {
String orgSid = sysStaffOrgFeign.getOrgSidByPath(pageQuery.getOrgPath()).getData(); String orgSid = sysStaffOrgFeign.getOrgSidByPath(pageQuery.getOrgPath()).getData();
qw.eq("fp.createBySid", orgSid); qw.eq("fp.createBySid", orgSid);
} }
@ -174,9 +181,9 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
if (StringUtils.isBlank(dtoSid)) { if (StringUtils.isBlank(dtoSid)) {
//======================================= //=======================================
String orgSidPath = ""; String orgSidPath = "";
if(StringUtils.isNotBlank(dto.getOrgPath())){ if (StringUtils.isNotBlank(dto.getOrgPath())) {
orgSidPath = dto.getOrgPath(); orgSidPath = dto.getOrgPath();
}else{ } else {
orgSidPath = dto.getOrgSidPath(); orgSidPath = dto.getOrgSidPath();
} }
if (StringUtils.isBlank(orgSidPath)) { if (StringUtils.isBlank(orgSidPath)) {
@ -288,10 +295,10 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
if (!userVoResultBean.getSuccess()) { if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg()); return rb.setMsg(userVoResultBean.getMsg());
} }
if(StringUtils.isNotBlank(dto.getOrgPath())){ if (StringUtils.isNotBlank(dto.getOrgPath())) {
orgSidPath = dto.getOrgSidPath(); orgSidPath = dto.getOrgSidPath();
}else{ } else {
//根据staffSid获取用户的组织全路径 //根据staffSid获取用户的组织全路径
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
if (!staffOrgResultBean.getSuccess()) { if (!staffOrgResultBean.getSuccess()) {
@ -353,34 +360,46 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
//符合条件的用户的sid,拼接的字符串 //符合条件的用户的sid,拼接的字符串
String nextNodeUserSids_ = nextNodeUserSids.toString();*/ String nextNodeUserSids_ = nextNodeUserSids.toString();*/
List<String> orgPathList = Arrays.asList(orgSidPath.split("/")); List<String> orgPathList = Arrays.asList(orgSidPath.split("/"));
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(orgPathList.get(orgPathList.size()-1)).getData(); SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(orgPathList.get(orgPathList.size() - 1)).getData();
if(sysOrganization == null){ if (sysOrganization == null) {
return rb.setMsg("当前所在的组织机构不存在"); return rb.setMsg("当前所在的组织机构不存在");
} }
if(StringUtils.isBlank(sysOrganization.getManagerSid())){ if (StringUtils.isBlank(sysOrganization.getManagerSid())) {
return rb.setMsg("当前所在的组织机构未设置主管人员"); //return rb.setMsg("当前所在的组织机构未设置主管人员");
sysOrganization.setManagerSid(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId());
} }
String nextNodeUserSids_ = sysOrganization.getManagerSid(); String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_); bv.setNextNodeUserSids(nextNodeUserSids_);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
UpdateFlowFieldVo ufVo = voResultBean.getData(); UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo)); updateFlowFiled(BeanUtil.beanToMap(ufVo));
//极光推送 try {
finPaymentapply = fetchBySid(businessSid); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); .setNameFormat("demo-pool-%d").build();
MessageFlowVo messageFlowVo = new MessageFlowVo(); ExecutorService pool = new ThreadPoolExecutor(2, 100,
BeanUtil.copyProperties(ufVo, messageFlowVo); 0L, TimeUnit.MILLISECONDS,
messageFlowableQuery.setUfVo(messageFlowVo); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
messageFlowableQuery.setAppMap(appMap); FinPaymentapply finPaymentapply2 = fetchBySid(businessSid);
messageFlowableQuery.setBusinessSid(businessSid); Future future1 = pool.submit(() -> {
messageFlowableQuery.setModuleName("付款申请"); //极光推送
messageFlowableQuery.setMsgContent(finPaymentapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
messageFlowableQuery.setMsgTitle("付款申请"); MessageFlowVo messageFlowVo = new MessageFlowVo();
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("付款申请");
messageFlowableQuery.setMsgContent(finPaymentapply2.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("付款申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
return voResultBean; return voResultBean;
} }
if (r == 2) { if (r == 2) {
@ -451,7 +470,7 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
vaributes.put("app", appMap); vaributes.put("app", appMap);
bv.setFormVariables(vaributes); bv.setFormVariables(vaributes);
bv.setOrgSidPath(finPaymentapply.getOrgSidPath()); bv.setOrgSidPath(finPaymentapply.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
@ -536,19 +555,31 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
} else { } else {
//极光推送 //极光推送
UpdateFlowFieldVo ufVo = resultBean.getData(); UpdateFlowFieldVo ufVo = resultBean.getData();
finPaymentapply = fetchBySid(bv.getBusinessSid()); try {
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
MessageFlowVo messageFlowVo = new MessageFlowVo(); .setNameFormat("demo-pool-%d").build();
BeanUtil.copyProperties(ufVo, messageFlowVo); ExecutorService pool = new ThreadPoolExecutor(2, 100,
ufVo.setProcDefId(finPaymentapply.getProcDefId()); 0L, TimeUnit.MILLISECONDS,
ufVo.setProcInsId(finPaymentapply.getProcInstId()); new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
messageFlowableQuery.setUfVo(messageFlowVo); FinPaymentapply finPaymentapply2 = fetchBySid(bv.getBusinessSid());
messageFlowableQuery.setAppMap(appMap); Future future1 = pool.submit(() -> {
messageFlowableQuery.setBusinessSid(bv.getBusinessSid()); //极光推送
messageFlowableQuery.setModuleName("付款申请"); MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
messageFlowableQuery.setMsgContent(finPaymentapply.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); MessageFlowVo messageFlowVo = new MessageFlowVo();
messageFlowableQuery.setMsgTitle("付款申请"); BeanUtil.copyProperties(ufVo, messageFlowVo);
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); ufVo.setProcDefId(finPaymentapply2.getProcDefId());
ufVo.setProcInsId(finPaymentapply2.getProcInstId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(bv.getBusinessSid());
messageFlowableQuery.setModuleName("付款申请");
messageFlowableQuery.setMsgContent(finPaymentapply2.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("付款申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
} }
return rb.success().setData(resultBean.getData()); return rb.success().setData(resultBean.getData());
} else { } else {
@ -628,28 +659,39 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
updateFlowFiled(map); updateFlowFiled(map);
//极光推送 //极光推送
UpdateFlowFieldVo ufVo = resultBean.getData(); 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<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
List<String> 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("付款申请"); try {
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
FinPaymentapply finPaymentapply2 = fetchBySid(businessSid);
Future future1 = pool.submit(() -> {
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
String procId = finPaymentapply2.getProcInstId();
ufVo.setProcInsId(procId);
ufVo.setProcDefId(finPaymentapply2.getProcDefId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("付款申请");
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(finPaymentapply2.getCreateBySid())) {
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
} else {
messageFlowableQuery.setMsgContent(finPaymentapply2.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
}
messageFlowableQuery.setMsgTitle("付款申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
return rb.success(); return rb.success();
} }
} }

9
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinotherpolicyrecordapply/LoanFinOtherPolicyRecordApplyService.java

@ -8,6 +8,7 @@ import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery; import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -69,6 +70,8 @@ public class LoanFinOtherPolicyRecordApplyService extends MybatisBaseService<Loa
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private MessageFeign messageFeign; private MessageFeign messageFeign;
@Autowired @Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
@ -298,7 +301,7 @@ public class LoanFinOtherPolicyRecordApplyService extends MybatisBaseService<Loa
if (r == 1) { if (r == 1) {
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.LOANOTHERPOLICYRECORDAPPLY.getProDefId()); bv.setModelId(ProcDefEnum.LOANOTHERPOLICYRECORDAPPLY.getProDefId());
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -368,7 +371,7 @@ public class LoanFinOtherPolicyRecordApplyService extends MybatisBaseService<Loa
LoanFinOtherPolicyRecordApply recordApply = this.fetchBySid(businessSid); LoanFinOtherPolicyRecordApply recordApply = this.fetchBySid(businessSid);
if (bv.getTaskId().equals(recordApply.getTaskId())) { if (bv.getTaskId().equals(recordApply.getTaskId())) {
bv.setOrgSidPath(recordApply.getOrgSidPath()); bv.setOrgSidPath(recordApply.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
@ -437,7 +440,7 @@ public class LoanFinOtherPolicyRecordApplyService extends MybatisBaseService<Loa
variables = flowableFeign.getMap(flowProcessMapQuery).getData(); variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//======================================= //=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean1 = flowFeign.handleProsess(bv);
if (!resultBean1.getSuccess()) { if (!resultBean1.getSuccess()) {
return rb.setMsg(resultBean1.getMsg()); return rb.setMsg(resultBean1.getMsg());
} }

9
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicyrecordapply/LoanFinPolicyRecordApplyService.java

@ -8,6 +8,7 @@ import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery; import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
@ -64,6 +65,8 @@ public class LoanFinPolicyRecordApplyService extends MybatisBaseService<LoanFinP
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
@Autowired @Autowired
private FlowFeign flowFeign;
@Autowired
private MessageFeign messageFeign; private MessageFeign messageFeign;
@Autowired @Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
@ -329,7 +332,7 @@ public class LoanFinPolicyRecordApplyService extends MybatisBaseService<LoanFinP
if (r == 1) { if (r == 1) {
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.LOANFINPOLICYRECORDAPPLY.getProDefId()); bv.setModelId(ProcDefEnum.LOANFINPOLICYRECORDAPPLY.getProDefId());
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg()); return rb.setMsg(voResultBean.getMsg());
} }
@ -405,7 +408,7 @@ public class LoanFinPolicyRecordApplyService extends MybatisBaseService<LoanFinP
LoanFinPolicyRecordApply recordApply = this.fetchBySid(businessSid); LoanFinPolicyRecordApply recordApply = this.fetchBySid(businessSid);
if (bv.getTaskId().equals(recordApply.getTaskId())) { if (bv.getTaskId().equals(recordApply.getTaskId())) {
bv.setOrgSidPath(recordApply.getOrgSidPath()); bv.setOrgSidPath(recordApply.getOrgSidPath());
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
@ -647,7 +650,7 @@ public class LoanFinPolicyRecordApplyService extends MybatisBaseService<LoanFinP
variables = flowableFeign.getMap(flowProcessMapQuery).getData(); variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//======================================= //=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean1 = flowFeign.handleProsess(bv);
if (!resultBean1.getSuccess()) { if (!resultBean1.getSuccess()) {
return rb.setMsg(resultBean1.getMsg()); return rb.setMsg(resultBean1.getMsg());
} }

Loading…
Cancel
Save