AlipayEbppBillAddRequest.cs 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  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.bill.add
  8. /// </summary>
  9. public class AlipayEbppBillAddRequest : IAopRequest<AlipayEbppBillAddResponse>
  10. {
  11. /// <summary>
  12. /// 外部订单号
  13. /// </summary>
  14. public string BankBillNo { get; set; }
  15. /// <summary>
  16. /// 账单的账期,例如201203表示2012年3月的账单。
  17. /// </summary>
  18. public string BillDate { get; set; }
  19. /// <summary>
  20. /// 账单单据号,例如水费单号,手机号,电费号,信用卡卡号。没有唯一性要求。
  21. /// </summary>
  22. public string BillKey { get; set; }
  23. /// <summary>
  24. /// 支付宝给每个出账机构指定了一个对应的英文短名称来唯一表示该收费单位。
  25. /// </summary>
  26. public string ChargeInst { get; set; }
  27. /// <summary>
  28. /// 扩展属性
  29. /// </summary>
  30. public string ExtendField { get; set; }
  31. /// <summary>
  32. /// 输出机构的业务流水号,需要保证唯一性
  33. /// </summary>
  34. public string MerchantOrderNo { get; set; }
  35. /// <summary>
  36. /// 用户的手机号
  37. /// </summary>
  38. public string Mobile { get; set; }
  39. /// <summary>
  40. /// 支付宝订单类型。公共事业缴纳JF,信用卡还款HK
  41. /// </summary>
  42. public string OrderType { get; set; }
  43. /// <summary>
  44. /// 拥有该账单的用户姓名
  45. /// </summary>
  46. public string OwnerName { get; set; }
  47. /// <summary>
  48. /// 缴费金额。用户支付的总金额。单位为:RMB Yuan。取值范围为[0.01,100000000.00],精确到小数点后两位。
  49. /// </summary>
  50. public string PayAmount { get; set; }
  51. /// <summary>
  52. /// 账单的服务费。
  53. /// </summary>
  54. public string ServiceAmount { get; set; }
  55. /// <summary>
  56. /// 子业务类型是业务类型的下一级概念,例如:WATER表示JF下面的水费,ELECTRIC表示JF下面的电费,GAS表示JF下面的燃气费。
  57. /// </summary>
  58. public string SubOrderType { get; set; }
  59. /// <summary>
  60. /// 交通违章地点,sub_order_type=TRAFFIC时填写。
  61. /// </summary>
  62. public string TrafficLocation { get; set; }
  63. /// <summary>
  64. /// 违章行为,sub_order_type=TRAFFIC时填写。
  65. /// </summary>
  66. public string TrafficRegulations { get; set; }
  67. #region IAopRequest Members
  68. private string apiVersion = "1.0";
  69. private string terminalType;
  70. private string terminalInfo;
  71. private string prodCode;
  72. private string notifyUrl;
  73. public void SetNotifyUrl(string notifyUrl){
  74. this.notifyUrl = notifyUrl;
  75. }
  76. public string GetNotifyUrl(){
  77. return this.notifyUrl;
  78. }
  79. public void SetTerminalType(String terminalType){
  80. this.terminalType=terminalType;
  81. }
  82. public string GetTerminalType(){
  83. return this.terminalType;
  84. }
  85. public void SetTerminalInfo(String terminalInfo){
  86. this.terminalInfo=terminalInfo;
  87. }
  88. public string GetTerminalInfo(){
  89. return this.terminalInfo;
  90. }
  91. public void SetProdCode(String prodCode){
  92. this.prodCode=prodCode;
  93. }
  94. public string GetProdCode(){
  95. return this.prodCode;
  96. }
  97. public string GetApiName()
  98. {
  99. return "alipay.ebpp.bill.add";
  100. }
  101. public void SetApiVersion(string apiVersion){
  102. this.apiVersion=apiVersion;
  103. }
  104. public string GetApiVersion(){
  105. return this.apiVersion;
  106. }
  107. public IDictionary<string, string> GetParameters()
  108. {
  109. AopDictionary parameters = new AopDictionary();
  110. parameters.Add("bank_bill_no", this.BankBillNo);
  111. parameters.Add("bill_date", this.BillDate);
  112. parameters.Add("bill_key", this.BillKey);
  113. parameters.Add("charge_inst", this.ChargeInst);
  114. parameters.Add("extend_field", this.ExtendField);
  115. parameters.Add("merchant_order_no", this.MerchantOrderNo);
  116. parameters.Add("mobile", this.Mobile);
  117. parameters.Add("order_type", this.OrderType);
  118. parameters.Add("owner_name", this.OwnerName);
  119. parameters.Add("pay_amount", this.PayAmount);
  120. parameters.Add("service_amount", this.ServiceAmount);
  121. parameters.Add("sub_order_type", this.SubOrderType);
  122. parameters.Add("traffic_location", this.TrafficLocation);
  123. parameters.Add("traffic_regulations", this.TrafficRegulations);
  124. return parameters;
  125. }
  126. #endregion
  127. }
  128. }