package com.brilliance.isc.esb.model.edmp;

/**
 * NFP6 银税通单笔发票核验实时查询请求模型
 */
public class ReqNFP6 {

    /**
     * 系统用户认证
     */
    public String SYSTEM_USER_AUTH;

    /**
     * 系统用户认证密码
     */
    public String SYSTEM_USER_AUTH_PWD;

    /**
     * 发起查询系统
     */
    public String QUERY_SYSTEM;

    /**
     * 查询原因
     */
    public String QUERY_REASON;

    /**
     * 客户授权
     * 值为：Y/N，当此值为Y时表示已获取到用户纸质或电子授权信息，为N时授权失败
     */
    public String CUST_AUTHED;

    /**
     * 业务代码及描述
     * 示例（仅供参考）：
     * 344:小米联合贷（循）
     * 345:美团联合贷（循）
     * 752:京东金条贷
     * 371:360借条（循）
     * 378:平安风险共担个人贷
     * 分隔符“:”为英文字符
     */
    public String BIZ_PRD_TYPE;

    /**
     * 行内客户号
     */
    public String CUSTID;

    /**
     * 行内对公客户号
     */
    public String CORPCUSTID;

    /**
     * 所属机构编号
     */
    public String ORGNO;

    /**
     * 发票代码
     */
    public String INVOICECODE;

    /**
     * 发票号码
     */
    public String INVOICENUMBER;

    /**
     * 开票日期
     */
    public String BILLINGDATE;

    /**
     * 校验码后六位，（普票、电子发票时必填）
     */
    public String CHECKCODE;

    /**
     * 合计金额（不含税金额，专票、机动车、二手车发票时必填。）；价税合计（全电发票）
     */
    public String TOTALAMOUNT;

    /**
     * 是否需要发票商品明细
     * Y:是
     * N:否
     */
    public String FPLIST;

    /**
     * 预留字段1
     */
    public String RESERVE1;
    /**
     * 预留字段2
     */
    public String RESERVE2;
    /**
     * 预留字段3
     */
    public String RESERVE3;
    /**
     * 预留字段4
     */
    public String RESERVE4;
    /**
     * 预留字段5
     */
    public String RESERVE5;
    /**
     * 预留字段6
     */
    public String RESERVE6;

    public ReqNFP6() {
    }

    public ReqNFP6(String SYSTEM_USER_AUTH, String SYSTEM_USER_AUTH_PWD, String QUERY_SYSTEM, String QUERY_REASON, String CUST_AUTHED, String BIZ_PRD_TYPE, String CUSTID, String CORPCUSTID, String ORGNO, String INVOICECODE, String INVOICENUMBER, String BILLINGDATE, String CHECKCODE, String TOTALAMOUNT, String FPLIST, String RESERVE1, String RESERVE2, String RESERVE3, String RESERVE4, String RESERVE5, String RESERVE6) {
        this.SYSTEM_USER_AUTH = SYSTEM_USER_AUTH;
        this.SYSTEM_USER_AUTH_PWD = SYSTEM_USER_AUTH_PWD;
        this.QUERY_SYSTEM = QUERY_SYSTEM;
        this.QUERY_REASON = QUERY_REASON;
        this.CUST_AUTHED = CUST_AUTHED;
        this.BIZ_PRD_TYPE = BIZ_PRD_TYPE;
        this.CUSTID = CUSTID;
        this.CORPCUSTID = CORPCUSTID;
        this.ORGNO = ORGNO;
        this.INVOICECODE = INVOICECODE;
        this.INVOICENUMBER = INVOICENUMBER;
        this.BILLINGDATE = BILLINGDATE;
        this.CHECKCODE = CHECKCODE;
        this.TOTALAMOUNT = TOTALAMOUNT;
        this.FPLIST = FPLIST;
        this.RESERVE1 = RESERVE1;
        this.RESERVE2 = RESERVE2;
        this.RESERVE3 = RESERVE3;
        this.RESERVE4 = RESERVE4;
        this.RESERVE5 = RESERVE5;
        this.RESERVE6 = RESERVE6;
    }
}
