using System; using System.Collections.Generic; using Alipay.AopSdk.Core.Response; namespace Alipay.AopSdk.Core.Request { /// /// AOP API: alipay.micropay.order.freeze /// public class AlipayMicropayOrderFreezeRequest : IAopRequest { /// /// 需要冻结金额,[0.01,2000],必须是正数,最多只能保留小数点两位,单位是元 /// public string Amount { get; set; } /// /// 冻结资金的到期时间,超过此日期,冻结金会自动解冻,时间要求是:[当前时间+24h,订购时间-8h] . /// public DateTime? ExpireTime { get; set; } /// /// 冻结备注,maxLength=40 /// public string Memo { get; set; } /// /// 商户订单号,只能由字母和数字组成,最大长度32.此外部订单号与支付宝的冻结订单号对应,注意 应用id和订购者id和外部订单号必须保证唯一性。 /// public string MerchantOrderNo { get; set; } /// /// 在解冻转账的时候的支付方式: NO_CONFIRM:不需要付款确认,调用接口直接扣款 PAY_PASSWORD: 在转账需要付款方用支付密码确认,才可以转账成功 /// public string PayConfirm { get; set; } #region IAopRequest Members private bool needEncrypt; 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 needEncrypt; } public void SetNotifyUrl(string notifyUrl) { this.notifyUrl = notifyUrl; } public string GetNotifyUrl() { return notifyUrl; } public void SetReturnUrl(string returnUrl) { this.returnUrl = returnUrl; } public string GetReturnUrl() { return returnUrl; } public void SetTerminalType(string terminalType) { this.terminalType = terminalType; } public string GetTerminalType() { return terminalType; } public void SetTerminalInfo(string terminalInfo) { this.terminalInfo = terminalInfo; } public string GetTerminalInfo() { return terminalInfo; } public void SetProdCode(string prodCode) { this.prodCode = prodCode; } public string GetProdCode() { return prodCode; } public string GetApiName() { return "alipay.micropay.order.freeze"; } public void SetApiVersion(string apiVersion) { this.apiVersion = apiVersion; } public string GetApiVersion() { return apiVersion; } public IDictionary GetParameters() { var parameters = new AopDictionary(); parameters.Add("amount", Amount); parameters.Add("expire_time", ExpireTime); parameters.Add("memo", Memo); parameters.Add("merchant_order_no", MerchantOrderNo); parameters.Add("pay_confirm", PayConfirm); return parameters; } public AopObject GetBizModel() { return bizModel; } public void SetBizModel(AopObject bizModel) { this.bizModel = bizModel; } #endregion } }