package cn.iocoder.yudao.module.mdm.controller.admin.item.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.DecimalMin; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import lombok.Data; import java.math.BigDecimal; @Schema(description = "管理后台 - MDM 物料型号新增/修改 Request VO") @Data public class MdmItemModelSaveReqVO { @Schema(description = "型号编号", example = "1024") private Long id; @Schema(description = "物料编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "物料编号不能为空") private Long itemId; @Schema(description = "型号名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "4米/根") @NotBlank(message = "型号名称不能为空") @Size(max = 128, message = "型号名称长度不能超过 128 个字符") private String model; @Schema(description = "型号计量单位编号(该型号下出入库录入使用的单位)", requiredMode = Schema.RequiredMode.REQUIRED, example = "7") @NotNull(message = "型号计量单位不能为空") private Long unitMeasureId; @Schema(description = "换算比率:1 型号计量单位 = N 物料主计量单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "4") @NotNull(message = "换算比率不能为空") @DecimalMin(value = "0", inclusive = false, message = "换算比率必须大于 0") private BigDecimal unitMeasureRate; @Schema(description = "状态", example = "0") private Integer status; @Schema(description = "备注", example = "备注") private String remark; }