# WeeklyMonthlyRevenueImportReportDTO.java

    package cloud.wconnect.rateshop.pojo.dto.weeklymonthlyrevenue;

    import jakarta.validation.constraints.NotNull;
    import lombok.Data;
    import org.hibernate.validator.constraints.Range;
    import org.springframework.web.multipart.MultipartFile;

    /**
     * DTO: Weekly Monthly Revenue Import Report
     *
     * @author zc
     * @date 2024/05/17
     */
    @Data
    public class WeeklyMonthlyRevenueImportReportDTO {

        /**
         * 分类 1:历史 2:当前和未来
         */
        @NotNull(message = "The category cannot be null")
        @Range(min = 1, max = 2, message = "The category must be in [1:History, 2:Forecast]")
        private Integer category;

        /**
         * 版本日期（yyyyMMdd)
         */
        @NotNull(message = "The versionDate cannot be null")
        private Long versionDate;

        /**
         * 数据开始日期(yyyyMMdd)
         */
        @NotNull(message = "The fromDate cannot be null")
        private Long startDate;

        /**
         * 数据结束日期(yyyyMMdd)
         */
        @NotNull(message = "The toDate cannot be null")
        private Long endDate;

        /**
         * 来源
         */
        @NotNull(message = "The source cannot be null")
        private String source;

        /**
         * 报告分类
         */
        @NotNull(message = "The reportType cannot be null")
        private Integer reportType;

        /**
         * 报告文件
         */
        @NotNull(message = "The file cannot be null")
        private MultipartFile file;
    }