zhangyuewww 2 anni fa
parent
commit
650deaf12d

+ 5 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/TranProcessInfo.java

@@ -324,6 +324,11 @@ public class TranProcessInfo extends BaseModel<TranProcessInfo> {
      */
     @TableField(exist = false)
     private String priceType;
+    /**
+     * 结算重量方式(1出库重量结算2入库重量结算)
+     */
+    @TableField(exist = false)
+    private String settlementWeightMethod;
     /**
      * 任务类型
      */

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

@@ -203,6 +203,7 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
         if(contractManagementInfo != null){
             if (contractManagementInfo.getPriceType()!=null) {
                 tranProcessInfo.setPriceType(contractManagementInfo.getPriceType());
+                tranProcessInfo.setSettlementWeightMethod((contractManagementInfo.getSettlementWeightMethod()));
             }
         }
         if (tranTaskInfo.getTaskType()!=null) {
@@ -1227,10 +1228,11 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
      */
     @Override
     public String addTranCar(TranProcessInfo tranProcessInfo){
-        ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
-            .eq("contract_no",tranProcessInfo.getContractNo())
-            .eq("delete_flag","0"));
         TranTaskInfo tranTaskInfo=tranTaskInfoService.selectById(tranProcessInfo.getInfoId());
+        ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
+                .eq("contract_no",tranProcessInfo.getContractNo())
+                .eq("comp_id",tranTaskInfo.getCompId())
+                .eq("delete_flag","0"));
         //采购
         if("2".equals(contractManagementInfo.getContractType())){
             //更改运输调度发货运输方式
@@ -1313,53 +1315,56 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
             List<TranCarInfo> tranCarInfoList1 = tranProcessInfo.getTranCarInfoList1();
             if (!CollectionUtils.isEmpty(tranCarInfoList1)) {
                 for (TranCarInfo tranCarInfo : tranCarInfoList1) {
-                    tranCarInfo.setStatusFlag(StatusEnum.DELIVERED.getFlag());
-                    tranCarInfo.setStatus(StatusEnum.DELIVERED.getName());
-                    tranCarInfoService.updateById(tranCarInfo);
-                    StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
-                            .eq("process_id",tranProcessInfo.getId())
-                            .eq("car_no",tranCarInfo.getCarNo()));
-                    if (stockSaleReceiptReport != null){
-                        stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
-                        stockSaleReceiptReport.setFeedbackDate(tranCarInfo.getUnloadingDate());
-                        //按收货重量结算时
-                        if ("2".equals(contractManagementInfo.getSettlementWeightMethod()) && tranCarInfo.getUnloadNetWeight() > 0) {
-                            //扣重不为空
-                            if (tranCarInfo.getDeductionWeight() != null) {
-                                stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() - tranCarInfo.getDeductionWeight())));
-                            } else {
-                                stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
-                            }
-                            //定价销售
-                            if (contractManagementInfo.getUnitContractPrice() != null) {
-                                stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
-                                stockSaleReceiptReport.setAmountIngReceivable(stockSaleReceiptReport.getSettlementWeight() *
-                                        (contractManagementInfo.getUnitContractPrice()));
-                                stockSaleReceiptReport.setAmountEdReceivable(0.00);
-                                stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                    //卸车重量>0
+                    if (tranCarInfo.getUnloadNetWeight()!=null&&tranCarInfo.getUnloadNetWeight() > 0) {
+                        tranCarInfo.setStatusFlag(StatusEnum.DELIVERED.getFlag());
+                        tranCarInfo.setStatus(StatusEnum.DELIVERED.getName());
+                        tranCarInfoService.updateById(tranCarInfo);
+                        StockSaleReceiptReport stockSaleReceiptReport = stockSaleReceiptReportService.selectOne(new EntityWrapper<StockSaleReceiptReport>()
+                                .eq("process_id", tranProcessInfo.getId())
+                                .eq("car_no", tranCarInfo.getCarNo()));
+                        if (stockSaleReceiptReport != null) {
+                            stockSaleReceiptReport.setFeedbackWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
+                            stockSaleReceiptReport.setFeedbackDate(tranCarInfo.getUnloadingDate());
+                            //按收货重量结算时
+                            if ("2".equals(contractManagementInfo.getSettlementWeightMethod())) {
+                                //扣重不为空
+                                if (tranCarInfo.getDeductionWeight() != null) {
+                                    stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight() - tranCarInfo.getDeductionWeight())));
+                                } else {
+                                    stockSaleReceiptReport.setSettlementWeight(Double.valueOf(String.valueOf(tranCarInfo.getUnloadNetWeight())));
+                                }
+                                //定价销售
+                                if (contractManagementInfo.getUnitContractPrice() != null) {
+                                    stockSaleReceiptReport.setSettlementPrice(contractManagementInfo.getUnitContractPrice());
+                                    stockSaleReceiptReport.setAmountIngReceivable(stockSaleReceiptReport.getSettlementWeight() *
+                                            (contractManagementInfo.getUnitContractPrice()));
+                                    stockSaleReceiptReport.setAmountEdReceivable(0.00);
+                                    stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                }
+                                //随行就市
+                                else {
+                                    if (tranCarInfo.getContractPrice() != null) {
+                                        stockSaleReceiptReport.setSettlementPrice(tranCarInfo.getContractPrice());
+                                        stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight() * tranCarInfo.getContractPrice())));
+                                        stockSaleReceiptReport.setAmountEdReceivable(0.00);
+                                        stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                    }
+                                }
                             }
