You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
5.1 KiB

  1. using Newtonsoft.Json;
  2. using Newtonsoft.Json.Linq;
  3. using Swift.API.Common;
  4. using Swift.API.Common.SyncModel.Bank;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Net.Http;
  8. using System.Text;
  9. namespace Swift.API.ThirdPartyApiServices
  10. {
  11. public class SyncBankAndBranchService
  12. {
  13. public JsonResponse GetBankList(BankRequest model)
  14. {
  15. //Log.Debug("Calculate | Calling third party api to fetch the ex-rate details " + JsonConvert.SerializeObject(model));
  16. using (var client = RestApiClient.CallJMEThirdParty())
  17. {
  18. JsonResponse jsonResponse = new JsonResponse();
  19. var obj = JsonConvert.SerializeObject(model);
  20. var jbdContent = new StringContent(obj.ToString(), Encoding.UTF8, "application/json");
  21. try
  22. {
  23. var URL = "api/v1/TP/bankList";
  24. HttpResponseMessage resp = client.PostAsync(URL, jbdContent).Result;
  25. string resultData = resp.Content.ReadAsStringAsync().Result;
  26. if (resp.IsSuccessStatusCode)
  27. {
  28. jsonResponse = JsonConvert.DeserializeObject<JsonResponse>(resultData);
  29. var b = JsonConvert.DeserializeObject(jsonResponse.Data.ToString());
  30. var a = (jsonResponse.Data != null ? JsonConvert.DeserializeObject<List<BankResponse>>(jsonResponse.Data.ToString()) : null);
  31. jsonResponse.Data = a;
  32. return jsonResponse;
  33. }
  34. else
  35. {
  36. var errorJson = JsonConvert.DeserializeObject<ErrorJosn>(resultData);
  37. var jsonResponseData = JsonConvert.DeserializeObject<JsonResponse>(errorJson.Message);
  38. var data = JsonConvert.DeserializeObject<List<Data>>(jsonResponseData.Data.ToString());
  39. jsonResponse.Id = jsonResponseData.Id;
  40. jsonResponse.ResponseCode = jsonResponseData.ResponseCode;
  41. jsonResponse.Msg = jsonResponseData.Msg;
  42. jsonResponse.Data = data;
  43. jsonResponse.Extra = jsonResponseData.Extra;
  44. jsonResponse.Extra1 = jsonResponseData.Extra1;
  45. return jsonResponse;
  46. }
  47. }
  48. catch (Exception ex)
  49. {
  50. return new JsonResponse()
  51. {
  52. ResponseCode = "1",
  53. Msg = (ex.InnerException == null ? ex.Message : ex.InnerException.Message)
  54. };
  55. }
  56. }
  57. }
  58. public JsonResponse GetBankBranchList<T>(BankRequest model) where T : class
  59. {
  60. //Log.Debug("Calculate | Calling third party api to fetch the ex-rate details " + JsonConvert.SerializeObject(model));
  61. using (var client = RestApiClient.CallJMEThirdParty())
  62. {
  63. JsonResponse jsonResponse = new JsonResponse();
  64. var obj = JsonConvert.SerializeObject(model);
  65. var jbdContent = new StringContent(obj.ToString(), Encoding.UTF8, "application/json");
  66. try
  67. {
  68. var URL = "api/v1/TP/bankList";
  69. HttpResponseMessage resp = client.PostAsync(URL, jbdContent).Result;
  70. string resultData = resp.Content.ReadAsStringAsync().Result;
  71. if (resp.IsSuccessStatusCode)
  72. {
  73. jsonResponse = JsonConvert.DeserializeObject<JsonResponse>(resultData);
  74. var a = (jsonResponse.Data != null ? JsonConvert.DeserializeObject<List<BracBranchDatum>>(jsonResponse.Data.ToString()) : null);
  75. jsonResponse.Data = a;
  76. return jsonResponse;
  77. }
  78. else
  79. {
  80. var errorJson = JsonConvert.DeserializeObject<ErrorJosn>(resultData);
  81. var jsonResponseData = JsonConvert.DeserializeObject<JsonResponse>(errorJson.Message);
  82. var data = JsonConvert.DeserializeObject<List<Data>>(jsonResponseData.Data.ToString());
  83. jsonResponse.Id = jsonResponseData.Id;
  84. jsonResponse.ResponseCode = jsonResponseData.ResponseCode;
  85. jsonResponse.Msg = jsonResponseData.Msg;
  86. jsonResponse.Data = data;
  87. jsonResponse.Extra = jsonResponseData.Extra;
  88. jsonResponse.Extra1 = jsonResponseData.Extra1;
  89. return jsonResponse;
  90. }
  91. }
  92. catch (Exception ex)
  93. {
  94. return new JsonResponse()
  95. {
  96. ResponseCode = "1",
  97. Msg = (ex.InnerException == null ? ex.Message : ex.InnerException.Message)
  98. };
  99. }
  100. }
  101. }
  102. }
  103. }