优化
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package com.baiyue.order.dto;
|
||||
|
||||
import jakarta.validation.constraints.Min;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import jakarta.validation.constraints.Positive;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/** Order-domain contract consumed by Firstleg when a container pick is settled. */
|
||||
public final class OrderSplitDtos {
|
||||
private OrderSplitDtos() {}
|
||||
|
||||
public record CreateRequest(
|
||||
@Positive Long tenantId,
|
||||
@Positive Long parentOrderId,
|
||||
@Positive Long sourceOrderId,
|
||||
@Positive Long loadingPlanId,
|
||||
@Positive Long containerBookingId,
|
||||
@NotNull @Min(1) Integer sourcePackageCount,
|
||||
@NotNull @Min(1) Integer loadedPackageCount,
|
||||
@NotNull @Min(0) Integer remainingPackageCount,
|
||||
@NotNull @Min(0) Integer expectedParentVersion,
|
||||
@NotBlank String idempotencyKey,
|
||||
String operationId,
|
||||
List<QuantityLine> lines,
|
||||
String operatorName
|
||||
) {}
|
||||
|
||||
public record QuantityLine(@Positive Long sourceDetailId, @NotNull @Min(1) Integer packageCount) {}
|
||||
|
||||
public record Response(
|
||||
Long parentOrderId, String parentOrderNo, Integer parentVersion,
|
||||
Child loadedChild, Child remainderChild, Integer sourcePackageCount,
|
||||
Integer loadedPackageCount, Integer remainingPackageCount,
|
||||
Long loadingPlanId, Long containerBookingId, String idempotencyKey,
|
||||
LocalDateTime createdAt
|
||||
) {}
|
||||
|
||||
public record Child(Long orderId, String orderNo, Integer splitSequence,
|
||||
String splitRole, Integer packageCount) {}
|
||||
|
||||
public record Tree(Long parentOrderId, String parentOrderNo, Integer parentVersion,
|
||||
List<Child> children, Integer allocatedPackageCount,
|
||||
Integer remainingPackageCount) {}
|
||||
}
|
||||
Reference in New Issue
Block a user