Commit 950db84a authored by 鲁鑫's avatar 鲁鑫

EP销售订单审批流程调整

parent 89ea46fa
package com.huigou.topsun.ep.order.application.impl; package com.huigou.topsun.ep.order.application.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.huigou.cache.SystemCache;
import com.huigou.context.Operator; import com.huigou.context.Operator;
import com.huigou.context.OrgUnit; import com.huigou.context.OrgUnit;
import com.huigou.context.ThreadLocalUtil; import com.huigou.context.ThreadLocalUtil;
...@@ -22,14 +20,8 @@ import com.huigou.topsun.ep.order.domain.EpSaleOrder; ...@@ -22,14 +20,8 @@ import com.huigou.topsun.ep.order.domain.EpSaleOrder;
import com.huigou.topsun.ep.order.domain.query.EpSaleOrderQueryRequest; import com.huigou.topsun.ep.order.domain.query.EpSaleOrderQueryRequest;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication; import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.common.domain.EpResult; import com.huigou.topsun.sap.common.domain.EpResult;
import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval;
import com.huigou.uasp.bmp.common.BizBillStatus; import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.operator.OperatorApplication; import com.huigou.uasp.bmp.operator.OperatorApplication;
import com.huigou.uasp.bmp.opm.application.OrgApplication;
import com.huigou.uasp.bmp.opm.domain.model.org.Org;
import com.huigou.uasp.bmp.opm.repository.org.PersonRepository;
import com.huigou.uasp.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.uasp.bpm.ProcessAction; import com.huigou.uasp.bpm.ProcessAction;
import com.huigou.uasp.bpm.ProcessStartModel; import com.huigou.uasp.bpm.ProcessStartModel;
...@@ -131,7 +123,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde ...@@ -131,7 +123,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde
@Override @Override
protected void onEnd(DelegateExecution delegateExecution) { protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution); //super.onEnd(delegateExecution);
String bizId = delegateExecution.getProcessBusinessKey(); String bizId = delegateExecution.getProcessBusinessKey();
BizBillStatus status = approvePassed() ? BizBillStatus.COMPLETED : BizBillStatus.ABORTED; BizBillStatus status = approvePassed() ? BizBillStatus.COMPLETED : BizBillStatus.ABORTED;
EpSaleOrder epSaleOrder = epSaleOrderRepository.findOne(bizId); EpSaleOrder epSaleOrder = epSaleOrderRepository.findOne(bizId);
...@@ -148,7 +140,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde ...@@ -148,7 +140,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde
epSaleOrder.setStatusId(BizBillStatus.ABORTED.getId()); epSaleOrder.setStatusId(BizBillStatus.ABORTED.getId());
epSaleOrderRepository.save(epSaleOrder); epSaleOrderRepository.save(epSaleOrder);
this.feedBackSaleOrder(epSaleOrder,"0"); this.feedBackSaleOrder(epSaleOrder,"5");
} }
/** /**
...@@ -163,6 +155,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde ...@@ -163,6 +155,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde
EpSaleOrder epSaleOrder = epSaleOrderRepository.findOne(bizId); EpSaleOrder epSaleOrder = epSaleOrderRepository.findOne(bizId);
epSaleOrder.setStatusId(BizBillStatus.APPLYING.getId()); epSaleOrder.setStatusId(BizBillStatus.APPLYING.getId());
epSaleOrderRepository.save(epSaleOrder); epSaleOrderRepository.save(epSaleOrder);
this.feedBackSaleOrder(epSaleOrder,"0");
//回退后终止流程 //回退后终止流程
// DelegateExecution execution = delegateTask.getExecution(); // DelegateExecution execution = delegateTask.getExecution();
// this.onAbortProcessInstance(execution); // this.onAbortProcessInstance(execution);
...@@ -185,6 +178,11 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde ...@@ -185,6 +178,11 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde
private String getApprovalSubjectName(String bizId) { private String getApprovalSubjectName(String bizId) {
EpSaleOrder epSaleOrder = this.epSaleOrderRepository.findOne(bizId); EpSaleOrder epSaleOrder = this.epSaleOrderRepository.findOne(bizId);
String vbeln = this.getBizAndApprovalData().getString("vbeln"); String vbeln = this.getBizAndApprovalData().getString("vbeln");
if (StringUtil.isBlank(vbeln)){
List<EpSaleOrderItem> itemList = epSaleOrderItemApplication.findByEpSaleOrderId(bizId);
Set<String> vbelns = itemList.stream().map(EpSaleOrderItem::getVbeln).collect(Collectors.toSet());
vbeln = String.join(",", vbelns);
}
//查询 单据日期 //查询 单据日期
String fillinDateStr = DateUtil.getDateFormat("yyyy-MM-dd HH:mm:ss", epSaleOrder.getFillinDate()); String fillinDateStr = DateUtil.getDateFormat("yyyy-MM-dd HH:mm:ss", epSaleOrder.getFillinDate());
//设置标题 //设置标题
...@@ -244,7 +242,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde ...@@ -244,7 +242,7 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde
Map<String, Object> formData = BeanUtil.beanToMap(epSaleOrder); Map<String, Object> formData = BeanUtil.beanToMap(epSaleOrder);
List<EpSaleOrderItemVo> epSaleOrderItemVos = epSaleOrderVo.getEpSaleOrderItemVos(); List<EpSaleOrderItemVo> epSaleOrderItemVos = epSaleOrderVo.getEpSaleOrderItemVos();
List<String> vbelns = epSaleOrderItemVos.stream().map(EpSaleOrderItemVo::getVbeln).collect(Collectors.toList()); Set<String> vbelns = epSaleOrderItemVos.stream().map(EpSaleOrderItemVo::getVbeln).collect(Collectors.toSet());
String vbeln = String.join(",", vbelns); String vbeln = String.join(",", vbelns);
formData.put("vbeln",vbeln); formData.put("vbeln",vbeln);
String bizId = this.startProcessInstance(EpSaleOrderApplication.PROCESS_DEFINITION_KEY, formData, localSdo); String bizId = this.startProcessInstance(EpSaleOrderApplication.PROCESS_DEFINITION_KEY, formData, localSdo);
......
...@@ -21,6 +21,7 @@ import com.huigou.topsun.ep.order.domain.EpSaleOrderItem; ...@@ -21,6 +21,7 @@ import com.huigou.topsun.ep.order.domain.EpSaleOrderItem;
import com.huigou.topsun.ep.order.domain.query.EpSaleOrderCancelQueryRequest; import com.huigou.topsun.ep.order.domain.query.EpSaleOrderCancelQueryRequest;
import com.huigou.topsun.ep.order.domain.vo.EpSaleOrderCancelItemVo; import com.huigou.topsun.ep.order.domain.vo.EpSaleOrderCancelItemVo;
import com.huigou.topsun.ep.order.domain.vo.EpSaleOrderCancelVo; import com.huigou.topsun.ep.order.domain.vo.EpSaleOrderCancelVo;
import com.huigou.topsun.ep.order.domain.vo.EpSaleOrderItemVo;
import com.huigou.topsun.ep.order.repository.EpSaleOrderCancelRepository; import com.huigou.topsun.ep.order.repository.EpSaleOrderCancelRepository;
import com.huigou.topsun.sap.common.HttpClient; import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication; import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
...@@ -130,7 +131,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa ...@@ -130,7 +131,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa
@Override @Override
protected void onEnd(DelegateExecution delegateExecution) { protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution); //super.onEnd(delegateExecution);
String bizId = delegateExecution.getProcessBusinessKey(); String bizId = delegateExecution.getProcessBusinessKey();
BizBillStatus status = approvePassed() ? BizBillStatus.COMPLETED : BizBillStatus.ABORTED; BizBillStatus status = approvePassed() ? BizBillStatus.COMPLETED : BizBillStatus.ABORTED;
EpSaleOrderCancel epSaleOrderCancel = epSaleOrderCancelRepository.findOne(bizId); EpSaleOrderCancel epSaleOrderCancel = epSaleOrderCancelRepository.findOne(bizId);
...@@ -147,7 +148,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa ...@@ -147,7 +148,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa
epSaleOrderCancel.setStatusId(BizBillStatus.ABORTED.getId()); epSaleOrderCancel.setStatusId(BizBillStatus.ABORTED.getId());
epSaleOrderCancelRepository.save(epSaleOrderCancel); epSaleOrderCancelRepository.save(epSaleOrderCancel);
this.feedBackSaleOrderCancel(epSaleOrderCancel,"0"); this.feedBackSaleOrderCancel(epSaleOrderCancel,"5");
} }
/** /**
...@@ -162,6 +163,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa ...@@ -162,6 +163,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa
EpSaleOrderCancel epSaleOrderCancel = epSaleOrderCancelRepository.findOne(bizId); EpSaleOrderCancel epSaleOrderCancel = epSaleOrderCancelRepository.findOne(bizId);
epSaleOrderCancel.setStatusId(BizBillStatus.APPLYING.getId()); epSaleOrderCancel.setStatusId(BizBillStatus.APPLYING.getId());
epSaleOrderCancelRepository.save(epSaleOrderCancel); epSaleOrderCancelRepository.save(epSaleOrderCancel);
this.feedBackSaleOrderCancel(epSaleOrderCancel,"0");
//回退后终止流程 //回退后终止流程
// DelegateExecution execution = delegateTask.getExecution(); // DelegateExecution execution = delegateTask.getExecution();
// this.onAbortProcessInstance(execution); // this.onAbortProcessInstance(execution);
...@@ -184,6 +186,11 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa ...@@ -184,6 +186,11 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa
private String getApprovalSubjectName(String bizId) { private String getApprovalSubjectName(String bizId) {
EpSaleOrderCancel saleOrderCancel = this.epSaleOrderCancelRepository.findOne(bizId); EpSaleOrderCancel saleOrderCancel = this.epSaleOrderCancelRepository.findOne(bizId);
String vbeln = this.getBizAndApprovalData().getString("vbeln"); String vbeln = this.getBizAndApprovalData().getString("vbeln");
if (StringUtil.isBlank(vbeln)){
List<EpSaleOrderCancelItem> itemList = epSaleOrderCancelItemApplication.findByEpSaleOrderCancelId(bizId);
Set<String> vbelns = itemList.stream().map(EpSaleOrderCancelItem::getVbeln).collect(Collectors.toSet());
vbeln = String.join(",", vbelns);
}
//查询 单据日期 //查询 单据日期
String fillinDateStr = DateUtil.getDateFormat("yyyy-MM-dd HH:mm:ss", saleOrderCancel.getFillinDate()); String fillinDateStr = DateUtil.getDateFormat("yyyy-MM-dd HH:mm:ss", saleOrderCancel.getFillinDate());
//设置标题 //设置标题
...@@ -242,7 +249,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa ...@@ -242,7 +249,7 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa
localSdo.setOperator(operator); localSdo.setOperator(operator);
Map<String, Object> formData = BeanUtil.beanToMap(epSaleOrderCancel); Map<String, Object> formData = BeanUtil.beanToMap(epSaleOrderCancel);
List<EpSaleOrderCancelItemVo> epSaleOrderCancelItemVos = epSaleOrderCancelVo.getEpSaleOrderCancelItemVos(); List<EpSaleOrderCancelItemVo> epSaleOrderCancelItemVos = epSaleOrderCancelVo.getEpSaleOrderCancelItemVos();
List<String> vbelns = epSaleOrderCancelItemVos.stream().map(EpSaleOrderCancelItemVo::getVbeln).collect(Collectors.toList()); Set<String> vbelns = epSaleOrderCancelItemVos.stream().map(EpSaleOrderCancelItemVo::getVbeln).collect(Collectors.toSet());
String vbeln = String.join(",", vbelns); String vbeln = String.join(",", vbelns);
formData.put("vbeln",vbeln); formData.put("vbeln",vbeln);
String bizId = this.startProcessInstance(EpSaleOrderCancelApplication.PROCESS_DEFINITION_KEY, formData, localSdo); String bizId = this.startProcessInstance(EpSaleOrderCancelApplication.PROCESS_DEFINITION_KEY, formData, localSdo);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment