package com.wzj.soopin.transaction.domain.bo.easypay.merchant.add;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 结算账户信息，根据mchtBzType条件必填。
 * 1、mchtBzType=1时必填
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class PayAccInfo {


    /**
     * 对私持卡人证件号码，mchtBzType=1时必填
     * 对私户必填，对公户不传
     */
    private String accIdNo;
    /**
     * 对私持卡人证件类型，mchtBzType=1时必填
     * 对私户必填，对公户不传
     *
     * 01 -> 身份证
     * 02 -> 军官证
     * 03 -> 护照
     * 04 -> 户口簿
     * 05 -> 士兵证
     * 06 -> 港澳来往内地通行证
     * 07 -> 台湾同胞来往内地通行证
     * 08 -> 临时身份证
     * 09 -> 外国人居留证
     * 10 -> 警官证
     * 11 -> 营业执照
     * 12 -> 组织机构代码证
     * 13 -> 税务登记证
     * 14 -> 统一社会信用代码证
     * 15 -> 单位证明
     * 16 -> 事业单位法人正式
     * 17 -> 民办非企业单位登记证书
     * 18 -> 基金会法人登记证书
     * 19 -> 社会团体登记证书
     * 99 -> 其它
     */
    @Builder.Default
    private String accIdType = "01";
    /**
     * 对私持卡人手机号，mchtBzType=1时且对私主体必填，对公户不传
     */
    private String accMobile;
    /**
     * 账户类型，mchtBzType=1时必填，对私账户00，对公账户05
     * 00 -> 个人银行借记账户
     * 01 -> 个人银行贷记账户
     * 02 -> 个人银行准贷记账户
     * 03 -> 个人支付账户
     * 04 -> 单位支付账户
     * 05 -> 对公银行账户
     * 06 -> 备付金账户
     * 07 -> 存折
     * 99 -> 其他
     */
    @Builder.Default
    private String acctType = "00";
    /**
     * 银行账户名，mchtBzType=1时必填
     */
    private String bankcardName;
    /**
     * 银行账户号，mchtBzType=1时必填
     */
    private String bankcardNo;
    /**
     * 开户行名称，1、添加分账接收方场景必填，必填字段见说明
     */
    private String bankName;
    /**
     * 开户行行号，https://www.cwjyz.com.cn/bank/index.html
     * mchtBzType=1时必填
     */
    private String bankNo;
}
