zhangyuewww 2 vuotta sitten
vanhempi
commit
9a66f6cea0

+ 3 - 6
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/InOutWarehouseTaskServiceImpl.java

@@ -471,8 +471,7 @@ public class InOutWarehouseTaskServiceImpl extends ServiceImpl<InOutWarehouseTas
                 if (!CollectionUtils.isEmpty(warehouseInOutInfoAllList)) {
                 if (!CollectionUtils.isEmpty(warehouseInOutInfoAllList)) {
                     Float netWeight = 0f;
                     Float netWeight = 0f;
                     for (WarehouseInOutInfo warehouse : warehouseInOutInfoAllList) {
                     for (WarehouseInOutInfo warehouse : warehouseInOutInfoAllList) {
-                        //潮粮累计纯重,干粮累计净重
-                        netWeight = netWeight + (warehouse.getPureWeight()!=null?warehouse.getPureWeight():Float.valueOf(String.valueOf(warehouse.getNetWeight())));
+                        netWeight = netWeight +Float.valueOf(String.valueOf(warehouse.getNetWeight()));
                     }
                     }
                     inNetWeight = inNetWeight + netWeight;
                     inNetWeight = inNetWeight + netWeight;
                     inOutWarehouseTaska.setStorageVolume(inNetWeight);
                     inOutWarehouseTaska.setStorageVolume(inNetWeight);
@@ -485,8 +484,7 @@ public class InOutWarehouseTaskServiceImpl extends ServiceImpl<InOutWarehouseTas
                 if (!CollectionUtils.isEmpty(warehouseInOutInfoAllList1)) {
                 if (!CollectionUtils.isEmpty(warehouseInOutInfoAllList1)) {
                     Float netWeight = 0f;
                     Float netWeight = 0f;
                     for (WarehouseInOutInfo warehouse : warehouseInOutInfoAllList1) {
                     for (WarehouseInOutInfo warehouse : warehouseInOutInfoAllList1) {
-                        //潮粮累计纯重,干粮累计净重
-                        netWeight = netWeight + (warehouse.getPureWeight()!=null?warehouse.getPureWeight():Float.valueOf(String.valueOf(warehouse.getNetWeight())));
+                        netWeight = netWeight +Float.valueOf(String.valueOf(warehouse.getNetWeight()));
                     }
                     }
                     outNetWeight = outNetWeight + netWeight;
                     outNetWeight = outNetWeight + netWeight;
                     inOutWarehouseTaska.setDeliveryVolume(outNetWeight);
                     inOutWarehouseTaska.setDeliveryVolume(outNetWeight);
@@ -499,8 +497,7 @@ public class InOutWarehouseTaskServiceImpl extends ServiceImpl<InOutWarehouseTas
                 if (!CollectionUtils.isEmpty(warehouseInOutInfoAllList2)) {
                 if (!CollectionUtils.isEmpty(warehouseInOutInfoAllList2)) {
                     Float netWeight = 0f;
                     Float netWeight = 0f;
                     for (WarehouseInOutInfo warehouse : warehouseInOutInfoAllList2) {
                     for (WarehouseInOutInfo warehouse : warehouseInOutInfoAllList2) {
-                        //潮粮累计纯重,干粮累计净重
-                        netWeight = netWeight + (warehouse.getPureWeight()!=null?warehouse.getPureWeight():Float.valueOf(String.valueOf(warehouse.getNetWeight())));
+                        netWeight = netWeight +Float.valueOf(String.valueOf(warehouse.getNetWeight()));
                     }
                     }
                     stockReturnCount = stockReturnCount + netWeight;
                     stockReturnCount = stockReturnCount + netWeight;
                     inOutWarehouseTaska.setStockReturnCount(stockReturnCount);
                     inOutWarehouseTaska.setStockReturnCount(stockReturnCount);

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

@@ -228,6 +228,7 @@ public class TranProcessInfoServiceImpl extends ServiceImpl<TranProcessInfoMappe
                             tranCarInfo.setProcessId(tranProcessInfo.getId());
                             tranCarInfo.setProcessId(tranProcessInfo.getId());
                             tranCarInfo.setInfoId(tranProcessInfo.getInfoId());
                             tranCarInfo.setInfoId(tranProcessInfo.getInfoId());
                             tranCarInfo.setId(IdGenerator.generateUUID());
                             tranCarInfo.setId(IdGenerator.generateUUID());
+                            tranCarInfo.setContractNo(tranTaskInfo.getContractNo());
                             tranCarInfo.setStatusFlag(StatusEnum.NOT_LOADED.getFlag());
                             tranCarInfo.setStatusFlag(StatusEnum.NOT_LOADED.getFlag());
                             tranCarInfo.setStatus(StatusEnum.NOT_LOADED.getName());
                             tranCarInfo.setStatus(StatusEnum.NOT_LOADED.getName());
                             tranCarInfoService.insert(tranCarInfo);
                             tranCarInfoService.insert(tranCarInfo);

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

@@ -3485,37 +3485,83 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
 //                                    }
 //                                    }
                                 }
                                 }
                             }
                             }
-                            //常用库之间移库
-//                            else{
-//                                //查收货库
-//                                InOutWarehouseTask inOutWarehouseTask1 = inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
-//                                        .eq("relevance_id", inOutWarehouseTask.getRelevanceId())
-//                                        .eq("in_out_flag", "2")
-//                                        .eq("delete_flag", "0"));
-//                                //更新所在仓库收购库存
-//                                ContractInventoryDistribution contractInventoryDistribution1=contractInventoryDistributionService.selectOne(new EntityWrapper<ContractInventoryDistribution>()
-//                                        .eq("comp_id",inOutWarehouseTask1.getCompId()).eq("inventory_type","3").eq("warehouse",inOutWarehouseTask.getWarehouseName())
-//                                        .eq("locus_warehouse",inOutWarehouseTask1.getWarehouseName())
-//                                        .eq("goods_name",warehouseInOutInfo.getGoodsName()));
-//                                if (contractInventoryDistribution1!=null){
-//                                    contractInventoryDistribution1.setInventory(contractInventoryDistribution1.getInventory()+warehouseInOutInfo.getNetWeight());
-//                                    contractInventoryDistributionService.updateById(contractInventoryDistribution1);
-//                                }
-//                                else {
-//                                    ContractInventoryDistribution contractInventoryDistribution2=new ContractInventoryDistribution();
-//                                    contractInventoryDistribution2.setId(IdGenerator.generateUUID());
-//                                    contractInventoryDistribution2.setCompId(inOutWarehouseTask.getCompId());
-//                                    //所属仓库  发货库
-//                                    contractInventoryDistribution2.setWarehouse(inOutWarehouseTask.getWarehouseName());
-//                                    contractInventoryDistribution2.setInventory(warehouseInOutInfo.getNetWeight());
-//                                    //所在仓库  收货
-//                                    contractInventoryDistribution2.setLocusWarehouse(inOutWarehouseTask1.getWarehouseName());
-//                                    contractInventoryDistribution2.setGoodsName(warehouseInOutInfo.getGoodsName());
-//                                    contractInventoryDistribution2.setInventoryType("3");
-//                                    contractInventoryDistributionService.insert(contractInventoryDistribution2);
-//
-//                                }
-//                            }
+                            //船运移库入库生成汽运报表
+                            if ("散船".equals(warehouseInOutInfo.getOutType())||"集装箱船".equals(warehouseInOutInfo.getOutType())) {
+                                TranTaskInfo tranTaskInfo = tranTaskInfoService.selectOne(new EntityWrapper<TranTaskInfo>()
+                                        .eq("contract_no", warehouseInOutInfo.getContractNo())
+                                        .eq("comp_id", warehouseBaseInfo.getCompId()));
+                                if (tranTaskInfo != null) {
+                                    TranProcessInfo tranProcessInfo = tranProcessInfoService.selectOne(new EntityWrapper<TranProcessInfo>()
+                                            .eq("info_id", tranTaskInfo.getId()));
+                                    if (tranProcessInfo != null) {
+                                        //自运出库时手动加的车
+                                        if ("1".equals(warehouseInOutInfo.getSelfLoading()) || warehouseInOutInfo.getCarId() == null) {
+                                            List<TranCarInfo> tranCarInfoList = tranCarInfoService.selectList(new EntityWrapper<TranCarInfo>()
+                                                    .eq("contract_no", warehouseInOutInfo.getContractNo()).eq("fleet_flag", "0").eq("tran_type", "1"));
+                                            TranCarInfo tranCarInfo = new TranCarInfo();
+                                            tranCarInfo.setProcessId(tranProcessInfo.getId());
+                                            tranCarInfo.setTranPrice(String.valueOf(tranProcessInfo.getTranPrice() != null ? tranProcessInfo.getTranPrice() : 0f));
+                                            tranCarInfo.setInfoId(tranTaskInfo.getId());
+                                            tranCarInfo.setCompId(warehouseBaseInfo.getCompId());
+                                            tranCarInfo.setTranType("1");
+                                            tranCarInfo.setCarNo(warehouseInOutInfo.getCarNo());
+                                            String tranCarNo = "";
+                                            if ((tranCarInfoList.size() + 1) < 10) {
+                                                tranCarNo = "C00" + (tranCarInfoList.size() + 1);
+                                            } else if (tranCarInfoList.size() + 1 < 100) {
+                                                tranCarNo = "C0" + (tranCarInfoList.size() + 1);
+                                            } else {
+                                                tranCarNo = "C" + (tranCarInfoList.size() + 1);
+                                            }
+                                            tranCarInfo.setTranCarNo(tranCarNo);
+                                            tranCarInfo.setId(IdGenerator.generateUUID());
+                                            tranCarInfo.setContractNo(warehouseInOutInfo.getContractNo());
+                                            tranCarInfo.setStatusFlag(StatusEnum.DELIVERED.getFlag());
+                                            tranCarInfo.setStatus(StatusEnum.DELIVERED.getName());
+                                            if ("散船".equals(warehouseInOutInfo.getOutType())) {
+                                                tranCarInfo.setShipName(warehouseInOutInfo.getShipName());
+                                                tranCarInfo.setShipNo(warehouseInOutInfo.getShipNumber());
+                                            } else if ("集装箱船".equals(warehouseInOutInfo.getOutType())) {
+                                                tranCarInfo.setCaseNo(warehouseInOutInfo.getBoxNo());
+                                                tranCarInfo.setTitleNo(warehouseInOutInfo.getTitleNo());
+                                            }
+                                            warehouseInOutInfo.setCarId(tranCarInfo.getId());
+                                            warehouseInOutInfo.setTranCarNo(tranCarNo);
+                                            warehouseInOutInfoService.updateById(warehouseInOutInfo);
+                                            tranCarInfoService.insert(tranCarInfo);
+                                        }
+                                        //生成汽运报表
+                                        TranSettlementReport tranSettlementReport = new TranSettlementReport();
+                                        tranSettlementReport.setCompId(warehouseBaseInfo.getCompId());
+                                        tranSettlementReport.setCarId(warehouseInOutInfo.getCarId());
+                                        tranSettlementReport.setId(IdGenerator.generateUUID());
+                                        tranSettlementReport.setTranType("船运");
+                                        tranSettlementReport.setTranTypeKey("3");
+                                        tranSettlementReport.setShipType(warehouseInOutInfo.getOutType());
+                                        tranSettlementReport.setTaskNo(tranTaskInfo.getTaskNo());
+                                        tranSettlementReport.setContractNo(warehouseInOutInfo.getContractNo());
+                                        tranSettlementReport.setCarNo(warehouseInOutInfo.getCarNo());
+                                        tranSettlementReport.setTranCarNo(warehouseInOutInfo.getTranCarNo());
+                                        tranSettlementReport.setStartAddress(inOutWarehouseTask.getWarehouseName());
+                                        tranSettlementReport.setSettlementWeight(Float.valueOf(String.valueOf(warehouseInOutInfo.getNetWeight())));
+                                        //运输单价不为空
+                                        if (tranProcessInfo.getTranPrice() != null) {
+                                            //应付
+                                            tranSettlementReport.setAmountIngPayable(Float.valueOf(tranProcessInfo.getTranPrice()) * tranSettlementReport.getSettlementWeight());
+                                            //未付
+                                            tranSettlementReport.setAmountNotPayable(Float.valueOf(tranProcessInfo.getTranPrice()) * tranSettlementReport.getSettlementWeight());
+                                            tranSettlementReport.setTransportPrice(Float.valueOf(tranProcessInfo.getTranPrice()));
+                                        }
+                                        tranSettlementReport.setUnloadingImg(warehouseInOutInfo.getAddressUrl());
+                                        tranSettlementReport.setUnloadingWeight(Float.valueOf(String.valueOf(warehouseInOutInfo.getNetWeight())));
+                                        tranSettlementReport.setStatusFlag(StatusEnum.PENDING_PAY.getFlag());
+                                        tranSettlementReport.setStatus(StatusEnum.PENDING_PAY.getName());
+                                        tranSettlementReportService.insert(tranSettlementReport);
+                                    }
+                                } else {
+                                    throw new YException(YExceptionEnum.TRANTASK_NOT_CREATED_ERROR);
+                                }
+                            }
                         }
                         }
                         //入库时更新汽运报表卸车数据
                         //入库时更新汽运报表卸车数据
                         TranSettlementReport tranSettlementReport = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
                         TranSettlementReport tranSettlementReport = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
