From e1590017b716d77f88f075364c55cfbdb480286f Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 02 十一月 2026 10:27:26 +0800
Subject: [PATCH] 诚发五金:生产链路支持无工序/无工艺路线单工序模式

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java
index c94d823..1aa9a97 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/pro/workorder/MesProWorkOrderController.java
@@ -285,7 +285,10 @@
 
             List<MesProWorkOrderProcessProgressVO> progressList = new ArrayList<>();
 
-            Map<Long, List<MesProTaskDO>> processTaskMap = convertMultiMap(tasks, MesProTaskDO::getProcessId);
+            // 鏈厤缃伐搴忕殑鍗曞伐搴忎换鍔� processId 涓虹┖锛屽垎缁勫墠鍏堣繃婊わ紝閬垮厤 null key 鎶� NPE
+            Map<Long, List<MesProTaskDO>> processTaskMap = convertMultiMap(
+                    tasks.stream().filter(task -> task.getProcessId() != null).toList(),
+                    MesProTaskDO::getProcessId);
             
             for (MesProWorkOrderProcessDO process : processes) {
                 List<MesProTaskDO> pTasks = processTaskMap.getOrDefault(process.getProcessId(), Collections.emptyList());

--
Gitblit v1.9.3