# RateShopRevParWidgetQuery.java

    package cloud.wconnect.rateshop.pojo.query.rateshop.widget;

    import lombok.Data;
    import org.hibernate.validator.constraints.Range;

    import jakarta.validation.constraints.NotEmpty;
    import jakarta.validation.constraints.NotNull;
    import java.util.List;

    /**
     * Query: widget for RevPar
     *
     * @author zc
     * @date 2024/04/08
     */
    @Data
    public class RateShopRevParWidgetQuery {

        /**
         * 资产 id 集合
         */
        @NotEmpty(message = "The propertyIds cannot be empty")
        private List<Integer> propertyIds;

        /**
         * 开始时间（yyyyMMdd）
         */
        @NotNull(message = "The startDate cannot be null")
        private Long startDate;

        /**
         * 结束时间（yyyyMMdd）
         */
        @NotNull(message = "The endDate cannot be null")
        private Long endDate;

        /**
         * occ 类型（1:PC Occ; 2:SC Occ）
         */
        @NotNull(message = "The type cannot be null")
        @Range(min = 1, max = 2, message = "The type must be 1 or 2")
        private Integer type;

        public static final int PC_OCC_TYPE = 1;
    }