AlipayEbppPdeductPayRequest.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. using System;
  2. using System.Collections.Generic;
  3. using Aop.Api.Response;
  4. namespace Aop.Api.Request
  5. {
  6. /// <summary>
  7. /// AOP API: alipay.ebpp.pdeduct.pay
  8. /// </summary>
  9. public class AlipayEbppPdeductPayRequest : IAopRequest<AlipayEbppPdeductPayResponse>
  10. {
  11. /// <summary>
  12. /// 分配给外部机构发起扣款时的渠道码。朗新为LANGXIN
  13. /// </summary>
  14. public string AgentChannel { get; set; }
  15. /// <summary>
  16. /// 二级渠道码,预留字段
  17. /// </summary>
  18. public string AgentCode { get; set; }
  19. /// <summary>
  20. /// 支付宝代扣协议Id
  21. /// </summary>
  22. public string AgreementId { get; set; }
  23. /// <summary>
  24. /// 账期
  25. /// </summary>
  26. public string BillDate { get; set; }
  27. /// <summary>
  28. /// 户号
  29. /// </summary>
  30. public string BillKey { get; set; }
  31. /// <summary>
  32. /// 扩展参数。必须以key value形式定义, 转为json为格式:{"key1":"value1","key2":"value2", "key3":"value3","key4":"value4"} 后端会直接转换为MAP对象,转换异常会报参数格式错误
  33. /// </summary>
  34. public string ExtendField { get; set; }
  35. /// <summary>
  36. /// 滞纳金
  37. /// </summary>
  38. public string FineAmount { get; set; }
  39. /// <summary>
  40. /// 备注信息
  41. /// </summary>
  42. public string Memo { get; set; }
  43. /// <summary>
  44. /// 商户外部业务流水号
  45. /// </summary>
  46. public string OutOrderNo { get; set; }
  47. /// <summary>
  48. /// 扣款金额,支付总金额,包含滞纳金
  49. /// </summary>
  50. public string PayAmount { get; set; }
  51. /// <summary>
  52. /// 商户PartnerId
  53. /// </summary>
  54. public string Pid { get; set; }
  55. /// <summary>
  56. /// 通过服务窗拿到的openId
  57. /// </summary>
  58. public string UserId { get; set; }
  59. #region IAopRequest Members
  60. private string apiVersion = "1.0";
  61. private string terminalType;
  62. private string terminalInfo;
  63. private string prodCode;
  64. private string notifyUrl;
  65. public void SetNotifyUrl(string notifyUrl){
  66. this.notifyUrl = notifyUrl;
  67. }
  68. public string GetNotifyUrl(){
  69. return this.notifyUrl;
  70. }
  71. public void SetTerminalType(String terminalType){
  72. this.terminalType=terminalType;
  73. }
  74. public string GetTerminalType(){
  75. return this.terminalType;
  76. }
  77. public void SetTerminalInfo(String terminalInfo){
  78. this.terminalInfo=terminalInfo;
  79. }
  80. public string GetTerminalInfo(){
  81. return this.terminalInfo;
  82. }
  83. public void SetProdCode(String prodCode){
  84. this.prodCode=prodCode;
  85. }
  86. public string GetProdCode(){
  87. return this.prodCode;
  88. }
  89. public string GetApiName()
  90. {
  91. return "alipay.ebpp.pdeduct.pay";
  92. }
  93. public void SetApiVersion(string apiVersion){
  94. this.apiVersion=apiVersion;
  95. }
  96. public string GetApiVersion(){
  97. return this.apiVersion;
  98. }
  99. public IDictionary<string, string> GetParameters()
  100. {
  101. AopDictionary parameters = new AopDictionary();
  102. parameters.Add("agent_channel", this.AgentChannel);
  103. parameters.Add("agent_code", this.AgentCode);
  104. parameters.Add("agreement_id", this.AgreementId);
  105. parameters.Add("bill_date", this.BillDate);
  106. parameters.Add("bill_key", this.BillKey);
  107. parameters.Add("extend_field", this.ExtendField);
  108. parameters.Add("fine_amount", this.FineAmount);
  109. parameters.Add("memo", this.Memo);
  110. parameters.Add("out_order_no", this.OutOrderNo);
  111. parameters.Add("pay_amount", this.PayAmount);
  112. parameters.Add("pid", this.Pid);
  113. parameters.Add("user_id", this.UserId);
  114. return parameters;
  115. }
  116. #endregion
  117. }
  118. }