package cn.iocoder.yudao.module.mes.controller.admin.pd.basedata.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 = "管理后台 - 优惠策略新增/修改 Request VO") @Data public class MesPdDiscountPolicySaveReqVO { @Schema(description = "编号", example = "1024") private Long id; @Schema(description = "策略名称", requiredMode = Schema.RequiredMode.REQUIRED) @NotEmpty(message = "策略名称不能为空") private String name; @Schema(description = "策略类型(1折扣/2立减)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "策略类型不能为空") private Integer policyType; @Schema(description = "策略值(折扣:0-1 比例;立减:金额)") private BigDecimal policyValue; @Schema(description = "适用对象类型(1服务套餐/2电压等级/3用电类型,可空=全局)") private Integer targetType; @Schema(description = "适用对象ID") private Long targetId; @Schema(description = "生效日期") private LocalDateTime startDate; @Schema(description = "失效日期") private LocalDateTime endDate; @Schema(description = "启用状态(1启用/0禁用)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "启用状态不能为空") private Integer status; }