package cn.iocoder.yudao.module.wms.api.inventory.dto; import jakarta.validation.Valid; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; /** * WMS 入库请求 DTO * * @author 芋道源码 */ @Data public class WmsReceiptReqDTO { /** * 业务类型 * * 枚举 {@link cn.iocoder.yudao.module.wms.enums.inventory.WmsInventoryBizTypeEnum} */ @NotNull(message = "业务类型不能为空") private Integer bizType; /** * 业务单据 ID */ @NotNull(message = "业务单据ID不能为空") private Long bizId; /** * 业务单据号 */ private String bizNo; /** * 仓库编号 */ @NotNull(message = "仓库不能为空") private Long warehouseId; /** * 入库时间 */ private LocalDateTime receiptTime; /** * 备注 */ private String remark; /** * 入库明细 */ @NotEmpty(message = "入库明细不能为空") @Valid private List items; /** * 入库明细项 */ @Data public static class Item { /** * SKU 编号 */ @NotNull(message = "SKU不能为空") private Long skuId; /** * 入库数量 */ @NotNull(message = "入库数量不能为空") private BigDecimal quantity; /** * 单价(可选) */ private BigDecimal price; /** * 备注 */ private String remark; } }