zhangyuewww 3 роки тому
батько
коміт
b294f2ddf7

+ 18 - 11
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/StockSaleReceiptReportServiceImpl.java

@@ -236,19 +236,26 @@ public class StockSaleReceiptReportServiceImpl extends ServiceImpl<StockSaleRece
                             .eq("info_id",tranTaskInfo.getId())
                             .eq("end_flag","1"));
                     if (tranProcessInfo!=null){
-                        TranCarInfo tranCarInfo=tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
-                                .eq("process_id",tranProcessInfo.getId())
-                                .eq("ship_type","集装箱"));
-                        if (tranCarInfo!=null){
-                            tranProcessInfo.setTranType("箱船");
+                        if ("船运".equals(tranProcessInfo.getTranType())) {
+                            TranCarInfo tranCarInfo = tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
+                                    .eq("process_id", tranProcessInfo.getId())
+                                    .eq("ship_type", "集装箱"));
+                            if (tranCarInfo != null) {
+                                tranProcessInfo.setTranType("箱船");
+                                tranTaskInfo.setTranProcessInfo(tranProcessInfo);
+                            }
+                            TranCarInfo tranCarInfo1 = tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
+                                    .eq("process_id", tranProcessInfo.getId())
+                                    .eq("ship_type", "散船"));
+                            if (tranCarInfo1 != null) {
+                                tranProcessInfo.setTranType("散船");
+                                tranTaskInfo.setTranProcessInfo(tranProcessInfo);
+                            }
                         }
-                        TranCarInfo tranCarInfo1=tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
-                                .eq("process_id",tranProcessInfo.getId())
-                                .eq("ship_type","散船"));
-                        if (tranCarInfo1!=null){
-                            tranProcessInfo.setTranType("散船");
+                        else
+                        {
+                            tranTaskInfo.setTranProcessInfo(tranProcessInfo);
                         }
-                        tranTaskInfo.setTranProcessInfo(tranProcessInfo);
                     }
                 }
                 contractManagementInfo.setTranTaskInfoList(tranTaskInfoList);

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

@@ -69,6 +69,10 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
     private ICommonStaffService staffService;
     @Autowired
     private ICommonRoleResourceService roleResourceService;
