wangxin 1 年間 前
コミット
a851ca7b1a

+ 66 - 66
src/main/java/cn/ezhizao/project/business/product/controller/BizDayworkItemController.java

@@ -805,72 +805,72 @@ public class BizDayworkItemController extends BaseController {
         return toAjax(bizDayworkItemService.removeBatchByIds(ids));
     }
     /***       外协周转。暂时注释       ***/
-//    @Log(title="外协周转申请")
-//    @Transactional
-//    @PostMapping("/turnoverOutsource")
-//    public AjaxResult turnoverOutsource(@RequestBody BizDayworkItem bizDayworkItem) throws NoSuchFieldException,IllegalAccessException {
-//        // 设置工时
-//        // 获取箱子关联的所有批次
-//        boolean batch = true;
-//        SysDept sysDept = sysDeptMapper.selectDeptByCode(bizDayworkItem.getDeptCode());
-//        bizDayworkItem.setDeptId(sysDept.getDeptId());
-//        bizDayworkItem.setDeptName(sysDept.getDeptName());
-//        List<BizDayworkCarrier> dayworkCarriers = bizDayworkCarrierService.query().eq("is_changed", 0).eq("daywork_id", bizDayworkItem.getDayworkId()).list();
-//        List<BizDayworkCarrier> allCarries = bizDayworkCarrierService.query().eq("is_changed", 0).in("carrier_id", dayworkCarriers.isEmpty() ? Collections.singletonList(0L) : dayworkCarriers.stream().map(BizDayworkCarrier::getCarrierId).collect(Collectors.toList())).list();
-//        // 关联批次的所有最后一条报工
-//        List<BizDayworkItem> bizDayworkItems = bizDayworkItemService.query().in("daywork_id", allCarries.isEmpty() ? Collections.singletonList(0L) : allCarries.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList())).in("status", Arrays.asList("0", "1", "2", "3")).orderByDesc("status").orderByDesc("create_time").list();
-//        List<BizDayworkItem> bizDayworkItemList = bizDayworkItemService.query().in("daywork_id", allCarries.isEmpty() ? Collections.singletonList(0L) : allCarries.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList())).list();
-//        List<BizDaywork> bizDayworks = bizDayworkService.query().in("id", allCarries.isEmpty() ? Collections.singletonList(0L) : allCarries.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList())).list();
-//        for (BizDaywork v : bizDayworks) {
-//            BizDayworkItem lastItem = bizDayworkItems.stream().filter(l -> l.getDayworkId().equals(v.getId())).findFirst().orElse(null);
-//            if (lastItem != null && lastItem.getStatus().equals("3")) {
-//                List<BizDayworkItem> allItem = bizDayworkItemList.stream().filter(l -> l.getDayworkId().equals(v.getId()) && l.getTechnologicalProcessDetailId().equals(lastItem.getTechnologicalProcessDetailId())).collect(Collectors.toList());
-//                Integer lot = allItem.stream().mapToInt(BizDayworkItem::getQualifiedNum).sum();
-//                BizDayworkItem bizItem = new BizDayworkItem();
-//                bizItem.setDayworkId(lastItem.getDayworkId());
-//                bizItem.setProcessId(lastItem.getProcessId());
-//                bizItem.setTechnologicalProcessDetailId(lastItem.getTechnologicalProcessDetailId());
-//                bizItem.setStatus(bizDayworkItem.getStatus());
-//                if (bizDayworkItem.getStatus().equals("7")||bizDayworkItem.getStatus().equals("4")) {
-//                    v.setDeptId(bizDayworkItem.getDeptId());
-//                    v.setProcessQualifiedNum(v.getTemporaryProcessQualifiedNum());
-//                    bizDayworkService.updateById(v);
-//                }
-//                if(v.getIsAmend()==1){
-//                    bizItem.setFormDayworkItemId(1L);
-//                }
-//                bizItem.setProdNum(v.getTemporaryProcessQualifiedNum());
-//                bizItem.setLotId(v.getLotId());
-//                bizItem.setLotCode(v.getLotCode());
-//                SysUser user = SecurityUtils.getLoginUser().getUser();
-//                bizItem.setUserId(user.getUserId());
-//                bizItem.setUserName(user.getUserName());
-//                bizItem.setNickName(user.getNickName());
-//                bizItem.setWorkingHours(0L);
-//                bizItem.setTenantId(lastItem.getTenantId());
-//                bizItem.setProductionPlanDetailId(lastItem.getProductionPlanDetailId());
-//                bizItem.setProductionPlanId(lastItem.getProductionPlanId());
-//                bizItem.setProductionPlanDetailSubDetailId(lastItem.getProductionPlanDetailSubDetailId());
-//                bizItem.setProductionPlanDetailSubDetailEquipmentId(lastItem.getProductionPlanDetailSubDetailEquipmentId());
-//                bizItem.setQualifiedNum(lot);
-//                bizItem.setTechnologicalProcessId(lastItem.getTechnologicalProcessId());
-//                bizItem.setProdNum(lot);
-//                bizItem.setEquipmentDetailId(lastItem.getEquipmentDetailId());
-//                bizItem.setEquipmentDetailCode(lastItem.getEquipmentDetailCode());
-//                bizItem.setDeptId(bizDayworkItem.getDeptId());
-//                bizItem.setDeptName(bizDayworkItem.getDeptName());
-//                bizItem.setStartTime(bizDayworkItem.getStartTime());
-//                bizItem.setTurnoverType(bizDayworkItem.getTurnoverType());
-//                bizItem.setTurnoverArea(bizDayworkItem.getTurnoverArea());
-//                bizItem.setPlaceId(bizDayworkItem.getPlaceId());
-//                bizItem.setPlace(bizDayworkItem.getPlace());
-//                bizItem.setProcessStepNumber(lastItem.getProcessStepNumber());
-//                batch = batch && bizDayworkItemService.saveOrUpdate(bizItem);
-//
-//            }
-//        }
-//        return success();
-//    }
+    @Log(title="外协周转申请")
+    @Transactional
+    @PostMapping("/turnoverOutsource")
+    public AjaxResult turnoverOutsource(@RequestBody BizDayworkItem bizDayworkItem) throws NoSuchFieldException,IllegalAccessException {
+        // 设置工时
+        // 获取箱子关联的所有批次
+        boolean batch = true;
+        SysDept sysDept = sysDeptMapper.selectDeptByCode(bizDayworkItem.getDeptCode());
+        bizDayworkItem.setDeptId(sysDept.getDeptId());
+        bizDayworkItem.setDeptName(sysDept.getDeptName());
+        List<BizDayworkCarrier> dayworkCarriers = bizDayworkCarrierService.query().eq("is_changed", 0).eq("daywork_id", bizDayworkItem.getDayworkId()).list();
+        List<BizDayworkCarrier> allCarries = bizDayworkCarrierService.query().eq("is_changed", 0).in("carrier_id", dayworkCarriers.isEmpty() ? Collections.singletonList(0L) : dayworkCarriers.stream().map(BizDayworkCarrier::getCarrierId).collect(Collectors.toList())).list();
+        // 关联批次的所有最后一条报工
+        List<BizDayworkItem> bizDayworkItems = bizDayworkItemService.query().in("daywork_id", allCarries.isEmpty() ? Collections.singletonList(0L) : allCarries.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList())).in("status", Arrays.asList("0", "1", "2", "3")).orderByDesc("status").orderByDesc("create_time").list();
+        List<BizDayworkItem> bizDayworkItemList = bizDayworkItemService.query().in("daywork_id", allCarries.isEmpty() ? Collections.singletonList(0L) : allCarries.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList())).list();
+        List<BizDaywork> bizDayworks = bizDayworkService.query().in("id", allCarries.isEmpty() ? Collections.singletonList(0L) : allCarries.stream().map(BizDayworkCarrier::getDayworkId).collect(Collectors.toList())).list();
+        for (BizDaywork v : bizDayworks) {
+            BizDayworkItem lastItem = bizDayworkItems.stream().filter(l -> l.getDayworkId().equals(v.getId())).findFirst().orElse(null);
+            if (lastItem != null && lastItem.getStatus().equals("3")) {
+                List<BizDayworkItem> allItem = bizDayworkItemList.stream().filter(l -> l.getDayworkId().equals(v.getId()) && l.getTechnologicalProcessDetailId().equals(lastItem.getTechnologicalProcessDetailId())).collect(Collectors.toList());
+                Integer lot = allItem.stream().mapToInt(BizDayworkItem::getQualifiedNum).sum();
+                BizDayworkItem bizItem = new BizDayworkItem();
+                bizItem.setDayworkId(lastItem.getDayworkId());
+                bizItem.setProcessId(lastItem.getProcessId());
+                bizItem.setTechnologicalProcessDetailId(lastItem.getTechnologicalProcessDetailId());
+                bizItem.setStatus(bizDayworkItem.getStatus());
+                if (bizDayworkItem.getStatus().equals("7")||bizDayworkItem.getStatus().equals("4")) {
+                    v.setDeptId(bizDayworkItem.getDeptId());
+                    v.setProcessQualifiedNum(v.getTemporaryProcessQualifiedNum());
+                    bizDayworkService.updateById(v);
+                }
+                if(v.getIsAmend()==1){
+                    bizItem.setFormDayworkItemId(1L);
+                }
+                bizItem.setProdNum(v.getTemporaryProcessQualifiedNum());
+                bizItem.setLotId(v.getLotId());
+                bizItem.setLotCode(v.getLotCode());
+                SysUser user = SecurityUtils.getLoginUser().getUser();
+                bizItem.setUserId(user.getUserId());
+                bizItem.setUserName(user.getUserName());
+                bizItem.setNickName(user.getNickName());
+                bizItem.setWorkingHours(0L);
+                bizItem.setTenantId(lastItem.getTenantId());
+                bizItem.setProductionPlanDetailId(lastItem.getProductionPlanDetailId());
+                bizItem.setProductionPlanId(lastItem.getProductionPlanId());
+                bizItem.setProductionPlanDetailSubDetailId(lastItem.getProductionPlanDetailSubDetailId());
+                bizItem.setProductionPlanDetailSubDetailEquipmentId(lastItem.getProductionPlanDetailSubDetailEquipmentId());
+                bizItem.setQualifiedNum(lot);
+                bizItem.setTechnologicalProcessId(lastItem.getTechnologicalProcessId());
+                bizItem.setProdNum(lot);
+                bizItem.setEquipmentDetailId(lastItem.getEquipmentDetailId());
+                bizItem.setEquipmentDetailCode(lastItem.getEquipmentDetailCode());
+                bizItem.setDeptId(bizDayworkItem.getDeptId());
+                bizItem.setDeptName(bizDayworkItem.getDeptName());
+                bizItem.setStartTime(bizDayworkItem.getStartTime());
+                bizItem.setTurnoverType(bizDayworkItem.getTurnoverType());
+                bizItem.setTurnoverArea(bizDayworkItem.getTurnoverArea());
+                bizItem.setPlaceId(bizDayworkItem.getPlaceId());
+                bizItem.setPlace(bizDayworkItem.getPlace());
+                bizItem.setProcessStepNumber(lastItem.getProcessStepNumber());
+                batch = batch && bizDayworkItemService.saveOrUpdate(bizItem);
+
+            }
+        }
+        return success();
+    }
 
     @Log(title="周转申请")
     @Transactional