贴标申请,仓储转运

This commit is contained in:
2026-09-28 11:59:08 +08:00
parent 0e62b2f45b
commit 2bb98d2047
14 changed files with 278 additions and 38 deletions
@@ -64,8 +64,8 @@ class CargoDiscardMysqlAcceptanceTest {
seedCartons(990001003L, 990001103L, 990001601L, "PALLET-C", "SKU-MAT-BLUE", "MAT", 7);
var approveRequest = new CargoDiscardRequests.Create(List.of(
new CargoDiscardRequests.Item(990001001L, "SKU-BOX-RED", 3),
new CargoDiscardRequests.Item(990001001L, "SKU-RACK-KITCHEN", 2)),
new CargoDiscardRequests.Item(990001001L, null, "SKU-BOX-RED", 3),
new CargoDiscardRequests.Item(990001001L, null, "SKU-RACK-KITCHEN", 2)),
"ACCEPT-DISCARD-APPROVE", "验收:破损货物,同意废弃");
var approved = service.create(CUSTOMER, "acceptance-creator", approveRequest);
assertEquals(20L, skuPackages(990001001L));
@@ -75,7 +75,7 @@ class CargoDiscardMysqlAcceptanceTest {
assertEquals(15L, skuPackages(990001001L));
var rejected = service.create(CUSTOMER, "acceptance-creator", new CargoDiscardRequests.Create(
List.of(new CargoDiscardRequests.Item(990001002L, "SKU-LAMP-WHITE", 4)),
List.of(new CargoDiscardRequests.Item(990001002L, null, "SKU-LAMP-WHITE", 4)),
"ACCEPT-DISCARD-REJECT", "验收:外箱可修复"));
assertEquals(10L, skuPackages(990001002L));
rejected = service.review(CUSTOMER, rejected.summary().discardNo(), "acceptance-reviewer",
@@ -84,14 +84,14 @@ class CargoDiscardMysqlAcceptanceTest {
assertEquals(10L, skuPackages(990001002L));
var pending = service.create(CUSTOMER, "acceptance-creator", new CargoDiscardRequests.Create(
List.of(new CargoDiscardRequests.Item(990001003L, "SKU-MAT-BLUE", 2)),
List.of(new CargoDiscardRequests.Item(990001003L, null, "SKU-MAT-BLUE", 2)),
"ACCEPT-DISCARD-PENDING", "验收:等待仓库审核"));
assertEquals(CargoDiscardService.PENDING_REVIEW, pending.summary().status());
assertEquals(7L, skuPackages(990001003L));
assertThrows(ResponseStatusException.class, () -> service.create(CUSTOMER, "acceptance-creator",
new CargoDiscardRequests.Create(List.of(
new CargoDiscardRequests.Item(990001003L, "SKU-MAT-BLUE", 99)),
new CargoDiscardRequests.Item(990001003L, null, "SKU-MAT-BLUE", 99)),
"ACCEPT-DISCARD-INSUFFICIENT", "验收:库存不足应失败")));
assertEquals(1, count("SELECT COUNT(*) FROM ll_cargo_discard_application WHERE customer_id=? AND status='APPROVED'"));