# CustomersDTO.java

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

    import cloud.wconnect.commonlib.annotation.validator.DigitsCustom;
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    import org.hibernate.validator.constraints.Range;

    import java.math.BigDecimal;

    /**
     * DTO: Customer
     *
     * @author: yyt
     * 2024-04-09
     */
    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public class CustomersDTO {

        /**
         * Transient Revenue
         */
        @DigitsCustom(integer = 10, message = "the transientRevenue is wrong format")
        private BigDecimal transientRevenue;

        /**
         * Transient Rooms
         */
        @Range(min = 0, max = 1000000, message = "the transientRooms must in 1~1000000")
        private Integer transientRooms;

        /**
         * Transient Adr
         */
        private BigDecimal transientAdr;

        /**
         * Group Revenue
         */
        @DigitsCustom(integer = 10, message = "the groupRevenue is wrong format")
        private BigDecimal groupRevenue;

        /**
         * Group Rooms
         */
        @Range(min = 0, max = 1000000, message = "the groupRooms must in 1~1000000")
        private Integer groupRooms;

        /**
         * Group Adr
         */
        private BigDecimal groupAdr;

        /**
         * Contract Revenue
         */
        @DigitsCustom(integer = 10, message = "the contractRevenue is wrong format")
        private BigDecimal contractRevenue;

        /**
         * Contract Rooms
         */
        @Range(min = 0, max = 1000000, message = "the contractRooms must in 1~1000000")
        private Integer contractRooms;

        /**
         * Contract Adr
         */
        private BigDecimal contractAdr;

        public CustomersDTO(BigDecimal transientRevenue, Integer transientRooms, BigDecimal groupRevenue, Integer groupRooms,
                            BigDecimal contractRevenue, Integer contractRooms) {
            this.transientRevenue = transientRevenue;
            this.transientRooms = transientRooms;
            this.groupRevenue = groupRevenue;
            this.groupRooms = groupRooms;
            this.contractRevenue = contractRevenue;
            this.contractRooms = contractRooms;
        }

    }