|
@@ -75,6 +75,8 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
private IContractManagementInfoService contractManagementInfoService;
|
|
|
@Autowired
|
|
|
private ICommonStaffRoleService commonStaffRoleService;
|
|
|
+ @Autowired
|
|
|
+ private IBatchReviewInfoService batchReviewInfoService;
|
|
|
/**
|
|
|
* 汽运调度分页列表查询
|
|
|
*
|
|
@@ -205,6 +207,9 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
public String insertTranCar(TranProcessInfo tranProcessInfo) {
|
|
|
this.updateById(tranProcessInfo);
|
|
|
List<TranCarInfo> tranCarInfoList = tranProcessInfo.getTranCarInfoList();
|
|
|
+ BatchReviewInfo batchReviewInfo = new BatchReviewInfo();
|
|
|
+ batchReviewInfo.setId(IdGenerator.generateUUID());
|
|
|
+ String flagBatch = "0";
|
|
|
if (!CollectionUtils.isEmpty(tranCarInfoList)) {
|
|
|
for (TranCarInfo tranCarInfo : tranCarInfoList) {
|
|
|
if (tranCarInfo.getLoadNetWeight() == null) {
|
|
@@ -254,34 +259,34 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
tranCarInfo.setContractNo(tranTaskInfo.getContractNo());
|
|
|
//汽运类型
|
|
|
if (tranCarInfo.getTranType().equals(NumberConstant.CONSTANT1)) {
|
|
|
- List<TranSettlementReport> tranSettlementReportList = tranSettlementReportService.selectList(new EntityWrapper<TranSettlementReport>()
|
|
|
+ TranSettlementReport tranSettlementReport1 = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
|
|
|
.eq("car_id", tranCarInfo.getId()));
|
|
|
- if (!CollectionUtils.isEmpty(tranSettlementReportList)) {
|
|
|
- if (tranCarInfo.getUnloadNetWeight() > 0&&tranProcessInfo.getFlag()!=null) {
|
|
|
- for (TranSettlementReport tranSettlementReport : tranSettlementReportList) {
|
|
|
- tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
- tranSettlementReport.setUnloadingWeight(tranCarInfo.getUnloadNetWeight());
|
|
|
- tranSettlementReport.setUnloadingImg(tranCarInfo.getUnloadPoundImg());
|
|
|
- //损耗
|
|
|
- tranSettlementReport.setLossWeight(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight());
|
|
|
- //结算重量
|
|
|
- if ("0".equals(tranSettlementReport.getManualFlag())) {
|
|
|
- //卸车不为空时,结算重量=装卸取小
|
|
|
- tranSettlementReport.setSettlementWeight(tranCarInfo.getLoadNetWeight() > tranCarInfo.getUnloadNetWeight() ? tranCarInfo.getUnloadNetWeight() : tranCarInfo.getLoadNetWeight());
|
|
|
- }
|
|
|
- //扣款
|
|
|
- if (tranSettlementReport.getLossWeight() <= (tranCarInfo.getLoadNetWeight() / 1000)) {
|
|
|
- tranSettlementReport.setDeductionAmount("0");
|
|
|
- //应付=单价x结算重量-扣款
|
|
|
- tranSettlementReport.setAmountIngPayable(tranSettlementReport.getTransportPrice() * tranSettlementReport.getSettlementWeight());
|
|
|
- } else {
|
|
|
- tranSettlementReport.setDeductionAmount(String.format("%.2f", (Float.valueOf(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight()) - (tranCarInfo.getLoadNetWeight() / 1000)) * Float.valueOf(tranCarInfo.getTranPrice())));
|
|
|
- //应付=单价x结算重量-扣款
|
|
|
- tranSettlementReport.setAmountIngPayable(tranSettlementReport.getTransportPrice() * tranSettlementReport.getSettlementWeight() - Float.valueOf(tranSettlementReport.getDeductionAmount()));
|
|
|
- }
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- }
|
|
|
- }
|
|
|
+ if (tranSettlementReport1!=null) {
|
|
|
+// if (tranCarInfo.getLoadNetWeight() > 0&&tranProcessInfo.getFlag()!=null) {
|
|
|
+// for (TranSettlementReport tranSettlementReport : tranSettlementReportList) {
|
|
|
+ tranSettlementReport1.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
+// tranSettlementReport.setUnloadingWeight(tranCarInfo.getUnloadNetWeight());
|
|
|
+// tranSettlementReport.setUnloadingImg(tranCarInfo.getUnloadPoundImg());
|
|
|
+// //损耗
|
|
|
+// tranSettlementReport.setLossWeight(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight());
|
|
|
+// //结算重量
|
|
|
+// if ("0".equals(tranSettlementReport.getManualFlag())) {
|
|
|
+// //卸车不为空时,结算重量=装卸取小
|
|
|
+// tranSettlementReport.setSettlementWeight(tranCarInfo.getLoadNetWeight() > tranCarInfo.getUnloadNetWeight() ? tranCarInfo.getUnloadNetWeight() : tranCarInfo.getLoadNetWeight());
|
|
|
+// }
|
|
|
+// //扣款
|
|
|
+// if (tranSettlementReport.getLossWeight() <= (tranCarInfo.getLoadNetWeight() / 1000)) {
|
|
|
+// tranSettlementReport.setDeductionAmount("0");
|
|
|
+// //应付=单价x结算重量-扣款
|
|
|
+// tranSettlementReport.setAmountIngPayable(tranSettlementReport.getTransportPrice() * tranSettlementReport.getSettlementWeight());
|
|
|
+// } else {
|
|
|
+// tranSettlementReport.setDeductionAmount(String.format("%.2f", (Float.valueOf(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight()) - (tranCarInfo.getLoadNetWeight() / 1000)) * Float.valueOf(tranCarInfo.getTranPrice())));
|
|
|
+// //应付=单价x结算重量-扣款
|
|
|
+// tranSettlementReport.setAmountIngPayable(tranSettlementReport.getTransportPrice() * tranSettlementReport.getSettlementWeight() - Float.valueOf(tranSettlementReport.getDeductionAmount()));
|
|
|
+// }
|
|
|
+ tranSettlementReportService.updateById(tranSettlementReport1);
|
|
|
+// }
|
|
|
+// }
|
|
|
} else {
|
|
|
//生成汽运报表
|
|
|
TranSettlementReport tranSettlementReport = new TranSettlementReport();
|
|
@@ -319,48 +324,36 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
tranSettlementReport.setLoadingWeight(tranCarInfo.getLoadNetWeight());
|
|
|
tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
tranSettlementReport.setTransportPrice(Float.valueOf(tranCarInfo.getTranPrice()));
|
|
|
+ tranSettlementReport.setBatchId(batchReviewInfo.getId());
|
|
|
tranSettlementReportService.insert(tranSettlementReport);
|
|
|
- boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
|
|
|
- // 不是退回的单子
|
|
|
- if (isStartWorkflow) {
|
|
|
- Workflow workflow = workflowService
|
|
|
- .findLatestWorkflowByBusinessCodeByApp(tranSettlementReport.getCompId(), "TRANSPORTATION-SETTLEMENT-REPORT");
|
|
|
- // 没配置审核流程,直接结束并处理信息
|
|
|
- if (workflow == null) {
|
|
|
- throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
|
|
|
- }
|
|
|
- // 开启审核流
|
|
|
- else {
|
|
|
-
|
|
|
- // 设置状态 已提交审核
|
|
|
- tranSettlementReport.setWorkflowId(workflow.getId());
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- workflowService.startInstance(workflow.getId(), tranSettlementReport.getId());
|
|
|
- }
|
|
|
- }
|
|
|
- // 退回的单子 再启用
|
|
|
- else {
|
|
|
-
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- workflowService.activateInstance(tranSettlementReport.getWorkflowId(), tranSettlementReport.getId());
|
|
|
- }
|
|
|
+ flagBatch = "1";
|
|
|
+// boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
|
|
|
+// // 不是退回的单子
|
|
|
+// if (isStartWorkflow) {
|
|
|
+// Workflow workflow = workflowService
|
|
|
+// .findLatestWorkflowByBusinessCodeByApp(tranSettlementReport.getCompId(), "TRANSPORTATION-SETTLEMENT-REPORT");
|
|
|
+// // 没配置审核流程,直接结束并处理信息
|
|
|
+// if (workflow == null) {
|
|
|
+// throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
|
|
|
+// }
|
|
|
+// // 开启审核流
|
|
|
+// else {
|
|
|
+//
|
|
|
+// // 设置状态 已提交审核
|
|
|
+// tranSettlementReport.setWorkflowId(workflow.getId());
|
|
|
+// tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
+// workflowService.startInstance(workflow.getId(), tranSettlementReport.getId());
|
|
|
+// }
|
|
|
+// }
|
|
|
}
|
|
|
}
|
|
|
//火运类型
|
|
|
else if (tranCarInfo.getTranType().equals(NumberConstant.CONSTANT2)) {
|
|
|
- List<TranSettlementReport> tranSettlementReportList = tranSettlementReportService.selectList(new EntityWrapper<TranSettlementReport>()
|
|
|
+ TranSettlementReport tranSettlementReport1 = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
|
|
|
.eq("car_id", tranCarInfo.getId()));
|
|
|
- if (!CollectionUtils.isEmpty(tranSettlementReportList)) {
|
|
|
- if (tranCarInfo.getUnloadNetWeight() > 0&&tranProcessInfo.getFlag()!=null) {
|
|
|
- for (TranSettlementReport tranSettlementReport : tranSettlementReportList) {
|
|
|
- tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
- tranSettlementReport.setUnloadingWeight(tranCarInfo.getUnloadNetWeight());
|
|
|
- tranSettlementReport.setUnloadingImg(tranCarInfo.getUnloadPoundImg());
|
|
|
- //损耗
|
|
|
- tranSettlementReport.setLossWeight(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight());
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- }
|
|
|
- }
|
|
|
+ if (tranSettlementReport1!=null) {
|
|
|
+ tranSettlementReport1.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
+ tranSettlementReportService.updateById(tranSettlementReport1);
|
|
|
} else {
|
|
|
//生成火运报表
|
|
|
TranSettlementReport tranSettlementReport = new TranSettlementReport();
|
|
@@ -374,55 +367,24 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
tranSettlementReport.setProcessNo(tranProcessInfo.getProcessNo());
|
|
|
tranSettlementReport.setBoxNo(tranCarInfo.getBoxNo());
|
|
|
tranSettlementReport.setSettlementWeight(tranCarInfo.getLoadNetWeight());
|
|
|
- TranProcessInfo tranProcessInfo1=this.selectById(tranProcessInfo.getId());
|
|
|
+ TranProcessInfo tranProcessInfo1 = this.selectById(tranProcessInfo.getId());
|
|
|
//应付
|
|
|
tranSettlementReport.setAmountIngPayable(tranProcessInfo1.getTranPrice());
|
|
|
//未付
|
|
|
tranSettlementReport.setAmountNotPayable(tranProcessInfo1.getTranPrice());
|
|
|
tranSettlementReport.setLoadingWeight(tranCarInfo.getLoadNetWeight());
|
|
|
tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
+ tranSettlementReport.setBatchId(batchReviewInfo.getId());
|
|
|
tranSettlementReportService.insert(tranSettlementReport);
|
|
|
- boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
|
|
|
- // 不是退回的单子
|
|
|
- if (isStartWorkflow) {
|
|
|
- Workflow workflow = workflowService
|
|
|
- .findLatestWorkflowByBusinessCodeByApp(tranSettlementReport.getCompId(), "TRANSPORTATION-SETTLEMENT-REPORT");
|
|
|
- // 没配置审核流程,直接结束并处理信息
|
|
|
- if (workflow == null) {
|
|
|
- throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
|
|
|
- }
|
|
|
- // 开启审核流
|
|
|
- else {
|
|
|
-
|
|
|
- // 设置状态 已提交审核
|
|
|
- tranSettlementReport.setWorkflowId(workflow.getId());
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- workflowService.startInstance(workflow.getId(), tranSettlementReport.getId());
|
|
|
- }
|
|
|
- }
|
|
|
- // 退回的单子 再启用
|
|
|
- else {
|
|
|
-
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- workflowService.activateInstance(tranSettlementReport.getWorkflowId(), tranSettlementReport.getId());
|
|
|
- }
|
|
|
+ flagBatch = "1";
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
//船运类型
|
|
|
else if (tranCarInfo.getTranType().equals(NumberConstant.CONSTANT3)) {
|
|
|
- List<TranSettlementReport> tranSettlementReportList = tranSettlementReportService.selectList(new EntityWrapper<TranSettlementReport>()
|
|
|
+ TranSettlementReport tranSettlementReport1 = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
|
|
|
.eq("car_id", tranCarInfo.getId()));
|
|
|
- if (!CollectionUtils.isEmpty(tranSettlementReportList)) {
|
|
|
- if (tranCarInfo.getUnloadNetWeight() > 0&&tranProcessInfo.getFlag()!=null) {
|
|
|
- for (TranSettlementReport tranSettlementReport : tranSettlementReportList) {
|
|
|
- tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
- tranSettlementReport.setUnloadingWeight(tranCarInfo.getUnloadNetWeight());
|
|
|
- tranSettlementReport.setUnloadingImg(tranCarInfo.getUnloadPoundImg());
|
|
|
- //损耗
|
|
|
- tranSettlementReport.setLossWeight(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight());
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- }
|
|
|
- }
|
|
|
+ if (tranSettlementReport1!=null) {
|
|
|
+ tranSettlementReport1.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
} else {
|
|
|
//生成船运报表
|
|
|
TranSettlementReport tranSettlementReport = new TranSettlementReport();
|
|
@@ -451,31 +413,9 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
tranSettlementReport.setLoadingWeight(tranCarInfo.getLoadNetWeight());
|
|
|
tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
tranSettlementReport.setTransportPrice(tranProcessInfo.getTranPrice());
|
|
|
+ tranSettlementReport.setBatchId(batchReviewInfo.getId());
|
|
|
tranSettlementReportService.insert(tranSettlementReport);
|
|
|
- boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
|
|
|
- // 不是退回的单子
|
|
|
- if (isStartWorkflow) {
|
|
|
- Workflow workflow = workflowService
|
|
|
- .findLatestWorkflowByBusinessCodeByApp(tranSettlementReport.getCompId(), "TRANSPORTATION-SETTLEMENT-REPORT");
|
|
|
- // 没配置审核流程,直接结束并处理信息
|
|
|
- if (workflow == null) {
|
|
|
- throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
|
|
|
- }
|
|
|
- // 开启审核流
|
|
|
- else {
|
|
|
-
|
|
|
- // 设置状态 已提交审核
|
|
|
- tranSettlementReport.setWorkflowId(workflow.getId());
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- workflowService.startInstance(workflow.getId(), tranSettlementReport.getId());
|
|
|
- }
|
|
|
- }
|
|
|
- // 退回的单子 再启用
|
|
|
- else {
|
|
|
-
|
|
|
- tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
- workflowService.activateInstance(tranSettlementReport.getWorkflowId(), tranSettlementReport.getId());
|
|
|
- }
|
|
|
+ flagBatch = "1";
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -483,188 +423,297 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
else if (tranCarInfo.getUnloadNetWeight() > 0) {
|
|
|
tranCarInfo.setStatusFlag(StatusEnum.DELIVERED.getFlag());
|
|
|
tranCarInfo.setStatus(StatusEnum.DELIVERED.getName());
|
|
|
- TranProcessInfo tranProcessInfo1 = this.selectById(tranProcessInfo.getId());
|
|
|
- //粮款结算阶段
|
|
|
-// if ("1".equals(tranProcessInfo1.getEndFlag())) {
|
|
|
- CommonStaff commonStaff = staffService.getInfo(AuthSecurityUtils.getCurrentUserId());
|
|
|
- //自运的销售合同
|
|
|
- ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
|
|
|
- .eq("contract_no", tranProcessInfo1.getContractNo())
|
|
|
- .eq("deliver_type", "1")
|
|
|
+ //卸车反馈时更新报表卸车数据
|
|
|
+ TranSettlementReport tranSettlementReport1 = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
|
|
|
+ .eq("car_id", tranCarInfo.getId()));
|
|
|
+ if (tranSettlementReport1!=null) {
|
|
|
+ if (tranCarInfo.getUnloadNetWeight() > 0&&tranProcessInfo.getFlag()!=null) {
|
|
|
+ tranSettlementReport1.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
+ tranSettlementReport1.setUnloadingWeight(tranCarInfo.getUnloadNetWeight());
|
|
|
+ tranSettlementReport1.setUnloadingImg(tranCarInfo.getUnloadPoundImg());
|
|
|
+ //损耗
|
|
|
+ tranSettlementReport1.setLossWeight(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight());
|
|
|
+ //汽运类型
|
|
|
+ if (tranCarInfo.getTranType().equals(NumberConstant.CONSTANT1)) {
|
|
|
+ //结算重量
|
|
|
+ if ("0".equals(tranSettlementReport1.getManualFlag())) {
|
|
|
+ //卸车不为空时,结算重量=装卸取小
|
|
|
+ tranSettlementReport1.setSettlementWeight(tranCarInfo.getLoadNetWeight() > tranCarInfo.getUnloadNetWeight() ? tranCarInfo.getUnloadNetWeight() : tranCarInfo.getLoadNetWeight());
|
|
|
+ }
|
|
|
+ //扣款
|
|
|
+ if (tranSettlementReport1.getLossWeight() <= (tranCarInfo.getLoadNetWeight() / 1000)) {
|
|
|
+ tranSettlementReport1.setDeductionAmount("0");
|
|
|
+ //应付=单价x结算重量-扣款
|
|
|
+ tranSettlementReport1.setAmountIngPayable(tranSettlementReport1.getTransportPrice() * tranSettlementReport1.getSettlementWeight());
|
|
|
+ } else {
|
|
|
+ tranSettlementReport1.setDeductionAmount(String.format("%.2f", (Float.valueOf(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight()) - (tranCarInfo.getLoadNetWeight() / 1000)) * Float.valueOf(tranCarInfo.getTranPrice())));
|
|
|
+ //应付=单价x结算重量-扣款
|
|
|
+ tranSettlementReport1.setAmountIngPayable(tranSettlementReport1.getTransportPrice() * tranSettlementReport1.getSettlementWeight() - Float.valueOf(tranSettlementReport1.getDeductionAmount()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ tranSettlementReportService.updateById(tranSettlementReport1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ TranSettlementReport tranSettlementReport=new TranSettlementReport();
|
|
|
+ //生成汽运报表
|
|
|
+ tranSettlementReport.setCompId(tranTaskInfo.getCompId());
|
|
|
+ tranSettlementReport.setCarId(tranCarInfo.getId());
|
|
|
+ tranSettlementReport.setId(IdGenerator.generateUUID());
|
|
|
+ tranSettlementReport.setTranType("汽运");
|
|
|
+ tranSettlementReport.setTranTypeKey("1");
|
|
|
+ tranSettlementReport.setContractNo(tranTaskInfo.getContractNo());
|
|
|
+ tranSettlementReport.setProcessNo(tranProcessInfo.getProcessNo());
|
|
|
+ tranSettlementReport.setName(tranCarInfo.getDriver());
|
|
|
+ tranSettlementReport.setPhone(tranCarInfo.getDriverPhone());
|
|
|
+ tranSettlementReport.setCarNo(tranCarInfo.getCarNo());
|
|
|
+ //查询账户信息
|
|
|
+ List<DriverViewInfo> driverViewInfoList = driverViewInfoService.selectList(new EntityWrapper<DriverViewInfo>()
|
|
|
+ .eq("driver_name", tranCarInfo.getDriver())
|
|
|
.eq("delete_flag", "0"));
|
|
|
- if (contractManagementInfo != null) {
|
|
|
- if ("汽运".equals(tranProcessInfo1.getTranType())) {
|
|
|
- StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
- .eq("process_id", tranProcessInfo1.getId())
|
|
|
- .eq("tran_car_no", tranCarInfo.getTranCarNo()));
|
|
|
- if (stockSaleReceiptReport != null) {
|
|
|
- //现货销售出库报表
|
|
|
- stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
- stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
- stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //按收货重量结算时
|
|
|
- if("2".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
- stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //定价销售
|
|
|
- if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
- (contractManagementInfo.getUnitContractPrice()));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
- //随行就市
|
|
|
- else {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ if (!CollectionUtils.isEmpty(driverViewInfoList)) {
|
|
|
+ for (DriverViewInfo driverViewInfo : driverViewInfoList) {
|
|
|
+ List<DriverPayeeInfo> driverPayeeInfoList = driverPayeeInfoService.selectList(new EntityWrapper<DriverPayeeInfo>()
|
|
|
+ .eq("driver_id", driverViewInfo.getId())
|
|
|
+ .eq("delete_flag", "0"));
|
|
|
+ if (!CollectionUtils.isEmpty(driverPayeeInfoList)) {
|
|
|
+ //本次收款账户
|
|
|
+ tranSettlementReport.setCardNo(driverPayeeInfoList.get(0).getBankCard());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ tranSettlementReport.setSettlementWeight(tranCarInfo.getLoadNetWeight());
|
|
|
+ tranSettlementReport.setTranCarNo(tranCarInfo.getTranCarNo());
|
|
|
+ tranSettlementReport.setLoadingWeight(tranCarInfo.getLoadNetWeight());
|
|
|
+ tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
+ tranSettlementReport.setTransportPrice(Float.valueOf(tranCarInfo.getTranPrice()));
|
|
|
+ tranSettlementReport.setLoadingImg(tranCarInfo.getLoadPoundImg());
|
|
|
+ tranSettlementReport.setUnloadingWeight(tranCarInfo.getUnloadNetWeight());
|
|
|
+ tranSettlementReport.setUnloadingImg(tranCarInfo.getUnloadPoundImg());
|
|
|
+ //损耗
|
|
|
+ tranSettlementReport.setLossWeight(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight());
|
|
|
+ //扣款
|
|
|
+ if (tranSettlementReport.getLossWeight() <= (tranCarInfo.getLoadNetWeight() / 1000)) {
|
|
|
+ tranSettlementReport.setDeductionAmount("0");
|
|
|
+ //应付=单价x结算重量-扣款
|
|
|
+ tranSettlementReport.setAmountIngPayable(tranSettlementReport.getTransportPrice() * tranSettlementReport.getSettlementWeight());
|
|
|
+ } else {
|
|
|
+ tranSettlementReport.setDeductionAmount(String.format("%.2f", (Float.valueOf(tranCarInfo.getLoadNetWeight() - tranCarInfo.getUnloadNetWeight()) - (tranCarInfo.getLoadNetWeight() / 1000)) * Float.valueOf(tranCarInfo.getTranPrice())));
|
|
|
+ //应付=单价x结算重量-扣款
|
|
|
+ tranSettlementReport.setAmountIngPayable(tranSettlementReport.getTransportPrice() * tranSettlementReport.getSettlementWeight() - Float.valueOf(tranSettlementReport.getDeductionAmount()));
|
|
|
+ }
|
|
|
+ //未付
|
|
|
+ tranSettlementReport.setAmountNotPayable(tranSettlementReport.getAmountIngPayable());
|
|
|
+ tranSettlementReport.setBatchId(batchReviewInfo.getId());
|
|
|
+ tranSettlementReportService.insert(tranSettlementReport);
|
|
|
+ flagBatch="1";
|
|
|
+// boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
|
|
|
+// // 不是退回的单子
|
|
|
+// if (isStartWorkflow) {
|
|
|
+// Workflow workflow = workflowService
|
|
|
+// .findLatestWorkflowByBusinessCodeByApp(tranSettlementReport.getCompId(), "TRANSPORTATION-SETTLEMENT-REPORT");
|
|
|
+// // 没配置审核流程,直接结束并处理信息
|
|
|
+// if (workflow == null) {
|
|
|
+// throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
|
|
|
+// }
|
|
|
+// // 开启审核流
|
|
|
+// else {
|
|
|
+//
|
|
|
+// // 设置状态 已提交审核
|
|
|
+// tranSettlementReport.setWorkflowId(workflow.getId());
|
|
|
+// tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
+// workflowService.startInstance(workflow.getId(), tranSettlementReport.getId());
|
|
|
+// }
|
|
|
+// }
|
|
|
+// // 退回的单子 再启用
|
|
|
+// else {
|
|
|
+// tranSettlementReportService.updateById(tranSettlementReport);
|
|
|
+// workflowService.activateInstance(tranSettlementReport.getWorkflowId(), tranSettlementReport.getId());
|
|
|
+// }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ TranProcessInfo tranProcessInfo1 = this.selectById(tranProcessInfo.getId());
|
|
|
+ //粮款结算阶段
|
|
|
+// if ("1".equals(tranProcessInfo1.getEndFlag())) {
|
|
|
+ CommonStaff commonStaff = staffService.getInfo(AuthSecurityUtils.getCurrentUserId());
|
|
|
+ //自运的销售合同
|
|
|
+ ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
|
|
|
+ .eq("contract_no", tranProcessInfo1.getContractNo())
|
|
|
+ .eq("deliver_type", "1")
|
|
|
+ .eq("delete_flag", "0"));
|
|
|
+ if (contractManagementInfo != null) {
|
|
|
+ if ("汽运".equals(tranProcessInfo1.getTranType())) {
|
|
|
+ StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
+ .eq("process_id", tranProcessInfo1.getId())
|
|
|
+ .eq("tran_car_no", tranCarInfo.getTranCarNo()));
|
|
|
+ if (stockSaleReceiptReport != null) {
|
|
|
+ //现货销售出库报表
|
|
|
+ stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
+ stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
+ stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //按收货重量结算时
|
|
|
+ if("2".equals(contractManagementInfo.getSettlementWeightMethod())&&tranCarInfo.getUnloadNetWeight() > 0){
|
|
|
+ stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //定价销售
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
+ (contractManagementInfo.getUnitContractPrice()));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- //按出库重量结算时
|
|
|
- else{
|
|
|
- //随行就市
|
|
|
- if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
- (tranCarInfo.getContractPrice()))));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ //随行就市
|
|
|
+ else {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
+ //按出库重量结算时
|
|
|
+ else if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
+ //随行就市
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
+ (tranCarInfo.getContractPrice()))));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
- else if ("火运".equals(tranProcessInfo1.getTranType())) {
|
|
|
- StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
- .eq("process_id", tranProcessInfo1.getId())
|
|
|
- .eq("car_no", tranCarInfo.getCarNo())
|
|
|
- .eq("box_no", tranCarInfo.getBoxNo()));
|
|
|
- if (stockSaleReceiptReport != null) {
|
|
|
- //现货销售出库报表
|
|
|
- stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
- stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
- stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //按收货重量结算时
|
|
|
- if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
- stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //定价销售
|
|
|
- if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
- (contractManagementInfo.getUnitContractPrice()));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
- //随行就市
|
|
|
- else {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ }
|
|
|
+ else if ("火运".equals(tranProcessInfo1.getTranType())) {
|
|
|
+ StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
+ .eq("process_id", tranProcessInfo1.getId())
|
|
|
+ .eq("car_no", tranCarInfo.getCarNo())
|
|
|
+ .eq("box_no", tranCarInfo.getBoxNo()));
|
|
|
+ if (stockSaleReceiptReport != null) {
|
|
|
+ //现货销售出库报表
|
|
|
+ stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
+ stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
+ stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //按收货重量结算时
|
|
|
+ if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
+ stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //定价销售
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
+ (contractManagementInfo.getUnitContractPrice()));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
+ }
|
|
|
+ //随行就市
|
|
|
+ else {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- //按出库重量结算时
|
|
|
- else{
|
|
|
- //随行就市
|
|
|
- if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
- (tranCarInfo.getContractPrice()))));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ }
|
|
|
+ //按出库重量结算时
|
|
|
+ else{
|
|
|
+ //随行就市
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
+ (tranCarInfo.getContractPrice()))));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
+ stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
- else if (tranCarInfo.getShipType() != null && "散船".equals(tranCarInfo.getShipType())) {
|
|
|
- StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
- .eq("process_id", tranProcessInfo1.getId())
|
|
|
- .eq("ship_no", tranCarInfo.getShipNo())
|
|
|
- .eq("ship_name", tranCarInfo.getShipName()));
|
|
|
- if (stockSaleReceiptReport != null) {
|
|
|
- //现货销售出库报表
|
|
|
- stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
- stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
- stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //按收货重量结算时
|
|
|
- if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
- stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //定价销售
|
|
|
- if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
- (contractManagementInfo.getUnitContractPrice()));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
- //随行就市
|
|
|
- else {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ }
|
|
|
+ else if (tranCarInfo.getShipType() != null && "散船".equals(tranCarInfo.getShipType())) {
|
|
|
+ StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
+ .eq("process_id", tranProcessInfo1.getId())
|
|
|
+ .eq("ship_no", tranCarInfo.getShipNo())
|
|
|
+ .eq("ship_name", tranCarInfo.getShipName()));
|
|
|
+ if (stockSaleReceiptReport != null) {
|
|
|
+ //现货销售出库报表
|
|
|
+ stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
+ stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
+ stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //按收货重量结算时
|
|
|
+ if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
+ stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //定价销售
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
+ (contractManagementInfo.getUnitContractPrice()));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- //按出库重量结算时
|
|
|
- else{
|
|
|
- //随行就市
|
|
|
- if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
- (tranCarInfo.getContractPrice()))));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ //随行就市
|
|
|
+ else {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //按出库重量结算时
|
|
|
+ else{
|
|
|
+ //随行就市
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
+ (tranCarInfo.getContractPrice()))));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
+ stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
- else if (tranCarInfo.getShipType() != null && "集装箱".equals(tranCarInfo.getShipType())) {
|
|
|
- StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
- .eq("process_id", tranProcessInfo1.getId())
|
|
|
- .eq("title_no", tranCarInfo.getTitleNo())
|
|
|
- .eq("case_no", tranCarInfo.getCaseNo()));
|
|
|
- if (stockSaleReceiptReport != null) {
|
|
|
- //现货销售出库报表
|
|
|
- stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
- stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
- stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //按收货重量结算时
|
|
|
- if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
- stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
- //定价销售
|
|
|
- if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
- (contractManagementInfo.getUnitContractPrice()));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
- //随行就市
|
|
|
- else {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ }
|
|
|
+ else if (tranCarInfo.getShipType() != null && "集装箱".equals(tranCarInfo.getShipType())) {
|
|
|
+ StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
|
|
|
+ .eq("process_id", tranProcessInfo1.getId())
|
|
|
+ .eq("title_no", tranCarInfo.getTitleNo())
|
|
|
+ .eq("case_no", tranCarInfo.getCaseNo()));
|
|
|
+ if (stockSaleReceiptReport != null) {
|
|
|
+ //现货销售出库报表
|
|
|
+ stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
|
|
|
+ stockSaleReceiptReport.setFeedbackDate(new Date());
|
|
|
+ stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //按收货重量结算时
|
|
|
+ if("1".equals(contractManagementInfo.getSettlementWeightMethod())){
|
|
|
+ stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
|
|
|
+ //定价销售
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()!=null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight()*
|
|
|
+ (contractManagementInfo.getUnitContractPrice()));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
+ }
|
|
|
+ //随行就市
|
|
|
+ else {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() *tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- //按出库重量结算时
|
|
|
- else{
|
|
|
- //随行就市
|
|
|
- if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
- stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
- stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
- (tranCarInfo.getContractPrice()))));
|
|
|
- stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
- stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
- }
|
|
|
+ }
|
|
|
+ //按出库重量结算时
|
|
|
+ else{
|
|
|
+ //随行就市
|
|
|
+ if(contractManagementInfo.getUnitContractPrice()==null) {
|
|
|
+ stockSaleReceiptReport.setSettlementPrice(Double.valueOf(String.valueOf(tranCarInfo.getContractPrice())));
|
|
|
+ stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight()*
|
|
|
+ (tranCarInfo.getContractPrice()))));
|
|
|
+ stockSaleReceiptReport.setAmountEdReceivable(0.00);
|
|
|
+ stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
|
|
|
}
|
|
|
- stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
+ stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
|
|
|
}
|
|
|
}
|
|
|
+ }
|
|
|
}
|
|
|
//船运集装箱
|
|
|
if (tranCarInfoList.get(0).getTranType().equals(NumberConstant.CONSTANT3)&&"集装箱".equals(tranCarInfoList.get(0).getShipType())) {
|
|
@@ -682,6 +731,40 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
|
|
|
}
|
|
|
tranCarInfoService.updateById(tranCarInfo);
|
|
|
}
|
|
|
+ // 批次开启审核流
|
|
|
+ if("1".equals(flagBatch)){
|
|
|
+ batchReviewInfoService.insert(batchReviewInfo);
|
|
|
+ boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(batchReviewInfo.getWorkflowId());
|
|
|
+ // 不是退回的单子
|
|
|
+ if (isStartWorkflow) {
|
|
|
+ Workflow workflow = workflowService
|
|
|
+ .findLatestWorkflowByBusinessCodeByApp(batchReviewInfo.getCompId(), "TRANSPORTATION-SETTLEMENT-REPORT");
|
|
|
+ // 没配置审核流程,直接结束并处理信息
|
|
|
+ if (workflow == null) {
|
|
|
+ throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
|
|
|
+ }
|
|
|
+ // 开启审核流
|
|
|
+ else {
|
|
|
+
|
|
|
+ // 设置状态 已提交审核
|
|
|
+ batchReviewInfo.setWorkflowId(workflow.getId());
|
|
|
+ batchReviewInfoService.updateById(batchReviewInfo);
|
|
|
+ workflowService.startInstance(workflow.getId(), batchReviewInfo.getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 更新详细状态
|
|
|
+ batchReviewInfo = batchReviewInfoService.selectById(batchReviewInfo.getId());
|
|
|
+ List<TranSettlementReport> tranSettlementReports = tranSettlementReportService.selectList(new EntityWrapper<TranSettlementReport>()
|
|
|
+ .eq("batch_id",batchReviewInfo.getId()));
|
|
|
+ if(!CollectionUtils.isEmpty(tranSettlementReports)){
|
|
|
+ for(int i=0;i<tranSettlementReports.size();i++){
|
|
|
+ TranSettlementReport settlementReport = tranSettlementReports.get(i);
|
|
|
+ settlementReport.setWorkflowId(batchReviewInfo.getWorkflowId());
|
|
|
+ settlementReport.setStatus(batchReviewInfo.getStatus());
|
|
|
+ settlementReport.setApproveStatus(batchReviewInfo.getApproveStatus());
|
|
|
+ }
|
|
|
+ tranSettlementReportService.insertBatch(tranSettlementReports);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
return tranProcessInfo.getId();
|