# HotelKpiMetricsSaveDTO.java

    package cloud.wconnect.workperformance.pojo.dto.hotelkpi.kpi.save;

    import jakarta.validation.Valid;
    import jakarta.validation.constraints.NotNull;
    import lombok.Data;
    import org.hibernate.validator.constraints.Range;

    import java.util.List;

    /**
     * DTO: Hotel KPI Metrics Save
     *
     * @author zc
     * @date 2024/06/27
     */
    @Data
    public class HotelKpiMetricsSaveDTO {

        /**
         * 日期类型
         */
        @NotNull(message = "The dateType cannot be null")
        @Range(min = 1, max = 4, message = "The dateType must be between [1:Week 2:Month 3:Quarter 4:Year]")
        private Integer dateType;

        /**
         * 日期
         */
        @NotNull(message = "The date cannot be null")
        private Long date;

        /**
         * 指标类型
         */
        @NotNull(message = "The metricsType cannot be null")
        private Integer metricsType;

        /**
         * 实际值
         */
        @Valid
        private List<HotelKpiMetricsSaveValueDTO> actual;

        /**
         * 目标值
         */
        @Valid
        private List<HotelKpiMetricsSaveValueDTO> target;

        /**
         * 达标值
         */
        @Valid
        private List<HotelKpiMetricsSaveValueDTO> cure;
    }