From 0e19bbb301fd4efdcbf3285ade2a149db7d0a613 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期五, 15 八月 2025 18:34:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/org/jeecg/modules/mes/controller/MesProductionWorkOrderController.java |   37 ++++++++++++++++++++++++-------------
 1 files changed, 24 insertions(+), 13 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/mes/controller/MesProductionWorkOrderController.java b/src/main/java/org/jeecg/modules/mes/controller/MesProductionWorkOrderController.java
index b0321ff..c021299 100644
--- a/src/main/java/org/jeecg/modules/mes/controller/MesProductionWorkOrderController.java
+++ b/src/main/java/org/jeecg/modules/mes/controller/MesProductionWorkOrderController.java
@@ -9,18 +9,19 @@
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
-import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.modules.mes.dto.MesProductionWorkOrderRepublishRequest;
 import org.jeecg.modules.mes.dto.MesProductionWorkScheduleRequest;
+import org.jeecg.modules.mes.entity.MesKittingCompletenessCheck;
 import org.jeecg.modules.mes.entity.MesProductionWorkOrder;
 import org.jeecg.modules.mes.enums.ProductionWorkOrderStatus;
 import org.jeecg.modules.mes.service.IMesProductionWorkOrderService;
+import org.jeecg.modules.mes.utils.CommonUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
@@ -136,7 +137,7 @@
 
     @AutoLog(value = "鎺掍骇宸ュ崟-鍙戝竷鎺掍骇璁″垝")
     @ApiOperation(value = "鎺掍骇宸ュ崟-鍙戝竷鎺掍骇璁″垝", notes = "鎺掍骇宸ュ崟-鍙戝竷鎺掍骇璁″垝")
-    //@RequiresPermissions("mes:production:work:order:publish")
+    //@RequiresPermissions("org.jeecg.modules:mes_production_work_order:publish")
     @RequestMapping(value = "/publish", method = {RequestMethod.POST, RequestMethod.PUT})
     public Result<String> publish(@RequestParam("ids") String ids) {
         List<String> idList = Arrays.asList(ids.split(","));
@@ -153,7 +154,7 @@
             MesProductionWorkOrder publish = new MesProductionWorkOrder()
                     .setId(id)
                     .setPublishTime(new Date())
-                    .setPublisher(Objects.requireNonNull(getCurrentUser()).getUsername())
+                    .setPublisher(Objects.requireNonNull(CommonUtils.getCurrentUser()).getUsername())
                     .setWorkOrderStatus(ProductionWorkOrderStatus.PUBLISHED.name());
             publishList.add(publish);
         });
@@ -163,7 +164,7 @@
 
     @AutoLog(value = "鎺掍骇宸ュ崟-閲嶅彂甯冩帓浜ц鍒�")
     @ApiOperation(value="鎺掍骇宸ュ崟-閲嶅彂甯冩帓浜ц鍒�", notes="閲嶅彂甯冩帓浜ц鍒�")
-    //@RequiresPermissions("mes:production:work:order:republish")
+    //@RequiresPermissions("org.jeecg.modules:mes_production_work_order:republish")
     @PostMapping(value = "/republish")
     public Result<String> republish(@RequestBody MesProductionWorkOrderRepublishRequest request) {
         MesProductionWorkOrder workOrder = mesProductionWorkOrderService.getById(request.getId());
@@ -174,15 +175,32 @@
         MesProductionWorkOrder republish = new MesProductionWorkOrder()
                 .setId(request.getId())
                 .setPlanQuantity(request.getPlanQuantity())
-                .setRepublisher(Objects.requireNonNull(getCurrentUser()).getUsername())
+                .setRepublisher(Objects.requireNonNull(Objects.requireNonNull(CommonUtils.getCurrentUser()).getUsername()))
                 .setRepublishTime(new Date())
                 .setRepublishReason(request.getRepublishReason());
         mesProductionWorkOrderService.updateById(republish);
         return Result.ok("閲嶅彂甯冩垚鍔燂紒");
     }
 
+    @AutoLog(value = "鎺掍骇宸ュ崟-榻愬鎬ф鏌�")
+    @ApiOperation(value="鎺掍骇宸ュ崟-榻愬鎬ф鏌�", notes="榻愬鎬ф鏌�")
+    //@RequiresPermissions("org.jeecg.modules:mes_production_work_order:workOrderCompletenessCheck")
+    @GetMapping(value = "/workOrderCompletenessCheck")
+    public Result<List<MesKittingCompletenessCheck>> workOrderCompletenessCheck(@RequestParam("id") String id) {
+        MesProductionWorkOrder workOrder = mesProductionWorkOrderService.getById(id);
+        if (workOrder == null) {
+            return Result.error("宸ュ崟涓嶅瓨鍦紒");
+        }
+        if (!ProductionWorkOrderStatus.PUBLISHED.name().equals(workOrder.getWorkOrderStatus())) {
+            return Result.error("褰撳墠宸ュ崟鐘舵�佷笉鑳借繘琛岄綈濂楁�ф鏌ワ紒");
+        }
+        List<MesKittingCompletenessCheck> list = mesProductionWorkOrderService.workOrderCompletenessCheck(workOrder);
+        return Result.ok(list);
+    }
+
     @AutoLog(value = "鎺掍骇宸ュ崟-鎵ц鎺掍骇宸ュ崟璁″垝")
     @ApiOperation(value = "鎺掍骇宸ュ崟-鎵ц鎺掍骇宸ュ崟璁″垝", notes = "鎺掍骇宸ュ崟-鎵ц鎺掍骇宸ュ崟璁″垝")
+    //@RequiresPermissions("org.jeecg.modules:mes_production_work_order:execute")
     @GetMapping(value = "/execute")
     public Result<?> execute(@RequestParam("id") String id) {
         MesProductionWorkOrder workOrder = mesProductionWorkOrderService.getById(id);
@@ -284,11 +302,4 @@
         return super.importExcel(request, response, MesProductionWorkOrder.class);
     }
 
-    private LoginUser getCurrentUser() {
-        try {
-            return (LoginUser) SecurityUtils.getSubject().getPrincipal();
-        } catch (Exception e) {
-            return null;
-        }
-    }
 }

--
Gitblit v1.9.3