Browse Source

Merge remote-tracking branch 'origin/master'

master
God 2 years ago
parent
commit
334747e8e5
  1. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredService.java
  2. 201
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busmaindeposit/BusMainDepositService.java
  3. 32
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  4. 37
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyService.java

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredService.java

@ -413,7 +413,6 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(contractNo, vinSid);
AppCarListVo appCarListVo = new AppCarListVo();
appCarListVo.setVinSid(list.get(i));
// appCarListVo.setDiscount(appOrderPriceInfoVo.getSingleCarDiscountPrice());
//查询该车辆是否有挂车
ResultBean<TraliveredVo> trailerList = baseTrailerFeign.trailerList(vinSid, contractNo);
if (trailerList.getData() != null && trailerList.getData().getList().isEmpty() && trailerList.getData().getVehillModelList().isEmpty()) {
@ -609,7 +608,6 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
discountLeaveNum = count - intCount - giveNum;
}
}
// int discountLeaveNum = count - intCount - giveNum;
deliveredLeavesVo.setDiscountLeaveNum(discountLeaveNum);
discountLeave.add(deliveredLeavesVo);
}

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

@ -70,6 +70,7 @@ import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmation
import com.yxt.anrui.fin.api.fincollectionconfirmation.app.FinConfirmDto;
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
import com.yxt.anrui.flowable.api.flowcomment.FlowComment;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
@ -173,6 +174,8 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
@Autowired
private FlowableFeign flowableFeign;
@Autowired
private FlowFeign flowFeign;
@Autowired
private SysFormLinkFeign sysFormLinkFeign;
@ -1209,27 +1212,44 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
return rb.setMsg("当前所在的组织机构不存在");
}
if (StringUtils.isBlank(sysOrganization.getManagerSid())) {
return rb.setMsg("当前所在的组织机构未设置主管人员");
// return rb.setMsg("当前所在的组织机构未设置主管人员");
sysOrganization.setManagerSid(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId());
}
String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_);
if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo));
//极光推送
busMainDeposit = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
ufVo.setProcInsId(busMainDeposit.getProcInsId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("简易订单-订金申请");
messageFlowableQuery.setMsgContent(busMainDeposit.getStaffName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("简易订单");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
if ("Event_end".equals(ufVo.getTaskDefKey())) {
pushFin(businessSid);
}else{
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());
BusMainDeposit finalBusMainDeposit = busMainDeposit;
Future future1 = pool.submit(() -> {
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
ufVo.setProcInsId(finalBusMainDeposit.getProcInsId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("简易订单-订金申请");
messageFlowableQuery.setMsgContent(finalBusMainDeposit.getStaffName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("简易订单");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
}
return voResultBean;
}
if (r == 2) {
@ -1370,40 +1390,45 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo));
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());
Future future1 = pool.submit(() -> {
//更新已选择的车架号的状态为审批中
List<String> list = dto.getCarList().stream().map(AppBusDepositVehicleCarListDto::getCarSid).collect(Collectors.toList()).stream().distinct().collect(Collectors.toList());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.CONDUCT_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.CONDUCT_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
});
Future future2 = pool.submit(() -> {
//极光推送
busMainDeposit.set(fetchBySid(businessSid));
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
ufVo.setProcInsId(busMainDeposit.get().getProcInsId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("简易订单-订车申请");
messageFlowableQuery.setMsgContent(busMainDeposit.get().getStaffName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("简易订单");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
if ("Event_end".equals(ufVo.getTaskDefKey())) {
pushFin(businessSid);
}else{
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());
Future future1 = pool.submit(() -> {
//更新已选择的车架号的状态为审批中
List<String> list = dto.getCarList().stream().map(AppBusDepositVehicleCarListDto::getCarSid).collect(Collectors.toList()).stream().distinct().collect(Collectors.toList());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.CONDUCT_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.CONDUCT_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
});
Future future2 = pool.submit(() -> {
//极光推送
busMainDeposit.set(fetchBySid(businessSid));
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
ufVo.setProcInsId(busMainDeposit.get().getProcInsId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("简易订单-订车申请");
messageFlowableQuery.setMsgContent(busMainDeposit.get().getStaffName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("简易订单");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
return voResultBean;
}
if (r == 2) {
@ -1465,7 +1490,7 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
messageFlowableQuery.setMsgTitle("简易订单");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
} else {
//更新修改时间
/*//更新修改时间
baseMapper.updateModify(new Date(), bv.getBusinessSid());
//如果类型为订金,推送款项确认
if (DictCommonEnum.DepositBillType.JYDD_DJ.getCode().equals(busMainDeposit.getDepositBillTypeKey())) {
@ -1541,7 +1566,8 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
}*/
pushFin(bv.getBusinessSid());
}
return rb.success().setData(resultBean.getData());
@ -1550,6 +1576,87 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
}
}
public void pushFin(String businessSid){
BusMainDeposit busMainDeposit = fetchBySid(businessSid);
//更新修改时间
baseMapper.updateModify(new Date(), businessSid);
//如果类型为订金,推送款项确认
if (DictCommonEnum.DepositBillType.JYDD_DJ.getCode().equals(busMainDeposit.getDepositBillTypeKey())) {
BusDeposit busDeposit = busDepositService.selectByBillSid(businessSid);
//推送款项确认
FinConfirmDto finConfirmDto = new FinConfirmDto();
//收款日期
finConfirmDto.setCollectionDate(DateUtil.format(busDeposit.getPaymentDate(), "yyyy-MM-dd"));
//收款银行key
finConfirmDto.setCollectionBankKey(busDeposit.getProBankKey());
//收款银行value
finConfirmDto.setCollectionBank(busDeposit.getProBankValue());
//收款银行账号key
finConfirmDto.setCollectionBankNumKey(busDeposit.getProBankAccKey());
//收款银行账号value
finConfirmDto.setCollectionBankNum(busDeposit.getProBankAccValue());
//收款方式key
finConfirmDto.setCollectionTypeKey(busDeposit.getPayTypeKey());
//收款银行value
finConfirmDto.setCollectionTypeValue(busDeposit.getPayType());
//付款方名称
finConfirmDto.setPayerName(busDeposit.getDraweeName());
//收款金额
finConfirmDto.setCollectionMoney(busDeposit.getDeposit().toString());
//分公司sid
finConfirmDto.setUseOrgSid(busDeposit.getOrgSid());
finConfirmDto.setPayerName(busDeposit.getDraweeName());
//余额
finConfirmDto.setBanlance(busDeposit.getDeposit().toString());
//创建人sid
finConfirmDto.setCreateBySid(busMainDeposit.getCreateBySid());
finConfirmDto.setPushMessgae(1);
finConfirmDto.setBusSid(busMainDeposit.getSid());
finConfirmDto.setBusNo(busMainDeposit.getBillNo());
finConfirmDto.setAuditState(1);
finConfirmDto.setCreateByName(busDeposit.getStaffName());
finConfirmDto.setRemarks(busDeposit.getRemarks());
//ToDo:赋值
//查询打款凭证
finConfirmDto.setPaymentVoucherUrl(busDeposit.getPaymentProof());
//申请部门
List<String> orgList = Arrays.asList(busMainDeposit.getOrgSidPath().split("/"));
String deptSid = orgList.get(orgList.size() - 1);
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(deptSid);
if (sysOrganizationVoResultBean.getData() != null) {
finConfirmDto.setCreateDept(sysOrganizationVoResultBean.getData().getName());
finConfirmDto.setCreateDeptSid(deptSid);
}
//申请日期
finConfirmDto.setCreateDate(DateUtil.today());
//收款账户名称
finConfirmDto.setReceivingName(busDeposit.getCollectionAccountName());
//付款账号后4位
finConfirmDto.setPayAccount(busDeposit.getPayBankAcc());
//付款银行
finConfirmDto.setPayBank(busDeposit.getDepositBank());
finConfirmDto.setPurchaseSystemName(busDeposit.getPurchaseSystemName());
finConfirmDto.setPurchaseSystemSid(busDeposit.getPurchaseSystemSid());
ResultBean<String> codeString = finCollectionConfirmationFeign.getApplyCode(busMainDeposit.getOrgSid());
finConfirmDto.setBillNo(codeString.getData());
finConfirmDto.setStaffName(busDeposit.getStaffName());
finConfirmDto.setStaffUserSid(busMainDeposit.getCreateBySid());
finConfirmDto.setStaffDeptName(finConfirmDto.getCreateDept());
finConfirmDto.setStaffDeptSid(finConfirmDto.getCreateDeptSid());
finCollectionConfirmationFeign.saveFinConfirm(finConfirmDto);
}
if (DictCommonEnum.DepositBillType.JYDD_DC.getCode().equals(busMainDeposit.getDepositBillTypeKey())) {
//更新已选择的车架号的状态为简易订单锁定
AppBusDepositVehicleDetailVo appBusDepositVehicleDetailVo = busDepositVehicleService.getReserveCarDetails(businessSid).getData();
List<String> list = appBusDepositVehicleDetailVo.getVehicleList().stream().map(AppBusDepositVehicleListVo::getCarSid).collect(Collectors.toList()).stream().distinct().collect(Collectors.toList());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
}
/**
* 判断提交的流程是否被允许
*

32
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -1207,6 +1207,15 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (confirmation == null) {
return rb.setMsg("该申请不存在");
}
if("2".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已驳回,不允许重复操作");
}
if("3".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已审核通过,不允许驳回");
}
if("4".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已撤回,不允许驳回");
}
if (confirmation.getFirst() == 1) {
return rb.setMsg("不是首次,不允许驳回");
}
@ -1610,6 +1619,15 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (confirmation == null) {
return rb.setMsg("该申请不存在");
}
if("3".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已审核通过,不允许重复操作");
}
if("2".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已驳回,不允许确认");
}
if("4".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已撤回,不允许确认");
}
finSelectedReceivablesDetailedService.updateAuditStateBySid(1, sid);
//推送收款单
ARReceivebill arReceivebill = new ARReceivebill();
@ -2570,6 +2588,8 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailed.setSubscriptionMoney(confirmation.getCollectionMoney());
finSelectedReceivablesDetailed.setUseOrgSid(confirmation.getUseOrgSid());
finSelectedReceivablesDetailed.setSubscriptionDate(DateUtil.today());
finSelectedReceivablesDetailed.setPurchaseSystemSid(confirmation.getPurchaseSystemSid());
finSelectedReceivablesDetailed.setPurchaseSystemName(confirmation.getPurchaseSystemName());
finSelectedReceivablesDetailedService.insert(finSelectedReceivablesDetailed);
if (StringUtils.isNotBlank(confirmation.getPaymentVoucherUrl())) {
//添加进附件表
@ -2722,6 +2742,15 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
if (confirmation == null) {
return rb.setMsg("该申请不存在");
}
if("3".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已审核通过,不允许撤回");
}
if("4".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已撤回,不允许重复撤回");
}
if("2".equals(confirmation.getAuditState())){
return rb.setMsg("该申请已驳回,不允许撤回");
}
if (!userSid.equals(confirmation.getCreateBySid())) {
return rb.setMsg("当前登录人员与发起人员不是同一人,不允许撤回");
}
@ -2742,6 +2771,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
});
confirmation.setAuditState(4);
confirmation.setReason("申请人已撤回");
confirmation.setConfirmDate("");
confirmation.setConfirmName("");
confirmation.setConfirmNameSid("");
baseMapper.updateById(confirmation);
return rb.success().setMsg("撤回成功");
}

37
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyService.java

@ -1460,24 +1460,27 @@ public class FinFundsCarriedForwardApplyService extends MybatisBaseService<FinFu
for (FinFundsCarriedForwardVeh v : finFundsCarriedForwardVehList) {
String busSid = v.getBusSid();
FinSelectedReceivablesDetailed finSelectedReceivablesDetailed = finSelectedReceivablesDetailedService.fetchBySid(busSid);
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
//结转金额
//查询该车的所有认款,是否都已认完
String subscribute = baseMapper.selectByBusSid(finUncollectedReceivablesDetailed.getBusVinSid());
String receiableMoney = finUncollectedReceivablesDetailedService.selectByBusVinSid(finUncollectedReceivablesDetailed.getBusVinSid());
if (new BigDecimal(subscribute).compareTo(new BigDecimal(receiableMoney)) >= 0) {
//已认款完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_RQ.getTypeKey());
baseVehicleStateDto.setBusSid(finUncollectedReceivablesDetailed.getBusVinSid());
dtoList.add(baseVehicleStateDto);
} else {
//认款未完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_WRQ.getTypeKey());
baseVehicleStateDto.setBusSid(finUncollectedReceivablesDetailed.getBusVinSid());
dtoList.add(baseVehicleStateDto);
if(StringUtils.isNotBlank(finSelectedReceivablesDetailed.getReceivablesSid())){
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
//结转金额
//查询该车的所有认款,是否都已认完
String subscribute = baseMapper.selectByBusSid(finUncollectedReceivablesDetailed.getBusVinSid());
String receiableMoney = finUncollectedReceivablesDetailedService.selectByBusVinSid(finUncollectedReceivablesDetailed.getBusVinSid());
if (new BigDecimal(subscribute).compareTo(new BigDecimal(receiableMoney)) >= 0) {
//已认款完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_RQ.getTypeKey());
baseVehicleStateDto.setBusSid(finUncollectedReceivablesDetailed.getBusVinSid());
dtoList.add(baseVehicleStateDto);
} else {
//认款未完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_WRQ.getTypeKey());
baseVehicleStateDto.setBusSid(finUncollectedReceivablesDetailed.getBusVinSid());
dtoList.add(baseVehicleStateDto);
}
}
}
}
List<FinSelectedReceivablesDetailed> finSelectedReceivablesDetailedVos = finSelectedReceivablesDetailedService.selectByOneCollSid(sid);

Loading…
Cancel
Save