using System; using System.Collections.Generic; using Aop.Api.Response; namespace Aop.Api.Request { /// /// AOP API: alipay.acquire.refund /// public class AlipayAcquireRefundRequest : IAopRequest { /// /// 卖家的操作员ID。 /// public string OperatorId { get; set; } /// /// 操作员的类型: 0:支付宝操作员 1:商户的操作员 如果传入其它值或者为空,则默认设置为1。 /// public string OperatorType { get; set; } /// /// 商户退款请求单号,用以标识本次交易的退款请求。 如果不传入本参数,则以out_trade_no填充本参数的值。同时,认为本次请求为全额退款,要求退款金额和交易支付金额一致。 /// public string OutRequestNo { get; set; } /// /// 商户网站唯一订单号 /// public string OutTradeNo { get; set; } /// /// 业务关联ID集合,用于放置商户的退款单号、退款流水号等信息,json格式 /// public string RefIds { get; set; } /// /// 退款金额;退款金额不能大于订单金额,全额退款必须与订单金额一致。 /// public string RefundAmount { get; set; } /// /// 退款原因说明。 /// public string RefundReason { get; set; } /// /// 该交易在支付宝系统中的交易流水号。 最短16位,最长64位。 如果同时传了out_trade_no和trade_no,则以trade_no为准 /// public string TradeNo { get; set; } #region IAopRequest Members private bool needEncrypt=false; private string apiVersion = "1.0"; private string terminalType; private string terminalInfo; private string prodCode; private string notifyUrl; private string returnUrl; private AopObject bizModel; public void SetNeedEncrypt(bool needEncrypt){ this.needEncrypt=needEncrypt; } public bool GetNeedEncrypt(){ return this.needEncrypt; } public void SetNotifyUrl(string notifyUrl){ this.notifyUrl = notifyUrl; } public string GetNotifyUrl(){ return this.notifyUrl; } public void SetReturnUrl(string returnUrl){ this.returnUrl = returnUrl; } public string GetReturnUrl(){ return this.returnUrl; } public void SetTerminalType(String terminalType){ this.terminalType=terminalType; } public string GetTerminalType(){ return this.terminalType; } public void SetTerminalInfo(String terminalInfo){ this.terminalInfo=terminalInfo; } public string GetTerminalInfo(){ return this.terminalInfo; } public void SetProdCode(String prodCode){ this.prodCode=prodCode; } public string GetProdCode(){ return this.prodCode; } public string GetApiName() { return "alipay.acquire.refund"; } public void SetApiVersion(string apiVersion){ this.apiVersion=apiVersion; } public string GetApiVersion(){ return this.apiVersion; } public IDictionary GetParameters() { AopDictionary parameters = new AopDictionary(); parameters.Add("operator_id", this.OperatorId); parameters.Add("operator_type", this.OperatorType); parameters.Add("out_request_no", this.OutRequestNo); parameters.Add("out_trade_no", this.OutTradeNo); parameters.Add("ref_ids", this.RefIds); parameters.Add("refund_amount", this.RefundAmount); parameters.Add("refund_reason", this.RefundReason); parameters.Add("trade_no", this.TradeNo); return parameters; } public AopObject GetBizModel() { return this.bizModel; } public void SetBizModel(AopObject bizModel) { this.bizModel = bizModel; } #endregion } }