# CompRoomDTO.java

    package cloud.wconnect.frontoffice.pojo.dto.comproom;

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

    import jakarta.validation.constraints.*;
    import java.util.List;

    /**
     * comp room dto
     */
    @Data
    public class CompRoomDTO {

        /**
         * 主键id
         */
        @NotNull(message = "The id cannot be null")
        private Long id;

        /**
         * 资产id
         */
        @Null(message = "The propertyId must be null")
        private Integer propertyId;

        /**
         * 来宾姓名或公司名
         */
        @NotBlank(message = "The guestName cannot be blank")
        @Length(max = 60,message = "the guestName is limited 60 characters")
        private String guestName;

        /**
         * 客人类型
         */
        @NotNull(message = "The guestType cannot be blank")
        private Integer guestType;

        /**
         * 入住日期 (年月日)
         */
        @NotNull(message = "the checkInDate must not be null")
        private Long checkInDate;

        /**
         * 退房日期 (年月日)
         */
        @NotNull(message = "the checkOutDate must not be null")
        private Long checkOutDate;

        /**
         * 房间号集合
         */
        @NotNull(message = "The roomNumberList must not be null")
        @Size(max = 20, message = "The roomNumberList size max is 20")
        private List<String> roomNumberList;

        /**
         * 房间数
         */
        private Integer numberOfRooms;

        /**
         * 房间类型
         */
        @NotBlank(message = "The roomType cannot be blank")
        @Length(max = 10,message = "the roomType is limited 10 characters")
        private String roomType;

        /**
         * 成年人数
         */
        private Integer adultsNumber;

        /**
         * 儿童人数
         */
        private Integer childrenNumber;

        /**
         * 附件
         */
        @NotBlank(message = "The attachement cannot be blank")
        @Length(max = 2000,message = "the attachement is limited 2000 characters")
        private String attachement;

        /**
         * 确认信息
         */
        @NotEmpty(message = "The confirmationList cannot be empty")
        private List<String> confirmationList;

        /**
         * 备注
         */
        @NotEmpty(message = "The commentList cannot be empty")
        private List<String> commentList;

    }