# ScheduleHistoryAndForecastDTO.java

    package cloud.wconnect.workperformance.pojo.dto.schedule;

    import cloud.wconnect.commonlib.annotation.validator.DigitsCustom;
    import lombok.Data;

    import jakarta.validation.constraints.Max;
    import jakarta.validation.constraints.Min;
    import jakarta.validation.constraints.NotNull;
    import java.math.BigDecimal;

    /**
     * DTO：history and forecast
     * @author yyt
     * 2023/6/28
     */
    @Data
    public class ScheduleHistoryAndForecastDTO {

        /**
         * 日期
         */
        @NotNull(message = "the theDate must not be null")
        private Long theDate;

        /**
         * OCC%
         */
        @DigitsCustom(integer = 7, message = "the occPercent is wrong format")
        private BigDecimal occPercent;

        /**
         * ARRIVALS
         */
        @Min(value = 0, message = "the arrRooms min value is 0")
        @Max(value = 1_0000_0000L, message = "the arrRooms min exceed maximum limit: 1_0000_0000")
        private Integer arrRooms;

        /**
         * DEPARTURES
         */
        @Min(value = 0, message = "the depRooms min value is 0")
        @Max(value = 1_0000_0000L, message = "the depRooms min exceed maximum limit: 1_0000_0000")
        private Integer depRooms;

        /**
         * ROOMS SOLD
         */
        @Min(value = 0, message = "the totalOcc min value is 0")
        @Max(value = 1_0000_0000L, message = "the totalOcc min exceed maximum limit: 1_0000_0000")
        private Integer totalOcc;

    }