From 1dfdc3b0611211feba0570ec6d8cfad078c37135 Mon Sep 17 00:00:00 2001
From: xiaoyi <908147524@qq.com>
Date: 星期三, 26 八月 2026 15:13:28 +0800
Subject: [PATCH] feat 功能修正
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java
index ad02742..efc1adf 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/workorder/MesProWorkOrderServiceImpl.java
@@ -225,6 +225,20 @@
if (ObjUtil.notEqual(workOrder.getStatus(), MesProWorkOrderStatusEnum.CONFIRMED.getStatus())) {
throw exception(PRO_WORK_ORDER_NOT_CONFIRMED);
}
+ if (workOrder.getQuantityProduced() == null
+ || workOrder.getQuantity() == null
+ || workOrder.getQuantityProduced().compareTo(workOrder.getQuantity()) < 0) {
+ throw exception(PRO_WORK_ORDER_PRODUCTION_NOT_COMPLETE);
+ }
+ // 鏍¢獙姣忎釜浠诲姟鐨勫疄闄呬骇鍑烘槸鍚﹀凡杈炬垚璁″垝鏁伴噺锛堜换鍔$姸鎬佸彧鏈夊湪宸ュ崟瀹屾垚鏃剁敱绾ц仈鏂规硶缃负宸插畬鎴愶紝涓嶈兘鍦ㄦ鏍¢獙鐘舵�侊級
+ List<MesProTaskDO> tasks = taskService.getTaskListByWorkOrderIds(Collections.singletonList(id));
+ boolean hasUnfinishedTask = CollUtil.isEmpty(tasks) || tasks.stream().anyMatch(task ->
+ task.getProducedQuantity() == null
+ || task.getQuantity() == null
+ || task.getProducedQuantity().compareTo(task.getQuantity()) < 0);
+ if (hasUnfinishedTask) {
+ throw exception(PRO_WORK_ORDER_PRODUCTION_NOT_COMPLETE);
+ }
// 2. 绾ц仈瀹屾垚鎵�鏈夊叧鑱斾换鍔�
taskService.finishTaskByOrderId(id);
--
Gitblit v1.9.3