package cn.iocoder.yudao.module.srm.controller.admin.tender.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.math.BigDecimal; @Schema(description = "管理后台 - SRM 招标物料创建/更新 Request VO") @Data public class SrmTenderMaterialSaveReqVO { @Schema(description = "物料ID", example = "1") private Long id; @Schema(description = "招标项目ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "招标项目ID不能为空") private Long tenderProjectId; @Schema(description = "产品ID", example = "1") private Long productId; @Schema(description = "产品编号", example = "ITEM-0001") private String productCode; @Schema(description = "产品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "Q235钢材") @NotEmpty(message = "产品名称不能为空") private String productName; @Schema(description = "产品规格", example = "10mm") private String productSpec; @Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000") @NotNull(message = "数量不能为空") private BigDecimal quantity; @Schema(description = "单位", requiredMode = Schema.RequiredMode.REQUIRED, example = "吨") @NotEmpty(message = "单位不能为空") private String unit; @Schema(description = "技术要求", example = "符合GB/T 700-2006标准") private String techRequirement; @Schema(description = "预估单价", example = "5000") private BigDecimal estimatedPrice; @Schema(description = "排序", example = "1") private Integer sort; }