package com.jeequan.jeepay.thirdparty.channel.yspay.utils;

import lombok.Getter;
import lombok.Setter;

import java.util.List;

@Setter
@Getter
public class ApplymentNotify {

    /**
     * 商户资料确认回调
     */
    public static final String TYPE_MCH_APPLY = "1";

    /**
     * 签约回调
     */
    public static final String TYPE_MCH_SIGN = "2";

    /**
     * 商户资料变更回调
     */
    public static final String TYPE_MCH_CHANGE = "3";

    /**
     * 费率变更
     */
    public static final String TYPE_MCH_RATE_CHANGE = "5";

    /**
     * 报备
     */
    public static final String TYPE_MCH_REPORT = "6";


    private String notifyType;

    private String status;

    private Cust cust;

    private Change change;

    private Auth auth;

    private Report report;

    @Setter
    @Getter
    public static class Cust {

        private String sysFlowId;

        private String note;

        private String custId;

        private String status;

        private String mercNm;

        private String mercShortNm;

    }

    @Setter
    @Getter
    public static class Change {

        private String changeSysFlowId;

        private String note;

        private String status;
    }

    @Setter
    @Getter
    public static class Auth {

        private String authId;

        private String mercId;

        private String note;

        private String signId;

        private String status;
    }

    @Setter
    @Getter
    public static class Report {

        private String authId;

        private String mercId;

        private String status;

        private List<ThirdMerc> thridMercList;
    }

    @Setter
    @Getter
    public static class ThirdMerc {

        private String apprSts;

        private String mercId;

        private String thridMercId;

        /**
         * 	备注
         */
        private String remark;

        /**
         * 报备渠道 NUCC_WECHAT:微信支付（网联）、CUPS_WECHAT:微信支付（银联总部）、CUPS_ALIPAY:支付宝（银联总部）、NUCC_ALIPAY:支付宝（网联）
         */
        private String reportChannel;

    }
}
