guoyujia il y a 6 mois
Parent
commit
68cdbd60f2

+ 15 - 0
src/main/java/cn/ezhizao/project/business/product/controller/BizCarrierController.java

@@ -331,6 +331,21 @@ public class BizCarrierController extends BaseController {
         if (bizDaywork.getDayworkCarriers().stream().anyMatch(v -> v.getCarrierCode().equals(bizDaywork.getNewCarrierCode()))) {
             return error("已使用该载具");
         }
+        //铁箱,且绑定过批次
+        if (!dayworkCarrierList.isEmpty() && carrierCategory.getIsAllowMore() == 1) {
+            List<Long> dayworkIds = dayworkCarrierList.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList());
+            List<BizDaywork> dayworkList = bizDayworkService.query().in("id", dayworkIds).list();
+            List<BizDayworkItem> dayworkItemList = bizDayworkItemService.query().in("daywork_id", dayworkIds).list();
+            for (Long dayworkId : dayworkIds){
+                List<BizDayworkItem> dayworkItem = dayworkItemList.stream().filter(item -> item.getDayworkId().equals(dayworkId)).sorted(Comparator.comparing(BizDayworkItem::getCreateTime).reversed()).collect(Collectors.toList());
+                String lastProcessStepNumber = dayworkItem.get(0).getProcessStepNumber();
+                //当前工序报工信息
+                List<BizDayworkItem> lastDayworkItem = dayworkItem.stream().filter(item -> item.getProcessStepNumber().equals(lastProcessStepNumber)).collect(Collectors.toList());
+                if (lastDayworkItem.stream().anyMatch(item -> item.getStatus().equals("4")||item.getStatus().equals("5")||item.getStatus().equals("7"))){
+                    return error("该载具绑定" + dayworkList.stream().filter(item -> item.getId().equals(dayworkId)).findFirst().orElse(new BizDaywork()).getLotCode()+"批次周转中,请取消周转");
+                }
+            }
+        }
         //在方法开始时已经查询到了箱号信息,所以不需要再查一遍
 //        BizCarrier carrier = new BizCarrier();
 //        carrier.setId(bizDaywork.getNewCarrierId());