Browse Source

重调度方法数据组装及排产抽成通用

yejian 3 years ago
parent
commit
c93529b11d

+ 3 - 1
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/OrderService.java

@@ -81,7 +81,7 @@ public interface OrderService extends SuperService<Order> {
      * 订单启用
      * @param model
      */
-    Order orderEnable(Order model);
+    R orderEnable(Order model);
 
     /**
      * 订单删除
@@ -91,4 +91,6 @@ public interface OrderService extends SuperService<Order> {
     void downloadOrderTemplate(HttpServletResponse httpServletResponse);
 
     R<Boolean> saveExcelOrder(Order order, List<Map> detailList);
+
+    R reschedulingPlanTasks();
 }

+ 17 - 8
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/impl/OrderServiceImpl.java

@@ -744,8 +744,22 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
     }
 
     @Override
-    public Order orderEnable(Order model){
+    public R orderEnable(Order model){
+        R r = reschedulingPlanTasks();
+        if(r.getIsSuccess()){
+            // 默认只有一键生产过后的订单可以暂停和启用,未一键生产过的订单无需暂停和启用,启用是找出所有的所有未加工的工件重新排序
+            model.setProduceStatus("2");
+            planMapper.updatePlanProduceStatus(model);
+
+            return R.success();
+        }else{
+            return r;
+        }
 
+    }
+
+    @Override
+    public R reschedulingPlanTasks() {
         // 找出当前所有的订单计划还未开始加工的工件进行重排
         QueryWrapper<Plan> planWrapper = new QueryWrapper<Plan>();
         planWrapper.eq("plan_status", "2");
@@ -802,7 +816,7 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
                 stationResourcesIds = stationUserLoginInfos.stream().map(p -> p.getStationId()).collect(Collectors.toList());
 
                 if(stationResourcesIds.size() == 0){
-                    return null;
+                    return R.fail("当前无上下料人员值守,无法分配任务");
                 }
             }
 
@@ -907,12 +921,7 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
             taskList.add(task);
         }
         taskService.updateBatchById(taskList);
-
-        // 默认只有一键生产过后的订单可以暂停和启用,未一键生产过的订单无需暂停和启用,启用是找出所有的所有未加工的工件重新排序
-        model.setProduceStatus("2");
-        planMapper.updatePlanProduceStatus(model);
-
-        return model;
+        return R.success();
     }
 
     @Override