From eee03bbfea8b15d1a56ab63bd09a35c6c861c4cb Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 09 十一月 2026 13:01:08 +0800
Subject: [PATCH] feat(mes): 不合格品处置联动入库与生产订单

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationWorkerController.java |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationWorkerController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationWorkerController.java
index 2bf066d..465d010 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationWorkerController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/md/workstation/MesMdWorkstationWorkerController.java
@@ -4,6 +4,9 @@
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.util.collection.MapUtils;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import cn.iocoder.yudao.module.hrm.api.employee.HrmEmployeeApi;
+import cn.iocoder.yudao.module.hrm.api.employee.dto.HrmEmployeeSimpleRespDTO;
+import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.worker.MesMdWorkstationEmployeeRespVO;
 import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.worker.MesMdWorkstationWorkerRespVO;
 import cn.iocoder.yudao.module.mes.controller.admin.md.workstation.vo.worker.MesMdWorkstationWorkerSaveReqVO;
 import cn.iocoder.yudao.module.mes.dal.dataobject.md.workstation.MesMdWorkstationWorkerDO;
@@ -19,6 +22,7 @@
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
@@ -37,6 +41,9 @@
 
     @Resource
     private PostApi postApi;
+
+    @Resource
+    private HrmEmployeeApi hrmEmployeeApi;
 
     @PostMapping("/create")
     @Operation(summary = "鍒涘缓浜哄姏璧勬簮")
@@ -65,13 +72,38 @@
     @GetMapping("/list-by-workstation")
     @Operation(summary = "鑾峰緱浜哄姏璧勬簮鍒楄〃")
     @Parameter(name = "workstationId", description = "宸ヤ綔绔欑紪鍙�", required = true)
-    @PreAuthorize("@ss.hasPermission('mes:md-workstation:query')")
     public CommonResult<List<MesMdWorkstationWorkerRespVO>> getWorkstationWorkerList(
             @RequestParam("workstationId") Long workstationId) {
         List<MesMdWorkstationWorkerDO> list = workstationWorkerService.getWorkstationWorkerListByWorkstationId(workstationId);
         return success(buildWorkstationWorkerRespVOList(list));
     }
 
+    @GetMapping("/list-user-by-workstation")
+    @Operation(summary = "鑾峰緱宸ヤ綔绔欏搴斿矖浣嶇殑鍛樺伐鍒楄〃锛堝彇鑷憳宸ョ鐞嗘暟鎹紝涓嶈姹傚紑閫氱郴缁熻处鍙凤級")
+    @Parameter(name = "workstationId", description = "宸ヤ綔绔欑紪鍙�", required = true)
+    public CommonResult<List<MesMdWorkstationEmployeeRespVO>> getUserListByWorkstation(
+            @RequestParam("workstationId") Long workstationId) {
+        List<MesMdWorkstationWorkerDO> list = workstationWorkerService.getWorkstationWorkerListByWorkstationId(workstationId);
+        if (CollUtil.isEmpty(list)) {
+            return success(Collections.emptyList());
+        }
+        List<Long> postIds = cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList(list, MesMdWorkstationWorkerDO::getPostId);
+        if (CollUtil.isEmpty(postIds)) {
+            return success(Collections.emptyList());
+        }
+        List<HrmEmployeeSimpleRespDTO> employees = hrmEmployeeApi.getEmployeeListByPostIds(postIds);
+        List<MesMdWorkstationEmployeeRespVO> result = new ArrayList<>(employees.size());
+        for (HrmEmployeeSimpleRespDTO employee : employees) {
+            MesMdWorkstationEmployeeRespVO vo = new MesMdWorkstationEmployeeRespVO();
+            vo.setId(employee.getId());
+            vo.setNickname(employee.getName());
+            vo.setDeptId(employee.getDeptId());
+            vo.setPhone(employee.getPhone());
+            result.add(vo);
+        }
+        return success(result);
+    }
+
     // ==================== 鎷兼帴 VO ====================
 
     private List<MesMdWorkstationWorkerRespVO> buildWorkstationWorkerRespVOList(List<MesMdWorkstationWorkerDO> list) {

--
Gitblit v1.9.3