TestNormalCases.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. using SinochemCloudClient;
  2. using SinochemCloudClient.Models;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace TestSinochemCloudClient
  9. {
  10. public class TestNormalCases
  11. {
  12. private static TrxCommunicationContext context = new TrxCommunicationContext();
  13. private const string UrlPrefix = "http://10.26.5.222:8008/1/CarFushion";
  14. private const string BalanceInquiryApi = "/queryMemberInfo";
  15. public static void TestBalanceInquiry()
  16. {
  17. CloudCommunicator<BalanceInquiryRequest, BalanceInquiryResponse> communicator =
  18. new CloudCommunicator<BalanceInquiryRequest, BalanceInquiryResponse>(UrlPrefix + BalanceInquiryApi);
  19. BalanceInquiryRequest request = new BalanceInquiryRequest
  20. {
  21. dept_No = "123",
  22. card_No = "2009059500000166290",
  23. password = "111111"
  24. };
  25. Console.WriteLine("before send " + request.GetType().ToString());
  26. communicator.SendRequest(request);
  27. Console.WriteLine("got response messasge code" + communicator.Response.code);
  28. context.token = communicator.Response.result.token;
  29. }
  30. private const string PaymentApi = "/pay";
  31. public static void TestPayment()
  32. {
  33. CloudCommunicator<PaymentRequest, PaymentResponse> communicator =
  34. new CloudCommunicator<PaymentRequest, PaymentResponse>(UrlPrefix + PaymentApi);
  35. PaymentRequest request = new PaymentRequest
  36. {
  37. dept_No = "123",
  38. ttc = "12345",
  39. card_No = "2009059500000166290",
  40. password = "111111",
  41. code = "35",
  42. price = 5.66,
  43. lpm = 10,
  44. amount = 56.6,
  45. gas_Up_Time = DateTime.Now.ToString(),
  46. rear_Pump_Code = "",
  47. off_Line_Sign = "0",
  48. tradeDateTime = DateTime.Now.ToString(),
  49. mac = "1a2b3c",
  50. //token = context.token + CurrentTimeMillis().ToString()
  51. token = "AnM3B8LV255Ynyc" + DateTimeUtility.CurrentTimeMillis().ToString()
  52. };
  53. Console.WriteLine("before send " + request.GetType().ToString());
  54. communicator.SendRequest(request);
  55. Console.WriteLine("got response messasge code" + communicator.Response.code);
  56. }
  57. private const string TrxStatusInquiryApi = "/queryOrder";
  58. public static void TestTrxStatusInquiry()
  59. {
  60. CloudCommunicator<TrxStatusInquiryRequest, TrxStatusInquiryResponse> communicator =
  61. new CloudCommunicator<TrxStatusInquiryRequest, TrxStatusInquiryResponse>(UrlPrefix + PaymentApi);
  62. TrxStatusInquiryRequest request = new TrxStatusInquiryRequest
  63. {
  64. dept_No = "123",
  65. card_No = "2009059500000166290",
  66. pre_Amount = 56.6,
  67. ori_ttc = "12345",
  68. //token = context.token + CurrentTimeMillis().ToString()
  69. token = "AnM3B8LV255Ynyc" + DateTimeUtility.CurrentTimeMillis().ToString()
  70. };
  71. Console.WriteLine("before send " + request.GetType().ToString());
  72. communicator.SendRequest(request);
  73. Console.WriteLine("got response messasge code" + communicator.Response.code);
  74. }
  75. private const string RefundApi = "/cancelOrder";
  76. public static void TestRefund()
  77. {
  78. CloudCommunicator<RefundRequest, RefundResponse> communicator =
  79. new CloudCommunicator<RefundRequest, RefundResponse>(UrlPrefix + PaymentApi);
  80. RefundRequest request = new RefundRequest
  81. {
  82. dept_No = "123",
  83. card_No = "2009059500000166290",
  84. pre_Amount = 56.6,
  85. ori_ttc = "12345",
  86. //token = context.token + CurrentTimeMillis().ToString()
  87. token = "AnM3B8LV255Ynyc" + DateTimeUtility.CurrentTimeMillis().ToString()
  88. };
  89. Console.WriteLine("before send " + request.GetType().ToString());
  90. communicator.SendRequest(request);
  91. Console.WriteLine("got response messasge code" + communicator.Response.code);
  92. }
  93. }
  94. class TrxCommunicationContext
  95. {
  96. public string token { get; set; }
  97. }
  98. class DateTimeUtility
  99. {
  100. private static readonly DateTime Jan1st1970 = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
  101. public static long CurrentTimeMillis()
  102. {
  103. return (long)(DateTime.UtcNow - Jan1st1970).TotalMilliseconds;
  104. }
  105. }
  106. }