+    @Autowired
+    private IStockSaleReceiptReportService stockSaleReceiptReportService;
+    @Autowired
+    private IContractManagementInfoService contractManagementInfoService;
     /**
      * 汽运调度分页列表查询
      *
@@ -143,7 +147,7 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
         TranProcessInfo tranProcessInfo = this.selectById(id);
         //查看车次信息
         List<TranCarInfo> tranCarInfoList = tranCarInfoService.selectList(new EntityWrapper<TranCarInfo>()
-                .eq(TranCarInfo.QueryFiles.PROCESS_ID, id).eq(TranCarInfo.QueryFiles.DELETE_FLAG, NumberConstant.CONSTANT0).orderBy("tran_car_no"));
+                .eq(TranCarInfo.QueryFiles.PROCESS_ID, id).eq(TranCarInfo.QueryFiles.DELETE_FLAG, NumberConstant.CONSTANT0).orderBy("tran_car_no").orderBy("box_no"));
         //查看审核记录
         List<TranPriceApprove> tranPriceApproveList = tranPriceApproveService.selectList(new EntityWrapper<TranPriceApprove>()
                 .eq(TranPriceApprove.QueryFiles.PROCESS_ID, id).eq("record_type", "1").eq(TranPriceApprove.QueryFiles.DELETE_FLAG, NumberConstant.CONSTANT0));
@@ -207,11 +211,11 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                         tranCarInfo.setSignStatus(StatusEnum.NOT_SIGNED.getName());
                         tranCarInfo.setSignStatusFlag(StatusEnum.NOT_SIGNED.getFlag());
                     }
+                    TranTaskInfo tranTaskInfo = tranTaskInfoService.selectById(tranProcessInfo.getInfoId());
                     //装车反馈时状态改为已装车
                     if (tranCarInfo.getLoadNetWeight() > 0) {
                         tranCarInfo.setStatusFlag(StatusEnum.LOADED.getFlag());
                         tranCarInfo.setStatus(StatusEnum.LOADED.getName());
-                        TranTaskInfo tranTaskInfo = tranTaskInfoService.selectById(tranProcessInfo.getInfoId());
                         tranCarInfo.setContractNo(tranTaskInfo.getContractNo());
                         //汽运类型
                         if (tranCarInfo.getTranType().equals(NumberConstant.CONSTANT1)) {
@@ -434,6 +438,120 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                     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")
+                                    .eq("delete_flag", "0"));
+                            if (contractManagementInfo != null) {
+                                if ("汽运".equals(tranProcessInfo1.getTranType())) {
+                                    StockSaleReceiptReport stockSaleReceiptReport1 = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
+                                            .eq("process_no", tranProcessInfo1.getProcessNo())
+                                            .eq("tran_car_no", tranCarInfo.getTranCarNo()));
+                                    if (stockSaleReceiptReport1 == null) {
+                                        //现货销售出库报表
+                                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                                        stockSaleReceiptReport.setCompId(tranTaskInfo.getCompId());
+                                        stockSaleReceiptReport.setContractNo(tranProcessInfo1.getContractNo());
+                                        stockSaleReceiptReport.setProcessNo(tranProcessInfo1.getProcessNo());
+                                        stockSaleReceiptReport.setCarNo(tranCarInfo.getCarNo());
+                                        stockSaleReceiptReport.setTranCarNo(tranCarInfo.getTranCarNo());
+                                        stockSaleReceiptReport.setCaseNo(tranCarInfo.getCaseNo());
+                                        stockSaleReceiptReport.setTitleNo(tranCarInfo.getTitleNo());
+                                        stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
+                                        stockSaleReceiptReport.setNetWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setSettlementWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight() *
+                                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
+                                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
+                                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                        stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                                        stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
+                                    }
+                                }
+                                else if ("火运".equals(tranProcessInfo1.getTranType())) {
+                                    StockSaleReceiptReport stockSaleReceiptReport1 = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
+                                            .eq("process_no", tranProcessInfo1.getProcessNo())
+                                            .eq("box_no", tranCarInfo.getBoxNo()));
+                                    if (stockSaleReceiptReport1 == null) {
+                                        //现货销售出库报表
+                                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                                        stockSaleReceiptReport.setCompId(tranTaskInfo.getCompId());
+                                        stockSaleReceiptReport.setContractNo(tranProcessInfo1.getContractNo());
+                                        stockSaleReceiptReport.setProcessNo(tranProcessInfo1.getProcessNo());
+                                        stockSaleReceiptReport.setBoxNo(tranCarInfo.getBoxNo());
+                                        stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
+                                        stockSaleReceiptReport.setNetWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setSettlementWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight() *
+                                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
+                                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
+                                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                        stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                                        stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
+                                    }
+
+                                }
+                                else if (tranCarInfo.getShipType() != null && "散船".equals(tranCarInfo.getShipType())) {
+                                    StockSaleReceiptReport stockSaleReceiptReport1 = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
+                                            .eq("process_no", tranProcessInfo1.getProcessNo())
+                                            .eq("bin_number", tranCarInfo.getBinNumber()));
+                                    if (stockSaleReceiptReport1 == null) {
+                                        //现货销售出库报表
+                                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                                        stockSaleReceiptReport.setCompId(tranTaskInfo.getCompId());
+                                        stockSaleReceiptReport.setContractNo(tranProcessInfo1.getContractNo());
+                                        stockSaleReceiptReport.setProcessNo(tranProcessInfo1.getProcessNo());
+                                        stockSaleReceiptReport.setBinNumber(tranCarInfo.getBinNumber());
+                                        stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
+                                        stockSaleReceiptReport.setNetWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setSettlementWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight() *
+                                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
+                                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
+                                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                        stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                                        stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
+                                    }
+                                }
+                                else if (tranCarInfo.getShipType() != null && "集装箱".equals(tranCarInfo.getShipType())) {
+                                    StockSaleReceiptReport stockSaleReceiptReport1 = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
+                                            .eq("process_no", tranProcessInfo1.getProcessNo())
+                                            .eq("title_no", tranCarInfo.getTitleNo())
+                                            .eq("case_no", tranCarInfo.getCaseNo()));
+                                    if (stockSaleReceiptReport1 == null) {
+                                        //现货销售出库报表
+                                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                                        stockSaleReceiptReport.setCompId(tranTaskInfo.getCompId());
+                                        stockSaleReceiptReport.setContractNo(tranProcessInfo1.getContractNo());
+                                        stockSaleReceiptReport.setProcessNo(tranProcessInfo1.getProcessNo());
+                                        stockSaleReceiptReport.setCaseNo(tranCarInfo.getCaseNo());
+                                        stockSaleReceiptReport.setTitleNo(tranCarInfo.getTitleNo());
+                                        stockSaleReceiptReport.setFeedbackPerson(commonStaff.getStaffName());
+                                        stockSaleReceiptReport.setNetWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setSettlementWeight(tranCarInfo.getUnloadNetWeight());
+                                        stockSaleReceiptReport.setAmountIngReceivable(tranCarInfo.getUnloadNetWeight() *
+                                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
+                                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
+                                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                        stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                                        stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
+                                    }
+                                }
+                            }
+                        }
                     }
                     //船运集装箱
                     if (tranCarInfoList.get(0).getTranType().equals(NumberConstant.CONSTANT3)&&"集装箱".equals(tranCarInfoList.get(0).getShipType())) {

+ 252 - 250
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/WarehouseInOutInfoServiceImpl.java

@@ -632,55 +632,57 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                 if ("2".equals(warehouseInOutInfo.getInOutFlag()) && "1".equals(warehouseBaseInfo.getWarehouseType())) {
                     //常用库采购入库类型
                     if ("1".equals(warehouseInOutInfo.getInOutTypeKey())) {
+                        //他运的采购合同
                         ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
-                                .eq("contract_no", warehouseInOutInfo.getContractNo()).eq("delete_flag", "0"));
-                        if (contractManagementInfo == null) {
-                            throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
-                        }
-                        //现货采购入库报表
-                        StockPurchaseReceiptReport stockPurchaseReceiptReport = new StockPurchaseReceiptReport();
-                        stockPurchaseReceiptReport.setId(IdGenerator.generateUUID());
-                        stockPurchaseReceiptReport.setCompId(warehouseBaseInfo.getCompId());
-                        stockPurchaseReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
-                        stockPurchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
-                        stockPurchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
-                        stockPurchaseReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
-                        stockPurchaseReceiptReport.setTare(warehouseInOutInfo.getTare());
-                        stockPurchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
-                        stockPurchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
-                        stockPurchaseReceiptReport.setDeductionWeight(warehouseInOutInfo.getDeductionWeight());
-                        stockPurchaseReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
+                                .eq("contract_no", warehouseInOutInfo.getContractNo())
+                                .eq("deliver_type", "2")
+                                .eq("delete_flag", "0"));
+                        if (contractManagementInfo != null) {
+                            //现货采购入库报表
+                            StockPurchaseReceiptReport stockPurchaseReceiptReport = new StockPurchaseReceiptReport();
+                            stockPurchaseReceiptReport.setId(IdGenerator.generateUUID());
+                            stockPurchaseReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+                            stockPurchaseReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
+                            stockPurchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                            stockPurchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                            stockPurchaseReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+                            stockPurchaseReceiptReport.setTare(warehouseInOutInfo.getTare());
+                            stockPurchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
+                            stockPurchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
+                            stockPurchaseReceiptReport.setDeductionWeight(warehouseInOutInfo.getDeductionWeight());
+                            stockPurchaseReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
 
-                        stockPurchaseReceiptReport.setAmountIngPayable(warehouseInOutInfo.getNetWeight() *
-                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice())) - Float.valueOf(warehouseInOutInfo.getDeductionAmount())));
-                        stockPurchaseReceiptReport.setAmountEdPayable(0.0f);
-                        stockPurchaseReceiptReport.setAmountNotPayable(stockPurchaseReceiptReport.getAmountIngPayable());
-                        stockPurchaseReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
-                        stockPurchaseReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
+                            stockPurchaseReceiptReport.setAmountIngPayable(warehouseInOutInfo.getNetWeight() *
+                                    (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice())) - Float.valueOf(warehouseInOutInfo.getDeductionAmount())));
+                            stockPurchaseReceiptReport.setAmountEdPayable(0.0f);
+                            stockPurchaseReceiptReport.setAmountNotPayable(stockPurchaseReceiptReport.getAmountIngPayable());
+                            stockPurchaseReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
+                            stockPurchaseReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
 
-                        stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
-                        boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockPurchaseReceiptReport.getWorkflowId());
-                        // 不是退回的单子
-                        if (isStartWorkflow) {
-                            Workflow workflow = workflowService
-                                    .findLatestWorkflowByBusinessCodeByApp(stockPurchaseReceiptReport.getCompId(), "STOCK-PROCUREMENT-RECEIPT-REPORT");
-                            // 没配置审核流程,直接结束并处理信息
-                            if (workflow == null) {
-                                throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                            stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
+                            boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockPurchaseReceiptReport.getWorkflowId());
+                            // 不是退回的单子
+                            if (isStartWorkflow) {
+                                Workflow workflow = workflowService
+                                        .findLatestWorkflowByBusinessCodeByApp(stockPurchaseReceiptReport.getCompId(), "STOCK-PROCUREMENT-RECEIPT-REPORT");
+                                // 没配置审核流程,直接结束并处理信息
+                                if (workflow == null) {
+                                    throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                                }
+                                // 开启审核流
+                                else {
+                                    // 设置状态 已提交审核
+                                    stockPurchaseReceiptReport.setWorkflowId(workflow.getId());
+                                    stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
+                                    workflowService.startInstance(workflow.getId(), stockPurchaseReceiptReport.getId());
+                                }
                             }
-                            // 开启审核流
+                            // 退回的单子 再启用
                             else {
-                                // 设置状态 已提交审核
-                                stockPurchaseReceiptReport.setWorkflowId(workflow.getId());
                                 stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
-                                workflowService.startInstance(workflow.getId(), stockPurchaseReceiptReport.getId());
+                                workflowService.activateInstance(stockPurchaseReceiptReport.getWorkflowId(), stockPurchaseReceiptReport.getId());
                             }
                         }
-                        // 退回的单子 再启用
-                        else {
-                            stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
-                            workflowService.activateInstance(stockPurchaseReceiptReport.getWorkflowId(), stockPurchaseReceiptReport.getId());
-                        }
                     }
                     //常用库移库入库类型
                     else if ("3".equals(warehouseInOutInfo.getInOutTypeKey())) {
@@ -698,102 +700,118 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                                     .eq("warehouse_type", "2")
                                     .eq("delete_flag", "0"));
                             if (warehouseBaseInfo1 != null) {
+                                //按入库重量结算
                                 ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
-                                        .eq("contract_no", warehouseBaseInfo1.getWarehouseName()).eq("delete_flag", "0"));
-                                if (contractManagementInfo == null) {
-                                    throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
-                                }
-                                //现货采购入库报表
-                                StockPurchaseReceiptReport stockPurchaseReceiptReport = new StockPurchaseReceiptReport();
-                                stockPurchaseReceiptReport.setId(IdGenerator.generateUUID());
-                                stockPurchaseReceiptReport.setCompId(warehouseBaseInfo.getCompId());
-                                stockPurchaseReceiptReport.setContractNo(warehouseBaseInfo1.getWarehouseName());
-                                stockPurchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
-                                stockPurchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
-                                stockPurchaseReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
-                                stockPurchaseReceiptReport.setTare(warehouseInOutInfo.getTare());
-                                stockPurchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
-                                stockPurchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
-                                stockPurchaseReceiptReport.setDeductionWeight(warehouseInOutInfo.getDeductionWeight());
-                                stockPurchaseReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
+                                        .eq("contract_no", warehouseBaseInfo1.getWarehouseName())
+                                        .eq("settlement_weight_method", "2")
+                                        .eq("deliver_type", "1")
+                                        .eq("delete_flag", "0"));
+//                                if (contractManagementInfo == null) {
+//                                    throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
+//                                }
+                                if (contractManagementInfo != null) {
+                                    //现货采购入库报表
+                                    StockPurchaseReceiptReport stockPurchaseReceiptReport = new StockPurchaseReceiptReport();
+                                    stockPurchaseReceiptReport.setId(IdGenerator.generateUUID());
+                                    stockPurchaseReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+                                    stockPurchaseReceiptReport.setContractNo(warehouseBaseInfo1.getWarehouseName());
+                                    stockPurchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                                    stockPurchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                                    stockPurchaseReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+                                    stockPurchaseReceiptReport.setTare(warehouseInOutInfo.getTare());
+                                    stockPurchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
+                                    stockPurchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
+                                    stockPurchaseReceiptReport.setDeductionWeight(warehouseInOutInfo.getDeductionWeight());
+                                    stockPurchaseReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
 
-                                stockPurchaseReceiptReport.setAmountIngPayable(warehouseInOutInfo.getNetWeight() *
-                                        (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice())) - Float.valueOf(warehouseInOutInfo.getDeductionAmount())));
-                                stockPurchaseReceiptReport.setAmountEdPayable(0.0f);
-                                stockPurchaseReceiptReport.setAmountNotPayable(stockPurchaseReceiptReport.getAmountIngPayable());
-                                stockPurchaseReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
-                                stockPurchaseReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
-                                stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
-                                boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockPurchaseReceiptReport.getWorkflowId());
-                                // 不是退回的单子
-                                if (isStartWorkflow) {
-                                    Workflow workflow = workflowService
-                                            .findLatestWorkflowByBusinessCodeByApp(stockPurchaseReceiptReport.getCompId(), "STOCK-PROCUREMENT-RECEIPT-REPORT");
-                                    // 没配置审核流程,直接结束并处理信息
-                                    if (workflow == null) {
-                                        throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                                    stockPurchaseReceiptReport.setAmountIngPayable(warehouseInOutInfo.getNetWeight() *
+                                            (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice())) - Float.valueOf(warehouseInOutInfo.getDeductionAmount())));
+                                    stockPurchaseReceiptReport.setAmountEdPayable(0.0f);
+                                    stockPurchaseReceiptReport.setAmountNotPayable(stockPurchaseReceiptReport.getAmountIngPayable());
+                                    stockPurchaseReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
+                                    stockPurchaseReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
+                                    stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
+                                    boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockPurchaseReceiptReport.getWorkflowId());
+                                    // 不是退回的单子
+                                    if (isStartWorkflow) {
+                                        Workflow workflow = workflowService
+                                                .findLatestWorkflowByBusinessCodeByApp(stockPurchaseReceiptReport.getCompId(), "STOCK-PROCUREMENT-RECEIPT-REPORT");
+                                        // 没配置审核流程,直接结束并处理信息
+                                        if (workflow == null) {
+                                            throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                                        }
+                                        // 开启审核流
+                                        else {
+                                            // 设置状态 已提交审核
+                                            stockPurchaseReceiptReport.setWorkflowId(workflow.getId());
+                                            stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
+                                            workflowService.startInstance(workflow.getId(), stockPurchaseReceiptReport.getId());
+                                        }
                                     }
-                                    // 开启审核流
+                                    // 退回的单子 再启用
                                     else {
-                                        // 设置状态 已提交审核
-                                        stockPurchaseReceiptReport.setWorkflowId(workflow.getId());
                                         stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
-                                        workflowService.startInstance(workflow.getId(), stockPurchaseReceiptReport.getId());
+                                        workflowService.activateInstance(stockPurchaseReceiptReport.getWorkflowId(), stockPurchaseReceiptReport.getId());
                                     }
                                 }
-                                // 退回的单子 再启用
-                                else {
-                                    stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
-                                    workflowService.activateInstance(stockPurchaseReceiptReport.getWorkflowId(), stockPurchaseReceiptReport.getId());
-                                }
                             }
                         }
                     }
                     //常用库退库入库类型
                     else if ("退库".equals(warehouseInOutInfo.getInOutType())) {
+                        //他运的销售合同
                         ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
-                                .eq("contract_no", warehouseInOutInfo.getContractNo()).eq("delete_flag", "0"));
-                        if (contractManagementInfo == null) {
-                            throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
-                        }
-                        //现货销售出库报表
-                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
-                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
-                        stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
-                        stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
-                        stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
-                        stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
-                        stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
-                        stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
-                        stockSaleReceiptReport.setNetWeight(-warehouseInOutInfo.getNetWeight());
-                        stockSaleReceiptReport.setReturnDate(warehouseInOutInfo.getInOutDate());
-                        stockSaleReceiptReport.setAmountIngReceivable(-warehouseInOutInfo.getNetWeight()*Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice())));
-                        stockSaleReceiptReport.setSettlementWeight(-warehouseInOutInfo.getNetWeight());
-                        stockSaleReceiptReport.setReturnFlag("1");
-                        stockSaleReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
-                        stockSaleReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
-                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
-                        boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockSaleReceiptReport.getWorkflowId());
-                        // 不是退回的单子
-                        if (isStartWorkflow) {
-                            Workflow workflow = workflowService
-                                    .findLatestWorkflowByBusinessCodeByApp(stockSaleReceiptReport.getCompId(), "SALE-RECEIPT-REPORT");
-                            // 没配置审核流程,直接结束并处理信息
-                            if (workflow == null) {
-                                throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
-                            }
-                            // 开启审核流
-                            else {
-                                // 设置状态 已提交审核
-                                stockSaleReceiptReport.setWorkflowId(workflow.getId());
-                                stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
-                                workflowService.startInstance(workflow.getId(), stockSaleReceiptReport.getId());
-                            }
+                                .eq("contract_no", warehouseInOutInfo.getContractNo())
+                                .eq("deliver_type", "2")
+                                .eq("contract_type","1")
+                                .eq("delete_flag", "0"));
+                        if (contractManagementInfo != null) {
+                            //现货销售出库报表
+                            StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                            stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                            stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+                            stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
+                            stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                            stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                            stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+                            stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
+                            stockSaleReceiptReport.setNetWeight(-warehouseInOutInfo.getNetWeight());
+                            stockSaleReceiptReport.setReturnDate(warehouseInOutInfo.getInOutDate());
+                            stockSaleReceiptReport.setAmountIngReceivable(-warehouseInOutInfo.getNetWeight() * Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice())));
+                            stockSaleReceiptReport.setSettlementWeight(-warehouseInOutInfo.getNetWeight());
+                            stockSaleReceiptReport.setReturnFlag("1");
+                            stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                            stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                            stockSaleReceiptReportService.insert(stockSaleReceiptReport);
                         }
-                        // 退回的单子 再启用
-                        else {
-                            stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
-                            workflowService.activateInstance(stockSaleReceiptReport.getWorkflowId(), stockSaleReceiptReport.getId());
+                        //自运的销售合同
+                        ContractManagementInfo contractManagementInfo1 = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
+                                .eq("contract_no", warehouseInOutInfo.getContractNo())
+                                .eq("contract_type","1")
+                                .eq("deliver_type", "1")
+                                .eq("delete_flag", "0"));
+                        if (contractManagementInfo1 != null) {
+                            //现货销售出库报表
+                            StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                            stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                            stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+                            stockSaleReceiptReport.setProcessNo("退库");
+                            stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
+                            stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                            stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                            stockSaleReceiptReport.setTranCarNo(warehouseInOutInfo.getTranCarNo());
+                            stockSaleReceiptReport.setCaseNo(warehouseInOutInfo.getBoxNo()+","+warehouseInOutInfo.getBoxNoOther());
+                            stockSaleReceiptReport.setTitleNo(warehouseInOutInfo.getTitleNo());
+                            stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+                            stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
+                            stockSaleReceiptReport.setNetWeight(-warehouseInOutInfo.getNetWeight());
+                            stockSaleReceiptReport.setReturnDate(warehouseInOutInfo.getInOutDate());
+                            stockSaleReceiptReport.setAmountIngReceivable(-warehouseInOutInfo.getNetWeight() * Float.valueOf(String.valueOf(contractManagementInfo1.getUnitContractPrice())));
+                            stockSaleReceiptReport.setSettlementWeight(-warehouseInOutInfo.getNetWeight());
+                            stockSaleReceiptReport.setReturnFlag("1");
+                            stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                            stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                            stockSaleReceiptReportService.insert(stockSaleReceiptReport);
                         }
                     }
                     //更新库存量
@@ -945,52 +963,33 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                 else if ("1".equals(warehouseInOutInfo.getInOutFlag()) && "1".equals(warehouseBaseInfo.getWarehouseType())) {
                     //常用库销售出库类型
                     if ("1".equals(warehouseInOutInfo.getInOutTypeKey())) {
+                        //他运的销售合同
                         ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
-                                .eq("contract_no", warehouseInOutInfo.getContractNo()).eq("delete_flag", "0"));
-                        if (contractManagementInfo == null) {
-                            throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
-                        }
-                        //现货销售出库报表
-                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
-                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
-                        stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
-                        stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
-                        stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
-                        stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
-                        stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
-                        stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
-                        stockSaleReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
-                        stockSaleReceiptReport.setDeliveryDate(warehouseInOutInfo.getInOutDate());
-                        stockSaleReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
+                                .eq("contract_no", warehouseInOutInfo.getContractNo())
+                                .eq("deliver_type", "2")
+                                .eq("contract_type","1")
+                                .eq("delete_flag", "0"));
+                        if (contractManagementInfo != null) {
+                            //现货销售出库报表
+                            StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+                            stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+                            stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+                            stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
+                            stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                            stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                            stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+                            stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
+                            stockSaleReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
+                            stockSaleReceiptReport.setDeliveryDate(warehouseInOutInfo.getInOutDate());
+                            stockSaleReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
 
-                        stockSaleReceiptReport.setAmountIngReceivable(warehouseInOutInfo.getNetWeight() *
-                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
-                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
-                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
-                        stockSaleReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
-                        stockSaleReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
-                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
-                        boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockSaleReceiptReport.getWorkflowId());
-                        // 不是退回的单子
-                        if (isStartWorkflow) {
-                            Workflow workflow = workflowService
-                                    .findLatestWorkflowByBusinessCodeByApp(stockSaleReceiptReport.getCompId(), "SALE-RECEIPT-REPORT");
-                            // 没配置审核流程,直接结束并处理信息
-                            if (workflow == null) {
-                                throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
-                            }
-                            // 开启审核流
-                            else {
-                                // 设置状态 已提交审核
-                                stockSaleReceiptReport.setWorkflowId(workflow.getId());
-                                stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
-                                workflowService.startInstance(workflow.getId(), stockSaleReceiptReport.getId());
-                            }
-                        }
-                        // 退回的单子 再启用
-                        else {
-                            stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
-                            workflowService.activateInstance(stockSaleReceiptReport.getWorkflowId(), stockSaleReceiptReport.getId());
+                            stockSaleReceiptReport.setAmountIngReceivable(warehouseInOutInfo.getNetWeight() *
+                                    (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
+                            stockSaleReceiptReport.setAmountEdReceivable(0.0f);
+                            stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                            stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
+                            stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
+                            stockSaleReceiptReportService.insert(stockSaleReceiptReport);
                         }
                         Wrapper wrapper = new EntityWrapper<TranCarInfo>()
                                 .eq("contract_no", warehouseInOutInfo.getContractNo())
@@ -1063,100 +1062,103 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                 else if ("1".equals(warehouseInOutInfo.getInOutFlag()) && "2".equals(warehouseBaseInfo.getWarehouseType())) {
                     //临时库销售出库类型 且为自动创建的临时库时(采购报表进数据,销售报表也进数据)
                     if ("1".equals(warehouseInOutInfo.getInOutTypeKey()) && "1".equals(warehouseBaseInfo.getCreateType())) {
+                        //按出库重量结算
                         ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
-                                .eq("contract_no", warehouseBaseInfo.getWarehouseName()).eq("delete_flag", "0"));
-                        if (contractManagementInfo == null) {
-                            throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
-                        }
-                        //现货采购入库报表
-                        StockPurchaseReceiptReport stockPurchaseReceiptReport = new StockPurchaseReceiptReport();
-                        stockPurchaseReceiptReport.setId(IdGenerator.generateUUID());
-                        stockPurchaseReceiptReport.setCompId(warehouseBaseInfo.getCompId());
-                        stockPurchaseReceiptReport.setContractNo(contractManagementInfo.getContractNo());
-                        stockPurchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
-                        stockPurchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
-                        stockPurchaseReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
-                        stockPurchaseReceiptReport.setTare(warehouseInOutInfo.getTare());
-                        stockPurchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
-                        stockPurchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
-                        stockPurchaseReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
-                        stockPurchaseReceiptReport.setAmountIngPayable(warehouseInOutInfo.getNetWeight() *
-                                (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
-                        stockPurchaseReceiptReport.setAmountEdPayable(0.0f);
-                        stockPurchaseReceiptReport.setAmountNotPayable(stockPurchaseReceiptReport.getAmountIngPayable());
-                        stockPurchaseReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
-                        stockPurchaseReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
-                        stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
-                        boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockPurchaseReceiptReport.getWorkflowId());
-                        // 不是退回的单子
-                        if (isStartWorkflow) {
-                            Workflow workflow = workflowService
-                                    .findLatestWorkflowByBusinessCodeByApp(stockPurchaseReceiptReport.getCompId(), "STOCK-PROCUREMENT-RECEIPT-REPORT");
-                            // 没配置审核流程,直接结束并处理信息
-                            if (workflow == null) {
-                                throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                                .eq("contract_no", warehouseBaseInfo.getWarehouseName())
+                                .eq("settlement_weight_method", "1")
+                                .eq("deliver_type", "1")
+                                .eq("delete_flag", "0"));
+                        if (contractManagementInfo != null) {
+                            //现货采购入库报表
+                            StockPurchaseReceiptReport stockPurchaseReceiptReport = new StockPurchaseReceiptReport();
+                            stockPurchaseReceiptReport.setId(IdGenerator.generateUUID());
+                            stockPurchaseReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+                            stockPurchaseReceiptReport.setContractNo(contractManagementInfo.getContractNo());
+                            stockPurchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                            stockPurchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                            stockPurchaseReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+                            stockPurchaseReceiptReport.setTare(warehouseInOutInfo.getTare());
+                            stockPurchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
+                            stockPurchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
+                            stockPurchaseReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
+                            stockPurchaseReceiptReport.setAmountIngPayable(warehouseInOutInfo.getNetWeight() *
+                                    (Float.valueOf(String.valueOf(contractManagementInfo.getUnitContractPrice()))));
+                            stockPurchaseReceiptReport.setAmountEdPayable(0.0f);
+                            stockPurchaseReceiptReport.setAmountNotPayable(stockPurchaseReceiptReport.getAmountIngPayable());
+                            stockPurchaseReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
+                            stockPurchaseReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
+                            stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
+                            boolean isStartWorkflow = org.apache.commons.lang3.StringUtils.isBlank(stockPurchaseReceiptReport.getWorkflowId());
+                            // 不是退回的单子
+                            if (isStartWorkflow) {
+                                Workflow workflow = workflowService
+                                        .findLatestWorkflowByBusinessCodeByApp(stockPurchaseReceiptReport.getCompId(), "STOCK-PROCUREMENT-RECEIPT-REPORT");
+                                // 没配置审核流程,直接结束并处理信息
+                                if (workflow == null) {
+                                    throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+                                }
+                                // 开启审核流
+                                else {
+                                    // 设置状态 已提交审核
+                                    stockPurchaseReceiptReport.setWorkflowId(workflow.getId());
+                                    stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
+                                    workflowService.startInstance(workflow.getId(), stockPurchaseReceiptReport.getId());
+                                }
                             }
-                            // 开启审核流
+                            // 退回的单子 再启用
                             else {
-                                // 设置状态 已提交审核
-                                stockPurchaseReceiptReport.setWorkflowId(workflow.getId());
                                 stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
-                                workflowService.startInstance(workflow.getId(), stockPurchaseReceiptReport.getId());
+                                workflowService.activateInstance(stockPurchaseReceiptReport.getWorkflowId(), stockPurchaseReceiptReport.getId());
                             }
-                        }
-                        // 退回的单子 再启用
-                        else {
-                            stockPurchaseReceiptReportService.updateById(stockPurchaseReceiptReport);
-                            workflowService.activateInstance(stockPurchaseReceiptReport.getWorkflowId(), stockPurchaseReceiptReport.getId());
-                        }
+                         }
                         ContractManagementInfo contractManagementInfo1 = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
                                 .eq("contract_no", contractManagementInfo.getContractNo()).eq("delete_flag","0"));
                         if (contractManagementInfo1 == null) {
                             throw new YException(YExceptionEnum.CONTRACT_NO_NOT_EXSITS_ERROR);
                         }
                         //现货销售出库报表
-                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
-                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
-                        stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
-                        stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
-                        stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
-                        stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
-                        stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
-                        stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
-                        stockSaleReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
-                        stockSaleReceiptReport.setDeliveryDate(warehouseInOutInfo.getInOutDate());
-                        stockSaleReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
-
-                        stockSaleReceiptReport.setAmountIngReceivable(warehouseInOutInfo.getNetWeight() *
-                                (Float.valueOf(String.valueOf(contractManagementInfo1.getUnitContractPrice()))));
-                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
-                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
-                        stockSaleReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
-                        stockSaleReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
-
-                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
-                        boolean isStartWorkflow1 = org.apache.commons.lang3.StringUtils.isBlank(stockSaleReceiptReport.getWorkflowId());
-                        // 不是退回的单子
-                        if (isStartWorkflow1) {
-                            Workflow workflow = workflowService
-                                    .findLatestWorkflowByBusinessCodeByApp(stockSaleReceiptReport.getCompId(), "SALE-RECEIPT-REPORT");
-                            // 没配置审核流程,直接结束并处理信息
-                            if (workflow == null) {
-                                throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
-                            }
-                            // 开启审核流
-                            else {
-                                // 设置状态 已提交审核
-                                stockSaleReceiptReport.setWorkflowId(workflow.getId());
-                                stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
-                                workflowService.startInstance(workflow.getId(), stockSaleReceiptReport.getId());
-                            }
-                        }
-                        // 退回的单子 再启用
-                        else {
-                            stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
-                            workflowService.activateInstance(stockSaleReceiptReport.getWorkflowId(), stockSaleReceiptReport.getId());
-                        }
+//                        StockSaleReceiptReport stockSaleReceiptReport = new StockSaleReceiptReport();
+//                        stockSaleReceiptReport.setId(IdGenerator.generateUUID());
+//                        stockSaleReceiptReport.setCompId(warehouseBaseInfo.getCompId());
+//                        stockSaleReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
+//                        stockSaleReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+//                        stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+//                        stockSaleReceiptReport.setGrossWeight(warehouseInOutInfo.getGrossWeight());
+//                        stockSaleReceiptReport.setTare(warehouseInOutInfo.getTare());
+//                        stockSaleReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
+//                        stockSaleReceiptReport.setDeliveryDate(warehouseInOutInfo.getInOutDate());
+//                        stockSaleReceiptReport.setSettlementWeight(warehouseInOutInfo.getNetWeight());
+//
+//                        stockSaleReceiptReport.setAmountIngReceivable(warehouseInOutInfo.getNetWeight() *
+//                                (Float.valueOf(String.valueOf(contractManagementInfo1.getUnitContractPrice()))));
+//                        stockSaleReceiptReport.setAmountEdReceivable(0.0f);
+//                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+//                        stockSaleReceiptReport.setStatusFlag(StatusEnum.FORM_REVIEWED.getFlag());
+//                        stockSaleReceiptReport.setStatus(StatusEnum.FORM_REVIEWED.getName());
+//
+//                        stockSaleReceiptReportService.insert(stockSaleReceiptReport);
+//                        boolean isStartWorkflow1 = org.apache.commons.lang3.StringUtils.isBlank(stockSaleReceiptReport.getWorkflowId());
+//                        // 不是退回的单子
+//                        if (isStartWorkflow1) {
+//                            Workflow workflow = workflowService
+//                                    .findLatestWorkflowByBusinessCodeByApp(stockSaleReceiptReport.getCompId(), "SALE-RECEIPT-REPORT");
+//                            // 没配置审核流程,直接结束并处理信息
+//                            if (workflow == null) {
+//                                throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR);
+//                            }
+//                            // 开启审核流
+//                            else {
+//                                // 设置状态 已提交审核
+//                                stockSaleReceiptReport.setWorkflowId(workflow.getId());
+//                                stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
+//                                workflowService.startInstance(workflow.getId(), stockSaleReceiptReport.getId());
+//                            }
+//                        }
+//                        // 退回的单子 再启用
+//                        else {
+//                            stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
+//                            workflowService.activateInstance(stockSaleReceiptReport.getWorkflowId(), stockSaleReceiptReport.getId());
+//                        }
                         Wrapper wrapper = new EntityWrapper<TranCarInfo>()
                                 .eq("contract_no", warehouseInOutInfo.getContractNo())
                                 .eq("car_no", warehouseInOutInfo.getCarNo())