package cc.mrbird.febs.pay.model;
|
|
|
import cc.mrbird.febs.pay.util.RandomStringGenerator;
|
import cc.mrbird.febs.pay.util.Signature;
|
|
import java.lang.reflect.Field;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
/**
|
* 企业支付请求参数
|
*
|
* @author:jiangyouyao
|
* @date 2017年5月25日
|
*/
|
public class JsApiPayComReqData {
|
|
//每个字段具体的意思请查看API文档
|
/**
|
* 商户号
|
*/
|
private String mchid = "";
|
|
private String mch_appid = "";
|
|
/**
|
* 商户企业付款单号
|
*/
|
private String partner_trade_no = "";
|
|
/**
|
* 随机字符串
|
*/
|
private String nonce_str = "";
|
|
|
private String check_name = "";
|
|
|
/**
|
* 签名
|
*/
|
private String sign = "";
|
|
/**
|
* 付款金额 RMB(分)
|
*/
|
private int amount = 0;
|
/**
|
* 备注
|
*/
|
private String desc = "";
|
|
private String openid = "";
|
|
|
public JsApiPayComReqData() {
|
}
|
|
|
/**
|
*
|
* @author wzy
|
* @param desc 描述
|
* @param outTradeNo 商户企业付款单号
|
* @param totalFee 付款金额
|
* @param bankCode 收款号开户行
|
*/
|
public JsApiPayComReqData(String mchID,String mch_appid,String paySecret ,String desc, String outTradeNo, int totalFee,
|
String openid, String check_name, String bankCode) {
|
setMch_appid(mch_appid);
|
//默认必须设置
|
setMchid(mchID);
|
setDesc(desc);
|
setPartner_trade_no(outTradeNo);
|
setAmount(totalFee);
|
setOpenid(openid);
|
setCheck_name(check_name);
|
//随机字符串,不长于32 位
|
setNonce_str(RandomStringGenerator.getRandomStringByLength(32));
|
//根据API给的签名规则进行签名 【 必须要放在本方法的最后】
|
String sign = Signature.getSign(toMap(),paySecret);
|
setSign(sign);//把签名数据设置到Sign这个属性中
|
|
|
}
|
|
public String getMch_appid() {
|
return mch_appid;
|
}
|
|
public void setMch_appid(String mch_appid) {
|
this.mch_appid = mch_appid;
|
}
|
|
public String getCheck_name() {
|
return check_name;
|
}
|
|
public void setCheck_name(String check_name) {
|
this.check_name = check_name;
|
}
|
|
public String getMchid() {
|
return mchid;
|
}
|
|
public void setMchid(String mchid) {
|
this.mchid = mchid;
|
}
|
|
public String getNonce_str() {
|
return nonce_str;
|
}
|
|
public void setNonce_str(String nonce_str) {
|
this.nonce_str = nonce_str;
|
}
|
|
public String getSign() {
|
return sign;
|
}
|
|
public void setSign(String sign) {
|
this.sign = sign;
|
}
|
|
public String getPartner_trade_no() {
|
return partner_trade_no;
|
}
|
|
public void setPartner_trade_no(String partner_trade_no) {
|
this.partner_trade_no = partner_trade_no;
|
}
|
|
public String getOpenid() {
|
return openid;
|
}
|
|
public void setOpenid(String openid) {
|
this.openid = openid;
|
}
|
|
public int getAmount() {
|
return amount;
|
}
|
|
public void setAmount(int amount) {
|
this.amount = amount;
|
}
|
|
public String getDesc() {
|
return desc;
|
}
|
|
public void setDesc(String desc) {
|
this.desc = desc;
|
}
|
|
public Map<String, Object> toMap() {
|
Map<String, Object> map = new HashMap<String, Object>();
|
Field[] fields = this.getClass().getDeclaredFields();
|
for (Field field : fields) {
|
Object obj;
|
try {
|
obj = field.get(this);
|
if (obj != null) {
|
map.put(field.getName(), obj);
|
}
|
} catch (IllegalArgumentException e) {
|
e.printStackTrace();
|
} catch (IllegalAccessException e) {
|
e.printStackTrace();
|
}
|
}
|
return map;
|
}
|
}
|