From 5072520172e8f45e3ccb8afc26cf0c8186ba4cdd Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 19 十月 2026 16:31:42 +0800
Subject: [PATCH] refactor(mes): 重构质量管理和批次绑定功能
---
yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/qc/seedquality/SeedQualityGroupTest.java | 29 +++++++++++++++++++++++++++++
1 files changed, 29 insertions(+), 0 deletions(-)
diff --git a/yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/qc/seedquality/SeedQualityGroupTest.java b/yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/qc/seedquality/SeedQualityGroupTest.java
index ac70078..6ccfae7 100644
--- a/yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/qc/seedquality/SeedQualityGroupTest.java
+++ b/yudao-module-mes/src/test/java/cn/iocoder/yudao/module/mes/service/qc/seedquality/SeedQualityGroupTest.java
@@ -78,4 +78,33 @@
var proxy=(MesQcSeedQualityService)factory.getProxy();
assertThrows(IllegalStateException.class,()->proxy.submitGroup(req));assertEquals(0,jdbc.queryForObject("SELECT COUNT(*) FROM qc_result",Integer.class));
}
+ @Test void retestScopePreviewSeparatesWorkflowStages() {
+ when(qualities.selectListByCodes(any())).thenReturn(List.of(
+ MesQcSeedQualityDO.builder().id(11L).code("B1").workflowStatus(10).build(),
+ MesQcSeedQualityDO.builder().id(12L).code("B2").workflowStatus(50).build()));
+ var result = service.resolveRetestScope("PALLET-BUS", "PALLET");
+ assertEquals(List.of(11L), result.get("retestIds"));
+ assertEquals(List.of(12L), result.get("initialRecheckIds"));
+ }
+ @Test void retestScopeRejectsStaleConfirmedList() {
+ when(qualities.selectListByCodesForUpdate(any())).thenReturn(List.of(
+ MesQcSeedQualityDO.builder().id(11L).code("B1").workflowStatus(10).build(),
+ MesQcSeedQualityDO.builder().id(12L).code("B2").workflowStatus(10).build()));
+ var request = new MesQcSeedQualityScopeRetestReqVO();
+ request.setCode("BATCH-BUS"); request.setScanType("BATCH"); request.setWorkflowStatus(10);
+ request.setQualityIds(List.of(11L)); request.setIndicators(List.of());
+ assertThrows(IllegalArgumentException.class, () -> service.retestScope(request));
+ verify(service, never()).retest(anyLong(), any());
+ }
+ @Test void retestScopeProcessesAllConfirmedBags() {
+ when(qualities.selectListByCodesForUpdate(any())).thenReturn(List.of(
+ MesQcSeedQualityDO.builder().id(11L).code("B1").workflowStatus(10).build(),
+ MesQcSeedQualityDO.builder().id(12L).code("B2").workflowStatus(10).build()));
+ doNothing().when(service).retest(anyLong(), any());
+ var request = new MesQcSeedQualityScopeRetestReqVO();
+ request.setCode("BATCH-BUS"); request.setScanType("BATCH"); request.setWorkflowStatus(10);
+ request.setQualityIds(List.of(11L, 12L)); request.setIndicators(List.of());
+ assertEquals(2, service.retestScope(request).get("processedCount"));
+ verify(service, times(2)).retest(anyLong(), any());
+ }
}
--
Gitblit v1.9.3