package com.neusoft.smart.pos.payment.persistent.ext.domain;

import lombok.Data;

import java.io.Serializable;

@Data
public class WeixinUsPayServiceCreateOrder implements Serializable {
    private String appid;           //公众账号ID wxd678efh567hg6787 微信支付分配的公众账号ID（企业号corpid即为此appId）
    private String mch_id;          //商户号 1230000109 微信支付分配的商户号
    private String sub_appid;           //微信分配的子商户公众账号ID，如需在支付完成后获取sub_openid则此参数必传。
    private String sub_mch_id;          //sub_mch_id
    private String nonce_str;       //随机字符串 5K8264ILTKCH16CQ2502SI8ZNMTM67VS 随机字符串，长度要求在32位以内
    private String sign;            //签名 C380BEC2BFD727A4B6845133519F3AD6 通过签名算法计算得出的签名值
    private String body;            //商品描述 商品简单描述
    private String out_trade_no;    //商户订单号 20150806125346 商户系统内部订单号，要求32个字符内，只能是数字、大小写字母_-|*@ ，且在同一个商户号下唯一
    private String total_fee;      //标价金额 订单总金额，单位为分
    private String fee_type;      //标价金额 订单总金额，单位为分
    private String spbill_create_ip;  //终端IP 123.12.12.123 APP和网页支付提交用户端ip，Native支付填调用微信支付API的机器IP
    private String notify_url;      //通知地址 http://www.weixin.qq.com/wxpay/pay.php 异步接收微信支付结果通知的回调地址，通知url必须为外网可访问的url，不能携带参数
    private String trade_type;      //交易类型 JSAPI 取值如下：JSAPI--公众号支付、NATIVE--原生扫码支付、APP--app支付
    private String product_id;      //商品ID 12235413214070356458058 trade_type=NATIVE时（即扫码支付），此参数必传。此参数为二维码中包含的商品ID
    private String time_expire;     //交易结束时间 订单失效时间，格式为yyyyMMddHHmmss，如2009年12月27日9点10分10秒表示为20091227091010。订单失效时间是针对订单号而言的，由于在请求支付的时候有一个必传参数prepay_id只有两小时的有效期，所以在重入时间超过2小时的时候需要重新请求下单接口获取新的prepay_id。
    private String attach;          //附加数据
    private String auth_code;       //商户主扫授权码，设备读取用户微信中的条码或者二维码信息
    private String openid;       //trade_type=JSAPI时（即公众号支付），此参数必传，此参数为微信用户在商户对应appid下的唯一标识
    private String sub_openid;       //trade_type=JSAPI，此参数必传，用户在子商户appid下的唯一标识。openid和sub_openid可以选传其中之一，如果选择传sub_openid,则必须传sub_appid。下单前需要调用【网页授权获取用户信息】接口获取到用户的Openid。
}