zhangyuewww 2 anni fa
parent
commit
b2b8925cb4

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

@@ -1000,6 +1000,20 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                     }
                     //常用库退库入库类型
                     else if ("退库".equals(warehouseInOutInfo.getInOutType())) {
+                        //退库时减去关联出库任务完成量
+                        InOutWarehouseTask inOutWarehouseTask=inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
+                                .eq("in_out_task_no",warehouseInOutInfo.getInOutTaskNo())
+                                .eq("in_out_type","退库")
+                                .eq("comp_id",warehouseBaseInfo.getCompId()));
+                        if (inOutWarehouseTask!=null&&inOutWarehouseTask.getSourceId()!=null){
+                            InOutWarehouseTask inOutWarehouseTask1=inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
+                                    .eq("id",inOutWarehouseTask.getSourceId())
+                                    .eq("task_status","执行中"));
+                            if (inOutWarehouseTask1!=null){
+                                inOutWarehouseTask1.setCompletedQuantity(inOutWarehouseTask1.getCompletedQuantity()-warehouseInOutInfo.getNetWeight());
+                                inOutWarehouseTaskService.updateById(inOutWarehouseTask1);
+                            }
+                        }
                         //他运的销售合同
                         ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
                                 .eq("contract_no", warehouseInOutInfo.getContractNo())
@@ -4311,6 +4325,20 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
 
                     //常用库退库入库类型
                     else if ("退库".equals(warehouseInOutInfo.getInOutType())) {
+                        //退库时减去关联出库任务完成量
+                        InOutWarehouseTask inOutWarehouseTask=inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
+                            .eq("in_out_task_no",warehouseInOutInfo.getInOutTaskNo())
+                            .eq("in_out_type","退库")
+                            .eq("comp_id",warehouseBaseInfo.getCompId()));
+                        if (inOutWarehouseTask!=null&&inOutWarehouseTask.getSourceId()!=null){
+                            InOutWarehouseTask inOutWarehouseTask1=inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
+                                    .eq("id",inOutWarehouseTask.getSourceId())
+                                    .eq("task_status","执行中"));
+                            if (inOutWarehouseTask1!=null){
+                                inOutWarehouseTask1.setCompletedQuantity(inOutWarehouseTask1.getCompletedQuantity()-warehouseInOutInfo.getNetWeight());
+                                inOutWarehouseTaskService.updateById(inOutWarehouseTask1);
+                            }
+                        }
                         warehouseInOutInfo.setReturnTickFlag("2");
                         //检斤表
                         WeighingManagement weighingManagement = weighingManagementService.selectOne(new EntityWrapper<WeighingManagement>()

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

@@ -796,6 +796,16 @@ public class WeighingManagementServiceImpl extends ServiceImpl<WeighingManagemen
             if (inOutWarehouseTask != null) {
                 inOutWarehouseTask.setCompletedQuantity(inOutWarehouseTask.getCompletedQuantity() - weighingManagement1.getNetWeight()/1000);
                 inOutWarehouseTaskService.updateById(inOutWarehouseTask);
+                //退库退回时加回关联出库任务完成量
+                if ("退库".equals(inOutWarehouseTask.getInOutType())&&inOutWarehouseTask.getSourceId()!=null){
+                    InOutWarehouseTask inOutWarehouseTask1=inOutWarehouseTaskService.selectOne(new EntityWrapper<InOutWarehouseTask>()
+                            .eq("id",inOutWarehouseTask.getSourceId())
+                            .eq("task_status","执行中"));
+                    if (inOutWarehouseTask1!=null){
+                        inOutWarehouseTask1.setCompletedQuantity(inOutWarehouseTask1.getCompletedQuantity()+weighingManagement1.getNetWeight()/1000);
+                        inOutWarehouseTaskService.updateById(inOutWarehouseTask1);
+                    }
+                }
             }
             //已经入库的更新库存量
             if("3".equals(warehouseInOutInfo.getStatusFlag())){