package com.ycwl.basic.model.mobile.notify.resp;

import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 通知授权记录响应 - 支持批量记录
 * 
 * @Author: System
 * @Date: 2024/12/28
 */
@Data
public class NotificationAuthRecordResp {
    
    /**
     * 是否全部成功
     */
    private Boolean allSuccess;
    
    /**
     * 成功记录的授权列表
     */
    private List<AuthorizationRecord> successRecords;
    
    /**
     * 失败的模板ID列表
     */
    private List<String> failedTemplateIds;
    
    /**
     * 失败原因列表（对应failedTemplateIds）
     */
    private List<String> failureReasons;
    
    /**
     * 授权记录详情
     */
    @Data
    public static class AuthorizationRecord {
        /**
         * 记录ID
         */
        private Long id;
        
        /**
         * 模板ID
         */
        private String templateId;
        
        /**
         * 景区ID
         */
        private Long scenicId;
        
        /**
         * 授权次数
         */
        private Integer authorizationCount;
        
        /**
         * 已消费次数
         */
        private Integer consumedCount;
        
        /**
         * 剩余授权次数
         */
        private Integer remainingCount;
        
        /**
         * 最后授权时间
         */
        private Date lastAuthorizedTime;
        
        /**
         * 最后消费时间
         */
        private Date lastConsumedTime;
        
        /**
         * 状态
         */
        private Integer status;
        
        /**
         * 创建时间
         */
        private Date createTime;
    }
}