package cn.iocoder.yudao.module.crm.controller.admin.salesTarget.vo.analysis; import cn.iocoder.yudao.framework.common.validation.InEnum; import cn.iocoder.yudao.module.crm.enums.salesTarget.CrmSalesTargetDimensionEnum; import cn.iocoder.yudao.module.crm.enums.salesTarget.CrmSalesTargetPeriodTypeEnum; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; @Schema(description = "管理后台 - CRM 销售目标达成分析 Request VO") @Data public class CrmSalesTargetAnalysisReqVO { @Schema(description = "周期类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "周期类型不能为空") @InEnum(CrmSalesTargetPeriodTypeEnum.class) private Integer periodType; @Schema(description = "周期值,如 2026 / 2026-Q1 / 2026-07", requiredMode = Schema.RequiredMode.REQUIRED, example = "2026") @NotEmpty(message = "周期值不能为空") private String periodValue; @Schema(description = "状态,为空则全部", example = "1") private Integer status; @Schema(description = "目标维度,为空则全部", example = "1") @InEnum(CrmSalesTargetDimensionEnum.class) private Integer targetDimension; }