using System.Collections.Generic; using Alipay.AopSdk.Core.Response; namespace Alipay.AopSdk.Core.Request { /// /// AOP API: alipay.ebpp.pdeduct.sign.cancel /// public class AlipayEbppPdeductSignCancelRequest : IAopRequest { /// /// 此值只是供代扣中心做最后的渠道统计用,并不做值是什么的强校验,只要不为空就可以 /// public string AgentChannel { get; set; } /// /// 标识发起方的ID,从服务窗发起则为appId的值,appId即开放平台分配给接入ISV的id,此处也可以随便真其它值,只要能标识唯一即可 /// public string AgentCode { get; set; } /// /// 支付宝代扣协议ID /// public string AgreementId { get; set; } /// /// 需要用户首先处于登陆态,然后访问https://ebppprod.alipay.com/deduct/enterMobileicPayPassword.htm?cb=自己指定的回跳连接地址,访问页面后会进到独立密码校验页,用户输入密码校验成功后,会生成token回调到指定的回跳地址,如果设置cb=www.baidu.com则最后回调的内容是www.baidu.com?token=312314ADFDSFAS,然后签约时直接取得地址后token的值即可 /// public string PayPasswordToken { get; set; } /// /// 用户ID /// public string UserId { 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.ebpp.pdeduct.sign.cancel"; } public void SetApiVersion(string apiVersion) { this.apiVersion = apiVersion; } public string GetApiVersion() { return apiVersion; } public IDictionary GetParameters() { var parameters = new AopDictionary(); parameters.Add("agent_channel", AgentChannel); parameters.Add("agent_code", AgentCode); parameters.Add("agreement_id", AgreementId); parameters.Add("pay_password_token", PayPasswordToken); parameters.Add("user_id", UserId); return parameters; } public AopObject GetBizModel() { return bizModel; } public void SetBizModel(AopObject bizModel) { this.bizModel = bizModel; } #endregion } }