|
@ -6,6 +6,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.basemanufacturer.BaseManufacturer; |
|
|
import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturer; |
|
|
import com.yxt.anrui.base.api.basevehicle.BaseVehicle; |
|
|
import com.yxt.anrui.base.api.basevehicle.BaseVehicle; |
|
|
import com.yxt.anrui.base.api.basevehicle.BaseVehicleUpdateQuery; |
|
|
import com.yxt.anrui.base.api.basevehicle.BaseVehicleUpdateQuery; |
|
@ -22,6 +23,7 @@ import com.yxt.anrui.base.api.basevehicleactualsales.flow.ActualGetNodeQuery; |
|
|
import com.yxt.anrui.base.api.basevehicleactualsales.flow.ActualGetNodeVo; |
|
|
import com.yxt.anrui.base.api.basevehicleactualsales.flow.ActualGetNodeVo; |
|
|
import com.yxt.anrui.base.api.basevehicleactualsales.flow.BaseActualSalesTaskQuery; |
|
|
import com.yxt.anrui.base.api.basevehicleactualsales.flow.BaseActualSalesTaskQuery; |
|
|
import com.yxt.anrui.base.api.basevehicleactualsales.flow.SubmitActualSalesDto; |
|
|
import com.yxt.anrui.base.api.basevehicleactualsales.flow.SubmitActualSalesDto; |
|
|
|
|
|
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApply; |
|
|
import com.yxt.anrui.base.biz.basemanufacturer.BaseManufacturerService; |
|
|
import com.yxt.anrui.base.biz.basemanufacturer.BaseManufacturerService; |
|
|
import com.yxt.anrui.base.biz.basevehicle.BaseVehicleService; |
|
|
import com.yxt.anrui.base.biz.basevehicle.BaseVehicleService; |
|
|
import com.yxt.anrui.base.biz.basevehicleactualdetails.BaseVehicleActualDetailsService; |
|
|
import com.yxt.anrui.base.biz.basevehicleactualdetails.BaseVehicleActualDetailsService; |
|
@ -59,6 +61,7 @@ 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.BeanUtils; |
|
|
import org.springframework.beans.BeanUtils; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.stereotype.Service; |
|
|
import org.springframework.stereotype.Service; |
|
@ -66,6 +69,7 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
|
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; |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
@ -473,7 +477,7 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl |
|
|
bv.setFormVariables(variables); |
|
|
bv.setFormVariables(variables); |
|
|
bv.setModelId(ProcDefEnum.BASEVEHICLEACTUALSALES.getProDefId()); |
|
|
bv.setModelId(ProcDefEnum.BASEVEHICLEACTUALSALES.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()); |
|
|
} |
|
|
} |
|
@ -489,8 +493,17 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl |
|
|
baseVehicle.setSettlementStatusValue(VehicleState.BuyoutEnum.PRE_BUYOUT.getRemarks()); |
|
|
baseVehicle.setSettlementStatusValue(VehicleState.BuyoutEnum.PRE_BUYOUT.getRemarks()); |
|
|
baseVehicleService.updateVeh(baseVehicle); |
|
|
baseVehicleService.updateVeh(baseVehicle); |
|
|
} |
|
|
} |
|
|
//极光推送
|
|
|
|
|
|
baseVehicleActualSales = fetchBySid(businessSid); |
|
|
baseVehicleActualSales = fetchBySid(businessSid); |
|
|
|
|
|
//==================================添加线程
|
|
|
|
|
|
try { |
|
|
|
|
|
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()); |
|
|
|
|
|
BaseVehicleActualSales finalBaseVehicleActualSales = baseVehicleActualSales; |
|
|
|
|
|
Future future1 = pool.submit(() -> { |
|
|
|
|
|
//极光推送
|
|
|
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|
|
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|
|
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|
|
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|
|
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|
|
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|
@ -498,9 +511,14 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl |
|
|
messageFlowableQuery.setAppMap(appMap); |
|
|
messageFlowableQuery.setAppMap(appMap); |
|
|
messageFlowableQuery.setBusinessSid(businessSid); |
|
|
messageFlowableQuery.setBusinessSid(businessSid); |
|
|
messageFlowableQuery.setModuleName("未售买断申请"); |
|
|
messageFlowableQuery.setModuleName("未售买断申请"); |
|
|
messageFlowableQuery.setMsgContent(baseVehicleActualSales.getApplicationName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|
|
messageFlowableQuery.setMsgContent(finalBaseVehicleActualSales.getApplicationName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|
|
messageFlowableQuery.setMsgTitle("未售买断"); |
|
|
messageFlowableQuery.setMsgTitle("未售买断"); |
|
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
|
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
|
|
|
|
|
}); |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
e.printStackTrace(); |
|
|
|
|
|
} |
|
|
|
|
|
//==================================添加线程
|
|
|
return voResultBean; |
|
|
return voResultBean; |
|
|
} |
|
|
} |
|
|
if (r == 2) { |
|
|
if (r == 2) { |
|
@ -569,27 +587,39 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl |
|
|
variables.put("app", appMap); |
|
|
variables.put("app", appMap); |
|
|
bv.setFormVariables(variables); |
|
|
bv.setFormVariables(variables); |
|
|
bv.setOrgSidPath(baseVehicleActualSales.getOrgSidPath()); |
|
|
bv.setOrgSidPath(baseVehicleActualSales.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()); |
|
|
} |
|
|
} |
|
|
UpdateFlowFieldVo ufVo = resultBean.getData(); |
|
|
UpdateFlowFieldVo ufVo = resultBean.getData(); |
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
if (!"Event_end".equals(ufVo.getTaskDefKey())) { |
|
|
if (!"Event_end".equals(ufVo.getTaskDefKey())) { |
|
|
//极光推送
|
|
|
|
|
|
baseVehicleActualSales = fetchBySid(bv.getBusinessSid()); |
|
|
baseVehicleActualSales = fetchBySid(bv.getBusinessSid()); |
|
|
|
|
|
try { |
|
|
|
|
|
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()); |
|
|
|
|
|
BaseVehicleActualSales finalBaseVehicleActualSales = baseVehicleActualSales; |
|
|
|
|
|
Future future1 = pool.submit(() -> { |
|
|
|
|
|
//极光推送
|
|
|
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|
|
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|
|
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|
|
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|
|
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|
|
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|
|
messageFlowVo.setProcDefId(baseVehicleActualSales.getProcDefId()); |
|
|
messageFlowVo.setProcDefId(finalBaseVehicleActualSales.getProcDefId()); |
|
|
messageFlowVo.setProcInsId(baseVehicleActualSales.getProcInstId()); |
|
|
messageFlowVo.setProcInsId(finalBaseVehicleActualSales.getProcInstId()); |
|
|
messageFlowableQuery.setUfVo(messageFlowVo); |
|
|
messageFlowableQuery.setUfVo(messageFlowVo); |
|
|
messageFlowableQuery.setAppMap(appMap); |
|
|
messageFlowableQuery.setAppMap(appMap); |
|
|
messageFlowableQuery.setBusinessSid(bv.getBusinessSid()); |
|
|
messageFlowableQuery.setBusinessSid(bv.getBusinessSid()); |
|
|
messageFlowableQuery.setModuleName("未售买断申请"); |
|
|
messageFlowableQuery.setModuleName("未售买断申请"); |
|
|
messageFlowableQuery.setMsgContent(baseVehicleActualSales.getApplicationName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|
|
messageFlowableQuery.setMsgContent(finalBaseVehicleActualSales.getApplicationName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|
|
messageFlowableQuery.setMsgTitle("未售买断"); |
|
|
messageFlowableQuery.setMsgTitle("未售买断"); |
|
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
|
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
|
|
|
|
|
}); |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
e.printStackTrace(); |
|
|
|
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
if ("1".equals(baseVehicleActualSales.getIsPay())) { |
|
|
if ("1".equals(baseVehicleActualSales.getIsPay())) { |
|
|
List<BaseVehicleActualPayVo> voPayList = baseVehicleActualPayService.detailsList(baseVehicleActualSales.getSid()); |
|
|
List<BaseVehicleActualPayVo> voPayList = baseVehicleActualPayService.detailsList(baseVehicleActualSales.getSid()); |
|
|