# SaveCheckInRecordDTO.java

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

    import cloud.wconnect.commonlib.pojo.dto.group.Edition;
    import cloud.wconnect.frontoffice.pojo.group.Addition;
    import lombok.Getter;
    import lombok.Setter;
    import org.hibernate.validator.constraints.Length;

    import jakarta.validation.constraints.NotBlank;
    import jakarta.validation.constraints.NotNull;

    /**
     * @author yyt
     * 2024/10/2
     */
    public class SaveCheckInRecordDTO {

        /**
         * first name
         */
        @Setter
        @NotBlank(message = "the firstName must not be blank", groups = Addition.class)
        @Length(max = 60, message = "the firstName max length is 60", groups = Addition.class)
        private String firstName;

        /**
         * last name
         */
        @Setter
        @NotBlank(message = "the lastName must not be blank", groups = Addition.class)
        @Length(max = 60, message = "the lastName max length is 60", groups = Addition.class)
        private String lastName;

        /**
         * 房间号
         */
        @Setter
        @Length(max = 8, message = "the roomNumber max length is 8", groups = {Addition.class, Edition.class})
        private String roomNumber;

        /**
         * 入住日期（时间戳）
         */
        @Setter
        @Getter
        @NotNull(message = "the checkInDate must not be null", groups = {Addition.class, Edition.class})
        private Long checkInDate;

        /**
         * 退房日期（时间戳）
         */
        @Setter
        @Getter
        @NotNull(message = "the checkOutDate must not be null", groups = {Addition.class, Edition.class})
        private Long checkOutDate;

        public String getFirstName() {
            return firstName.trim();
        }

        public String getLastName() {
            return lastName.trim();
        }

        public String getRoomNumber() {
            return roomNumber.trim();
        }

    }