package cn.iocoder.yudao.module.mes.controller.admin.wm.miscissue.vo.line; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.DecimalMin; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.math.BigDecimal; @Schema(description = "管理后台 - MES 杂项出库单行新增/修改 Request VO") @Data public class MesWmMiscIssueLineSaveReqVO { @Schema(description = "编号", example = "1024") private Long id; @Schema(description = "出库单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "出库单编号不能为空") private Long issueId; @Schema(description = "来源单据行ID", example = "1") private Long sourceDocLineId; @Schema(description = "库存记录ID", example = "1") private Long materialStockId; @Schema(description = "物料编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "物料编号不能为空") private Long itemId; @Schema(description = "出库数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "100.00") @NotNull(message = "出库数量不能为空") @DecimalMin(value = "0.01", message = "出库数量必须大于0") private BigDecimal quantity; @Schema(description = "批次编号", example = "1") private Long batchId; @Schema(description = "批次号", example = "BATCH20260301") private String batchCode; @Schema(description = "仓库编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "仓库不能为空") private Long warehouseId; @Schema(description = "库区编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "库区不能为空") private Long locationId; @Schema(description = "库位编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "库位不能为空") private Long areaId; @Schema(description = "备注", example = "备注") private String remark; }