UnionPayQrCodePayQueryRequest.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. using System.Collections.Generic;
  2. using Essensoft.AspNetCore.Payment.UnionPay.Response;
  3. namespace Essensoft.AspNetCore.Payment.UnionPay.Request
  4. {
  5. /// <summary>
  6. /// 二维码支付(V2.2) 交易状态查询
  7. /// </summary>
  8. public class UnionPayQrCodePayQueryRequest : IUnionPayRequest<UnionPayQrCodePayQueryResponse>
  9. {
  10. /// <summary>
  11. /// 产品类型
  12. /// </summary>
  13. public string BizType { get; set; }
  14. /// <summary>
  15. /// 交易类型
  16. /// </summary>
  17. public string TxnType { get; set; }
  18. /// <summary>
  19. /// 交易子类
  20. /// </summary>
  21. public string TxnSubType { get; set; }
  22. /// <summary>
  23. /// 查询流水号
  24. /// </summary>
  25. public string QueryId { get; set; }
  26. /// <summary>
  27. /// 订单发送时间
  28. /// </summary>
  29. public string TxnTime { get; set; }
  30. /// <summary>
  31. /// 接入机构代码
  32. /// </summary>
  33. public string AccInsCode { get; set; }
  34. /// <summary>
  35. /// 商户订单号
  36. /// </summary>
  37. public string OrderId { get; set; }
  38. /// <summary>
  39. /// 保留域
  40. /// </summary>
  41. public string Reserved { get; set; }
  42. /// <summary>
  43. /// 控制规则
  44. /// </summary>
  45. public string CtrlRule { get; set; }
  46. #region IUnionPayRequest
  47. private string version = string.Empty;
  48. public string GetApiVersion()
  49. {
  50. return version;
  51. }
  52. public void SetApiVersion(string version)
  53. {
  54. this.version = version;
  55. }
  56. public IDictionary<string, string> GetParameters()
  57. {
  58. var parameters = new UnionPayDictionary
  59. {
  60. { "bizType", BizType },
  61. { "txnType", TxnType },
  62. { "txnSubType", TxnSubType },
  63. { "queryId", QueryId },
  64. { "txnTime", TxnTime },
  65. { "accInsCode", AccInsCode },
  66. { "orderId", OrderId },
  67. { "reserved", Reserved },
  68. { "ctrlRule", CtrlRule }
  69. };
  70. return parameters;
  71. }
  72. public string GetRequestUrl(bool isTest)
  73. {
  74. return isTest ? "https://gateway.test.95516.com/gateway/api/queryTrans.do" : "https://gateway.95516.com/gateway/api/queryTrans.do";
  75. }
  76. public bool HasEncryptCertId()
  77. {
  78. return false;
  79. }
  80. #endregion
  81. }
  82. }