@@ -3523,8 +3569,9 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                         if (tranSettlementReport!=null) {
                         if (tranSettlementReport!=null) {
                             tranSettlementReport.setUnloadingWeight(Float.valueOf(String.valueOf(warehouseInOutInfo.getNetWeight())));
                             tranSettlementReport.setUnloadingWeight(Float.valueOf(String.valueOf(warehouseInOutInfo.getNetWeight())));
                             tranSettlementReport.setUnloadingImg(warehouseInOutInfo.getAddressUrl());
                             tranSettlementReport.setUnloadingImg(warehouseInOutInfo.getAddressUrl());
+                            if (tranSettlementReport.getLoadingWeight()!=null) {
                                 //损耗
                                 //损耗
-                            tranSettlementReport.setLossWeight(tranSettlementReport.getLoadingWeight() - tranSettlementReport.getUnloadingWeight());
+                                tranSettlementReport.setLossWeight(tranSettlementReport.getLoadingWeight() - tranSettlementReport.getUnloadingWeight());
                                 //汽运类型
                                 //汽运类型
                                 if (tranSettlementReport.getTranTypeKey().equals(NumberConstant.CONSTANT1)) {
                                 if (tranSettlementReport.getTranTypeKey().equals(NumberConstant.CONSTANT1)) {
                                     //结算重量
                                     //结算重量
@@ -3532,7 +3579,7 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                                         //卸车不为空时,结算重量=装卸取小
                                         //卸车不为空时,结算重量=装卸取小
                                         tranSettlementReport.setSettlementWeight(tranSettlementReport.getLoadingWeight() > tranSettlementReport.getUnloadingWeight() ? tranSettlementReport.getUnloadingWeight() : tranSettlementReport.getLoadingWeight());
                                         tranSettlementReport.setSettlementWeight(tranSettlementReport.getLoadingWeight() > tranSettlementReport.getUnloadingWeight() ? tranSettlementReport.getUnloadingWeight() : tranSettlementReport.getLoadingWeight());
                                     }
                                     }
-                                    if (tranSettlementReport.getTransportPrice()!=null) {
+                                    if (tranSettlementReport.getTransportPrice() != null) {
                                         //扣款
                                         //扣款
                                         if (tranSettlementReport.getLossWeight() <= (tranSettlementReport.getLoadingWeight() / 1000)) {
                                         if (tranSettlementReport.getLossWeight() <= (tranSettlementReport.getLoadingWeight() / 1000)) {
                                             tranSettlementReport.setDeductionAmount("0");
                                             tranSettlementReport.setDeductionAmount("0");
@@ -3545,7 +3592,8 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                                         }
                                         }
                                     }
                                     }
                                 }
                                 }
-                                tranSettlementReportService.updateById(tranSettlementReport);
+                            }
+                            tranSettlementReportService.updateById(tranSettlementReport);
                         }
                         }
                     }
                     }