package org.springblade.common.upyzt.resp;

import org.springblade.common.upyzt.param.FailureMsgParam;
import java.time.LocalDateTime;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.experimental.Accessors;

import java.util.List;
import java.util.Map;

@Getter
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class CusApplicationResp extends UpyztResp {
    /**
     * 申请状态
     */
    private String applicationStatus;

    /**
     * 个人用户ID
     */
    private String cusId;

    /**
     * 进件申请通过时间
     */
    private LocalDateTime succeededAt;

    /**
     * 进件申请失败时间
     */
    private LocalDateTime failedAt;

    /**
     * 审核失败原因列表
     */
    private List<FailureMsgParam> failureMsgs;

    /**
     * 业务申请单号
     */
    private String outRequestNo;

    /**
     * 个人用户进件申请 Id
     */
    private String cusApplicationId;

    /**
     * 电子账簿账簿号
     */
    private String relAcctNo;

    /**
     * 银行生成的户名
     */
    private String bindAcctName;

    /**
     * 电子账簿ID
     */
    private String balanceAcctId;

    /**
     * 绑定账户ID
     */
    private String settleAcctId;

    /**
     * 自定义参数
     */
    private Map<String, Object> metadata;

    /**
     * 拓展字段配合业务参数
     */
    private Map<String, Object> extra;
}
