guoyujia 4 月之前
父節點
當前提交
04e68bc306
共有 1 個文件被更改,包括 23 次插入15 次删除
  1. 23 15
      src/main/java/cn/ezhizao/project/business/controller/BizReturnReceiptController.java

+ 23 - 15
src/main/java/cn/ezhizao/project/business/controller/BizReturnReceiptController.java

@@ -72,6 +72,8 @@ public class BizReturnReceiptController extends BaseController
     @Resource
     @Resource
     private IBizOutsourcedOrderService bizOutsourcedOrderService;
     private IBizOutsourcedOrderService bizOutsourcedOrderService;
     @Resource
     @Resource
+    private IBizDayworkService bizDayworkService;
+    @Resource
     HttpServletRequest request;
     HttpServletRequest request;
 
 
     final private String processInspectionNoKey = "processInspectionCode";
     final private String processInspectionNoKey = "processInspectionCode";
@@ -353,21 +355,27 @@ public class BizReturnReceiptController extends BaseController
         return success();
         return success();
     }
     }
     public void updateOutsourceDetailDept(List<BizReturnReceiptDetail> detailInfo){
     public void updateOutsourceDetailDept(List<BizReturnReceiptDetail> detailInfo){
-        //需要收回审核的批次
-        List<BizReturnReceiptDetail> returnReceiptDetailList = detailInfo.stream().filter(v -> v.getStatus() == 1).collect(Collectors.toList());
-        if(!returnReceiptDetailList.isEmpty()){
-            List<Long> outsourceDetailIds = returnReceiptDetailList.stream().map(BizReturnReceiptDetail::getOutsourceDetailId).distinct().collect(Collectors.toList());
-            List<BizOutsourcedOrderDetail> outsourceOrderDetailList = bizOutsourcedOrderDetailService.query().in("id", outsourceDetailIds).list();
-            List<Long> masterIds = outsourceOrderDetailList.stream().map(BizOutsourcedOrderDetail::getMasterId).collect(Collectors.toList());
-            //内部外协发出单
-            List<BizOutsourcedOrder> outsourcedOrderList = bizOutsourcedOrderService.query().in("id", masterIds).eq("is_inner_outsource",1).list();
-            if(!outsourcedOrderList.isEmpty()){
-                List<Long> hasInnerOutsouceIds = outsourcedOrderList.stream().map(BizOutsourcedOrder::getId).collect(Collectors.toList());
-                List<BizOutsourcedOrderDetail> collect = outsourceOrderDetailList.stream().filter(v -> hasInnerOutsouceIds.contains(v.getMasterId())).collect(Collectors.toList());
-                collect.forEach(v->{
-                    v.setProductionDeptId(-1L);
-                });
-                bizOutsourcedOrderDetailService.updateBatchById(collect);
+        //判断批次是否干完了
+        List<Long> dayworkIds = detailInfo.stream().map(BizReturnReceiptDetail::getDayworkId).distinct().collect(Collectors.toList());
+        List<BizDaywork> dayworkList = bizDayworkService.query().in("id", dayworkIds).eq("status",2).list();
+        if(!dayworkList.isEmpty()) {
+            List<Long> dayworkId = dayworkList.stream().map(BizDaywork::getId).collect(Collectors.toList());
+            //需要收回审核的批次
+            List<BizReturnReceiptDetail> returnReceiptDetailList = detailInfo.stream().filter(v -> v.getStatus() == 1 && dayworkId.contains(v.getDayworkId())).collect(Collectors.toList());
+            if (!returnReceiptDetailList.isEmpty()) {
+                List<Long> outsourceDetailIds = returnReceiptDetailList.stream().map(BizReturnReceiptDetail::getOutsourceDetailId).distinct().collect(Collectors.toList());
+                List<BizOutsourcedOrderDetail> outsourceOrderDetailList = bizOutsourcedOrderDetailService.query().in("id", outsourceDetailIds).list();
+                List<Long> masterIds = outsourceOrderDetailList.stream().map(BizOutsourcedOrderDetail::getMasterId).collect(Collectors.toList());
+                //内部外协发出单
+                List<BizOutsourcedOrder> outsourcedOrderList = bizOutsourcedOrderService.query().in("id", masterIds).eq("is_inner_outsource", 1).list();
+                if (!outsourcedOrderList.isEmpty()) {
+                    List<Long> hasInnerOutsouceIds = outsourcedOrderList.stream().map(BizOutsourcedOrder::getId).collect(Collectors.toList());
+                    List<BizOutsourcedOrderDetail> collect = outsourceOrderDetailList.stream().filter(v -> hasInnerOutsouceIds.contains(v.getMasterId())).collect(Collectors.toList());
+                    collect.forEach(v -> {
+                        v.setProductionDeptId(-1L);
+                    });
+                    bizOutsourcedOrderDetailService.updateBatchById(collect);
+                }
             }
             }
         }
         }
     }
     }