package cn.iocoder.yudao.module.srm.controller.admin.evaluation.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 SrmSupplierEvaluationSaveReqVO { @Schema(description = "评价ID", example = "1") private Long id; @Schema(description = "供应商ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "供应商ID不能为空") private Long supplierId; @Schema(description = "评价周期", requiredMode = Schema.RequiredMode.REQUIRED, example = "2024-Q1") @NotEmpty(message = "评价周期不能为空") private String evaluationPeriod; @Schema(description = "质量评分(百分制)", example = "90") private BigDecimal qualityScore; @Schema(description = "质量合格率", example = "98.5") private BigDecimal qualityPassRate; @Schema(description = "质量缺陷次数", example = "2") private Integer qualityDefectCount; @Schema(description = "交付评分(百分制)", example = "85") private BigDecimal deliveryScore; @Schema(description = "交付准时率", example = "95.0") private BigDecimal deliveryOnTimeRate; @Schema(description = "交付延迟次数", example = "3") private Integer deliveryDelayCount; @Schema(description = "价格评分(百分制)", example = "80") private BigDecimal priceScore; @Schema(description = "服务评分(百分制)", example = "88") private BigDecimal serviceScore; @Schema(description = "服务响应速度(小时)", example = "2") private Integer serviceResponseSpeed; @Schema(description = "备注", example = "本季度表现良好") private String remark; }