优化
This commit is contained in:
@@ -64,19 +64,17 @@ public class OrderApplicationService {
|
||||
private Long createDraftInternal(long tenantId, long userId, OrderRequests.SaveRequest request) {
|
||||
productImageGuard.requireOwned(tenantId, request.cargoes());
|
||||
var snapshots = masterDataGuard.validate(tenantId, request);
|
||||
String inboundCodePrefix = pricingChannelGuard.requireAvailable(tenantId, request.receivingWarehouseId(),
|
||||
pricingChannelGuard.requireAvailable(tenantId, request.receivingWarehouseId(),
|
||||
request.channelCode(), request.destinationType());
|
||||
OrderEntity order = new OrderEntity();
|
||||
long orderId = IdWorker.getId();
|
||||
order.setId(orderId); order.setTenantId(tenantId); order.setOrderNo(nextNo(orderId));
|
||||
order.setStatus(OrderStatus.DRAFT);
|
||||
apply(order, tenantId, request, snapshots);
|
||||
order.setInboundCode(nextInboundCode(inboundCodePrefix));
|
||||
order.setCreatedBy(userId); order.setUpdatedBy(userId);
|
||||
repository.insertOrder(order);
|
||||
saveChildren(tenantId, userId, order.getId(), request);
|
||||
record(tenantId, order.getId(), null, OrderStatus.DRAFT, "CREATE", null, userId, null);
|
||||
prepareDraftInbound(order, request);
|
||||
return order.getId();
|
||||
}
|
||||
|
||||
@@ -116,7 +114,7 @@ public class OrderApplicationService {
|
||||
repository.replaceDraftChildren(tenantId, id);
|
||||
saveChildren(tenantId, userId, id, request);
|
||||
record(tenantId, id, before, order.getStatus(), "UPDATE", null, userId, null);
|
||||
prepareDraftInbound(order, request);
|
||||
if (before == OrderStatus.SUBMITTED) prepareDraftInbound(order, request);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
|
||||
@@ -29,6 +29,9 @@ class OrderPickupSqlContractTest {
|
||||
assertThat(relax).isGreaterThanOrEqualTo(0).isLessThan(clearDraft);
|
||||
assertThat(sql).contains(
|
||||
"column_name = 'requested_pickup_at'",
|
||||
"ALTER TABLE baiyue_order.ord_order ADD COLUMN requested_pickup_at DATETIME(3) NULL");
|
||||
"ALTER TABLE baiyue_order.ord_order ADD COLUMN requested_pickup_at DATETIME(3) NULL",
|
||||
"CREATE PROCEDURE assert_submitted_order_inbound_code()",
|
||||
"SIGNAL SQLSTATE '45000'");
|
||||
assertThat(sql).doesNotContain("CONCAT('RK-', o.id)");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@ class OrderApplicationServiceStateTest {
|
||||
assertThat(orderId).isNotNull();
|
||||
verify(eligibility, never()).requireApproved(anyLong());
|
||||
verify(repository).insertOrder(argThat(order -> order.getStatus() == OrderStatus.DRAFT
|
||||
&& order.getInboundCode().matches("PCHWK\\d{6}0001")));
|
||||
&& order.getInboundCode() == null));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user