| | |
| | | import jakarta.validation.constraints.DecimalMin; |
| | | import jakarta.validation.constraints.NotEmpty; |
| | | import jakarta.validation.constraints.NotNull; |
| | | import jakarta.validation.constraints.Size; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | |
| | | @Schema(description = "来源单据行 ID", example = "300") |
| | | private Long sourceLineId; |
| | | |
| | | // ========== 生产关联 ========== |
| | | |
| | | @Schema(description = "生产工单 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "10") |
| | | @NotNull(message = "生产工单不能为空") |
| | | private Long workOrderId; |
| | | |
| | | @Schema(description = "生产任务 ID", example = "20") |
| | | private Long taskId; |
| | | |
| | | @Schema(description = "工位 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "30") |
| | | @NotNull(message = "工位不能为空") |
| | | private Long workstationId; |
| | | |
| | | @Schema(description = "工序 ID", example = "40") |
| | | private Long processId; |
| | | |
| | | // ========== 物料 ========== |
| | | |
| | | @Schema(description = "产品物料 ID", example = "50") |
| | | @Schema(description = "批号", requiredMode = Schema.RequiredMode.REQUIRED, example = "BC20250101") |
| | | @NotEmpty(message = "批号不能为空") |
| | | @Size(max = 100, message = "批号长度不能超过 100 个字符") |
| | | private String batchCode; |
| | | |
| | | @Schema(description = "产品物料 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "50") |
| | | @NotNull(message = "产品物料不能为空") |
| | | private Long itemId; |
| | | |
| | | @Schema(description = "质检方案 ID", example = "5") |
| | | private Long templateId; |
| | | |
| | | // ========== 数量 ========== |
| | | |
| | | @Schema(description = "检测数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "100") |