-                            //随行就市
-                            else {
-                                if (tranCarInfo.getContractPrice() != null) {
+                            //按出库重量结算时
+                            else if ("1".equals(contractManagementInfo.getSettlementWeightMethod())) {
+                                //随行就市
+                                if (contractManagementInfo.getUnitContractPrice() == null && tranCarInfo.getContractPrice() != null) {
                                     stockSaleReceiptReport.setSettlementPrice(tranCarInfo.getContractPrice());
-                                    stockSaleReceiptReport.setAmountIngReceivable(Double.valueOf(String.valueOf(stockSaleReceiptReport.getSettlementWeight() * tranCarInfo.getContractPrice())));
+                                    stockSaleReceiptReport.setAmountIngReceivable(stockSaleReceiptReport.getSettlementWeight() *
+                                            (tranCarInfo.getContractPrice()));
                                     stockSaleReceiptReport.setAmountEdReceivable(0.00);
                                     stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
                                 }
                             }
+                            stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
                         }
-                        //按出库重量结算时
-                        else if ("1".equals(contractManagementInfo.getSettlementWeightMethod())) {
-                            //随行就市
-                            if (contractManagementInfo.getUnitContractPrice() == null && tranCarInfo.getContractPrice() != null) {
-                                stockSaleReceiptReport.setSettlementPrice(tranCarInfo.getContractPrice());
-                                stockSaleReceiptReport.setAmountIngReceivable(stockSaleReceiptReport.getSettlementWeight() *
-                                        (tranCarInfo.getContractPrice()));
-                                stockSaleReceiptReport.setAmountEdReceivable(0.00);
-                                stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
-                            }
-                        }
-                        stockSaleReceiptReportService.updateById(stockSaleReceiptReport);
                     }
                 }
             }
@@ -1538,6 +1543,16 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
     public TranProcessInfo getThreeTranProcess (String id){
         //查看运输信息
         TranProcessInfo tranProcessInfo = this.selectById(id);
+        TranTaskInfo tranTaskInfo=tranTaskInfoService.selectById(tranProcessInfo.getInfoId());
+        ContractManagementInfo contractManagementInfo=contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
+                .eq("contract_no",tranProcessInfo.getContractNo())
+                .eq("comp_id",tranTaskInfo.getCompId()));
+        if(contractManagementInfo != null){
+            if (contractManagementInfo.getPriceType()!=null) {
+                tranProcessInfo.setPriceType(contractManagementInfo.getPriceType());
+                tranProcessInfo.setSettlementWeightMethod((contractManagementInfo.getSettlementWeightMethod()));
+            }
+        }
         //查看车次信息
         List<TranCarInfo> tranCarInfoList1 = tranCarInfoService.selectList(new EntityWrapper<TranCarInfo>()
                 .eq(TranCarInfo.QueryFiles.PROCESS_ID, id)

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

@@ -5011,6 +5011,9 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                                         tranCarInfo.setTitleNo(warehouseInOutInfo.getTitleNo());
                                         tranCarInfo.setCaseNoOther(warehouseInOutInfo.getBoxNoOther());
                                         tranCarInfo.setTitleNoOther(warehouseInOutInfo.getTitleNoOther());
+                                        if (weighingManagement.getContractPrice() != null) {
+                                            tranCarInfo.setContractPrice(Double.valueOf(String.valueOf(weighingManagement.getContractPrice())));
+                                        }
                                         stockSaleReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
                                         stockSaleReceiptReport.setCaseNo(warehouseInOutInfo.getBoxNo());
                                         stockSaleReceiptReport.setTitleNo(warehouseInOutInfo.getTitleNo());
@@ -5067,6 +5070,11 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                                         (Double.valueOf(String.valueOf(weighingManagement.getContractPrice()))));
                                 stockSaleReceiptReport.setAmountEdReceivable(0.00);
                                 stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                TranCarInfo tranCarInfo = tranCarInfoService.selectById(warehouseInOutInfo.getCarId());
+                                if (tranCarInfo != null) {
+                                    tranCarInfo.setContractPrice(Double.valueOf(String.valueOf(weighingManagement.getContractPrice())));
+                                    tranCarInfoService.updateById(tranCarInfo);
+                                }
                             }
                             stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());
                             stockSaleReceiptReport.setStatus(StatusEnum.TO_BE_RECEIVED.getName());
@@ -5275,6 +5283,11 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                                             (Double.valueOf(String.valueOf(weighingManagement.getContractPrice()))));
                                     stockSaleReceiptReport.setAmountEdReceivable(0.00);
                                     stockSaleReceiptReport.setAmountNotReceivable(stockSaleReceiptReport.getAmountIngReceivable());
+                                    TranCarInfo tranCarInfo = tranCarInfoService.selectById(warehouseInOutInfo.getCarId());
+                                    if (tranCarInfo != null) {
+                                        tranCarInfo.setContractPrice(Double.valueOf(String.valueOf(weighingManagement.getContractPrice())));
+                                        tranCarInfoService.updateById(tranCarInfo);
+                                    }
                                 }
                             }
                             stockSaleReceiptReport.setStatusFlag(StatusEnum.TO_BE_RECEIVED.getFlag());