package cn.hmsoft.pay.impl.weixin.entity;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;

import cn.hmsoft.helper.RandomHelper;
import cn.hmsoft.pay.data.model.PayMerchantChannel;

/*********************************
 * 退费订单，需要双向证书
 * 
 * @author: 张小庆
 * @date: 2017-03-04 13:39:21
 * @version: 3.0.0
 * @email: revisit@126.com
 * @Company: www.hmsoft.cn
 */
@XmlRootElement(name = "xml")
@XmlAccessorType(XmlAccessType.FIELD)
public class GenerateRefundRequestEntity {
	public GenerateRefundRequestEntity(PayMerchantChannel mc) {
		this.appid = mc.getBank_merchant_id();
		this.mch_id = mc.getBank_merchant_name();
		this.nonce_str = RandomHelper.getRandomValue(32);
		this.op_user_id = this.mch_id;
	}

	// 公众账号ID
	private String appid;
	// 商户号
	private String mch_id;
	// 随机字符串
	private String nonce_str;
	// 签名
	private String sign;
	// 商户订单号
	private String out_trade_no;
	// 商户退款单号
	private String out_refund_no;
	// 订单金额
	private int total_fee;
	// 退款金额
	private int refund_fee;
	// 操作员
	private String op_user_id;

	public String getAppid() {
		return appid;
	}

	public void setAppid(String appid) {
		this.appid = appid;
	}

	public String getMch_id() {
		return mch_id;
	}

	public void setMch_id(String mch_id) {
		this.mch_id = mch_id;
	}

	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 getOut_trade_no() {
		return out_trade_no;
	}

	public void setOut_trade_no(String out_trade_no) {
		this.out_trade_no = out_trade_no;
	}

	public String getOut_refund_no() {
		return out_refund_no;
	}

	public void setOut_refund_no(String out_refund_no) {
		this.out_refund_no = out_refund_no;
	}

	public int getTotal_fee() {
		return total_fee;
	}

	public void setTotal_fee(int total_fee) {
		this.total_fee = total_fee;
	}

	public int getRefund_fee() {
		return refund_fee;
	}

	public void setRefund_fee(int refund_fee) {
		this.refund_fee = refund_fee;
	}

	public String getOp_user_id() {
		return op_user_id;
	}

	public void setOp_user_id(String op_user_id) {
		this.op_user_id = op_user_id;
	}

}
