test(firstleg): cover phase3 container loading flow

This commit is contained in:
2026-08-08 21:34:39 +08:00
parent 2dae8b2029
commit da85e30f33
8 changed files with 644 additions and 15 deletions
@@ -144,6 +144,16 @@ class SmartLoadingSqlContractTest {
.contains("UNIQUE KEY uk_loading_pick_history_operation (operation_id)")
.contains("上层拆分按业务规则向上取整")
.contains("CONSTRAINT chk_loading_pick_item_planned CHECK (planned_package_count > 0)")
.contains("CALL repair_phase3_loading_pick_task_foreign_keys()")
.contains("GROUP_CONCAT(CONCAT('DROP FOREIGN KEY `'")
.contains("item_fk_count <> 1 OR item_target_count <> 1")
.contains("history_fk_count <> 1 OR history_target_count <> 1")
.contains("FOREIGN KEY (pick_task_id) REFERENCES fl_loading_pick_task (id)")
.contains("referenced_column_name = 'id'")
.contains("柜次PDA明细任务外键不唯一或指向错误")
.contains("柜次PDA历史任务外键不唯一或指向错误")
.doesNotContain("DROP FOREIGN KEY fk_loading_pick_item_task")
.doesNotContain("DROP FOREIGN KEY fk_loading_pick_history_task")
.contains("trg_loading_pick_task_before_update")
.contains("trg_loading_pick_item_before_update")
.contains("trg_loading_pick_item_before_delete")
@@ -171,7 +181,8 @@ class SmartLoadingSqlContractTest {
.contains("tmp_phase3_inbound_role_grant")
.contains("DROP TEMPORARY TABLE IF EXISTS tmp_phase3_inbound_role_grant")
.contains("5102121, 0, 'PLATFORM'")
.contains("5102129, 0, 'PLATFORM'");
.contains("5102129, 0, 'PLATFORM'")
.contains("role.role_code IN ('PLATFORM_ADMIN', 'ORDER_OPERATOR')");
}
@Test
@@ -311,7 +311,8 @@ class SmartLoadingServiceTest {
value.setLoadingPlanId(planId);
value.setLoadingPlanItemId(itemId);
value.setActionType(action);
value.setAfterSnapshot("{\"requestHash\":\"" + hash + "\"}");
// MySQL JSON columns normalize a space after the colon; replay must parse structurally.
value.setAfterSnapshot("{\"requestHash\": \"" + hash + "\"}");
return value;
}