TestOpenDivideAccountsService.cs 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text.RegularExpressions;
  5. using MySystem.Models.Main;
  6. using Library;
  7. using LitJson;
  8. using System.Threading;
  9. namespace MySystem
  10. {
  11. public class TestOpenDivideAccountsService
  12. {
  13. public readonly static TestOpenDivideAccountsService Instance = new TestOpenDivideAccountsService();
  14. private TestOpenDivideAccountsService()
  15. { }
  16. public void Start()
  17. {
  18. Thread th = new Thread(StartListen);
  19. th.IsBackground = true;
  20. th.Start();
  21. }
  22. public void StartListen()
  23. {
  24. // DivideAccountsSign(1);//分账接收方签约
  25. // while (true)
  26. // {
  27. // OrderDivideAccounts22();//指定订单申请分账
  28. // Thread.Sleep(20000);
  29. // }
  30. // OrderDivideAccounts22();//指定订单申请分账
  31. // QueryOrderDivideAccounts();//指定订单分账交易详情查询
  32. // AggregatedPayRefundsss();//指定订单聚合支付退款接口
  33. ChangeMerchantCard(1);//商户修改银行卡
  34. }
  35. //添加分账接收方账户
  36. public void AddOpenDivideAccounts(int MerchantId)
  37. {
  38. WebCMSEntities db = new WebCMSEntities();
  39. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  40. string result = HaoDaHelper.Instance.AddOpenDivideAccounts(AddOpenDivideAccountsUtil.AddValue(AddInfo));
  41. db.Dispose();
  42. }
  43. //商户开通分账
  44. public void OpenDivideAccounts(int MerchantId)
  45. {
  46. WebCMSEntities db = new WebCMSEntities();
  47. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  48. string result = HaoDaHelper.Instance.OpenDivideAccounts(AddInfo.OutMchtNo, AddInfo.StoreNo);
  49. db.Dispose();
  50. }
  51. //分账接收方签约
  52. public void DivideAccountsSign(int MerchantId)
  53. {
  54. WebCMSEntities db = new WebCMSEntities();
  55. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  56. string result = HaoDaHelper.Instance.DivideAccountsSign("230817000000000278", AddInfo.OutMchtNo, AddInfo.StoreNo);
  57. db.Dispose();
  58. }
  59. //指定订单申请分账
  60. public void OrderDivideAccounts22()
  61. {
  62. // JsonData Infos = JsonMapper.ToObject(HaoDaHelper.Instance.OrderDivideAccountsQuery("FZ202309070000", "1475762"));
  63. JsonData Info = JsonMapper.ToObject(HaoDaHelper.Instance.OrderDivideAccounts22());
  64. if (Info["resultCode"].ToString() == "1")
  65. {
  66. JsonData Infos = JsonMapper.ToObject(HaoDaHelper.Instance.OrderDivideAccountsQuery("FZ202309070000", "1475762"));
  67. if (Infos["resultCode"].ToString() == "1")
  68. {
  69. HaoDaHelper.Instance.QueryOrderDivideAccountsss();
  70. // HaoDaHelper.Instance.AggregatedPayRefundsss();
  71. }
  72. }
  73. }
  74. //分账交易详情查询
  75. public void QueryOrderDivideAccounts()
  76. {
  77. HaoDaHelper.Instance.QueryOrderDivideAccountsss();
  78. }
  79. //指定订单聚合支付退款接口
  80. public void AggregatedPayRefundsss()
  81. {
  82. HaoDaHelper.Instance.AggregatedPayRefundsss();
  83. }
  84. //查询实名认证二维码
  85. public void QueryAuthQRcode(int MerchantId)
  86. {
  87. WebCMSEntities db = new WebCMSEntities();
  88. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  89. string result = HaoDaHelper.Instance.QueryAuthQRcode(AddInfo.OutMchtNo, AddInfo.StoreNo);
  90. db.Dispose();
  91. }
  92. //查询实名认证状态
  93. public void QueryAuthStatus(int MerchantId)
  94. {
  95. WebCMSEntities db = new WebCMSEntities();
  96. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  97. string result = HaoDaHelper.Instance.QueryAuthStatus(AddInfo.OutMchtNo, AddInfo.StoreNo);
  98. db.Dispose();
  99. }
  100. //商户修改银行卡
  101. public void ChangeMerchantCard(int MerchantId)
  102. {
  103. WebCMSEntities db = new WebCMSEntities();
  104. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  105. var request = TestChangeMerchantCardSetUtil.SetValue(AddInfo);
  106. JsonData Infos = JsonMapper.ToObject(HaoDaHelper.Instance.ChangeMerchantCard(request));
  107. JsonData results = JsonMapper.ToObject(HaoDaHelper.Instance.QueryChangeCardStatus(AddInfo.MchtNo, Infos["taskId"].ToString()));
  108. //TODO:修改结算卡变更商户相关信息
  109. // AccountNumber
  110. // BankName
  111. // BankBranchId
  112. // BankAddressCode
  113. // BankAccountType
  114. // OpenUnionNo
  115. // OpenCollectBankCode
  116. // OpenBankRegionCode
  117. // OpenBankAccout
  118. // OpenBankAccName
  119. // ZbankRegionCode
  120. // ZBankNo
  121. db.Dispose();
  122. }
  123. //绑定微信appid接口
  124. public void BindWeChatAppId(int MerchantId)
  125. {
  126. WebCMSEntities db = new WebCMSEntities();
  127. MerchantAddInfo AddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.Id == MerchantId);
  128. string result = HaoDaHelper.Instance.BindWeChatAppId(AddInfo.OutMchtNo, AddInfo.StoreNo, AppConfig.Haoda.SubAppId);
  129. db.Dispose();
  130. }
  131. }
  132. }