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 SrmBidAwardSaveReqVO { @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", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "供应商ID不能为空") private Long supplierId; @Schema(description = "投标ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "投标ID不能为空") private Long bidId; @Schema(description = "定标编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "AWARD2024010001") @NotEmpty(message = "定标编号不能为空") private String awardNo; @Schema(description = "定标状态", example = "0") private Integer awardStatus; @Schema(description = "定标金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "500000") @NotNull(message = "定标金额不能为空") private BigDecimal awardAmount; @Schema(description = "定标时间") private LocalDateTime awardTime; @Schema(description = "通知书文件名", example = "award_notice.pdf") private String noticeFileName; @Schema(description = "通知书文件地址", example = "https://example.com/files/xxx.pdf") private String noticeFileUrl; @Schema(description = "备注", example = "综合评标第一名") private String remark; }