# SaveCaseResultDTO.java

    package cloud.wconnect.finance.pojo.dto.chargeback;

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

    import jakarta.validation.constraints.NotNull;

    /**
     * DTO: Save Case Result
     *
     * @author yyt
     * 2023/9/6
     */
    @Data
    public class SaveCaseResultDTO {

        /**
         * 结果(1:Win，2:Loss，3:Frozen，4:Processed)
         */
        @NotNull(message = "the result must not be null")
        @Range(min = 1, max = 4, message = "the result must in [1:Win，2:Loss，3:Frozen，4:Processed]")
        private Integer result;

        /**
         * Result Date
         */
        @NotNull(message = "the resultDate must not be null")
        private Long resultDate;

        /**
         * Bank Received/Write-off Date
         */
        @NotNull(message = "the resultFinalDate must not be null")
        private Long resultFinalDate;

        /**
         * No Withdrawal
         */
        @NotNull(message = "the noWithdrawal must not be null")
        private Boolean noWithdrawal;

        /**
         * 附件列表
         */
        @NotNull(message = "the attachments must not be null")
        @Length(max = 1500, message = "the attachments max length is 1500")
        private String attachments;

        /**
         * 备注说明
         */
        @NotNull(message = "the comment must not be null")
        @Length(max = 1000, message = "the comment max length is 1000")
        private String comment;

        /**
         * last 阶段填写附件
         */
        @NotNull(message = "the attachmentsLastStage must not be null")
        @Length(max = 1500, message = "the attachmentsLastStage max length is 1500")
        private String attachmentsLastStage;

        /**
         * last 阶段填写备注
         */
        @NotNull(message = "the commentLastStage must not be null")
        @Length(max = 1000, message = "the commentLastStage max length is 1000")
        private String commentLastStage;

    }