zhangyuewww 2 anni fa
parent
commit
212aaf7ab2

+ 308 - 273
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/TranProcessInfoServiceImpl.java

@@ -259,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();
@@ -326,9 +326,7 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                                 tranSettlementReport.setTransportPrice(Float.valueOf(tranCarInfo.getTranPrice()));
                                 tranSettlementReport.setBatchId(batchReviewInfo.getId());
                                 tranSettlementReportService.insert(tranSettlementReport);
-
                                 flagBatch = "1";
-
 //                                boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(tranSettlementReport.getWorkflowId());
 //                                // 不是退回的单子
 //                                if (isStartWorkflow) {
@@ -351,19 +349,11 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                         }
                         //火运类型
                         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();
@@ -377,7 +367,7 @@ 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());
                                 //未付
@@ -387,47 +377,14 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                                 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());
-//                                }
                             }
-                        }
+                         }
                         //船运类型
                         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();
@@ -459,30 +416,6 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                                 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());
-//                                }
                             }
                         }
                     }
@@ -490,188 +423,295 @@ 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());
+                            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());
+                            }
+                        }
+                    }
+                    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())){
+                                        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(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{
-                                            //随行就市
-                                            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(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 (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());
                                         }
-                                        stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
                                     }
+                                    //按出库重量结算时
+                                    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);
                                 }
-                                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{
-                                            //随行就市
-                                            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(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);
                                 }
                             }
+                        }
                     }
                     //船运集装箱
                     if (tranCarInfoList.get(0).getTranType().equals(NumberConstant.CONSTANT3)&&"集装箱".equals(tranCarInfoList.get(0).getShipType())) {
@@ -689,8 +729,6 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                     }
                     tranCarInfoService.updateById(tranCarInfo);
                 }
-            }
-
             // 批次开启审核流
             if("1".equals(flagBatch)){
                 batchReviewInfoService.insert(batchReviewInfo);
@@ -715,19 +753,16 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                 //  更新详细状态
                 batchReviewInfo = batchReviewInfoService.selectById(batchReviewInfo.getId());
                 List<TranSettlementReport> tranSettlementReports = tranSettlementReportService.selectList(new EntityWrapper<TranSettlementReport>()
-                .eq("batch_id",batchReviewInfo.getId()));
+                        .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();