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; import java.time.LocalDateTime; @Schema(description = "管理后台 - SRM 招标项目创建/更新 Request VO") @Data public class SrmTenderProjectSaveReqVO { @Schema(description = "项目ID", example = "1") private Long id; @Schema(description = "招标编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZB2024010001") @NotEmpty(message = "招标编号不能为空") private String tenderNo; @Schema(description = "招标名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "2024年钢材采购招标") @NotEmpty(message = "招标名称不能为空") private String tenderName; @Schema(description = "招标类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "招标类型不能为空") private Integer tenderType; @Schema(description = "采购组织", example = "采购部") private String purchaseOrg; @Schema(description = "项目负责人ID", example = "1") private Long projectLeaderId; @Schema(description = "项目负责人名称", example = "李四") private String projectLeaderName; @Schema(description = "招标状态", example = "0") private Integer tenderStatus; @Schema(description = "预算金额", example = "1000000") private BigDecimal budgetAmount; @Schema(description = "开始时间") private LocalDateTime startTime; @Schema(description = "结束时间") private LocalDateTime endTime; @Schema(description = "开标时间") private LocalDateTime bidOpenTime; @Schema(description = "招标描述", example = "本次招标采购钢材一批") private String tenderDesc; @Schema(description = "资质要求", example = "需具备ISO9001认证") private String qualificationRequirements; @Schema(description = "采购申请ID", example = "1") private Long purchaseRequestId; }