Nav apraksta

ZhengWuDuiJie.cs 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. using CallCenter.Utility;
  2. using CallCenterApi.DB;
  3. using Newtonsoft.Json;
  4. using Newtonsoft.Json.Linq;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Data;
  8. using System.IO;
  9. using System.Linq;
  10. using System.Net;
  11. using System.Text;
  12. using System.Threading.Tasks;
  13. namespace CallCenter.QuartzService
  14. {
  15. public class ZhengWuDuiJie : QuartzJob
  16. {
  17. public ZhengWuDuiJie()
  18. {
  19. CronExpression = "0 0/5 * * * ?";
  20. DoWork += submit_dept_crnt_status;
  21. }
  22. public class Push
  23. {
  24. public string code { set; get; }
  25. public string message { set; get; }
  26. public body body { set; get; }
  27. }
  28. public class body
  29. {
  30. public errorObjs[] errorObjs { set; get; }
  31. }
  32. public class errorObjs
  33. {
  34. public string resturl { set; get; }
  35. public string errorid { set; get; }
  36. public string errormsg { set; get; }
  37. }
  38. public class paras
  39. {
  40. public string AREA_CODE { set; get; }
  41. public string CRNT_SEATNUM { set; get; }
  42. public string CRNT_TELNUM { set; get; }
  43. public string TDY_NUM { set; get; }
  44. public string TDY_TELNUM { set; get; }
  45. public string TDY_ZWNUM { set; get; }
  46. public string TDY_WZNUM { set; get; }
  47. public string TDY_WXNUM { set; get; }
  48. public string TDY_APNUM { set; get; }
  49. public string TDY_OTNUM { set; get; }
  50. public string TDY_TELRATE { set; get; }
  51. }
  52. string FrontUrl = Configs.GetValue("FrontUrl");
  53. string ISfiring = Configs.GetValue("ISfiring");
  54. /// <summary>
  55. /// 实时服务信息上报接口
  56. /// </summary>
  57. /// <param name="sender"></param>
  58. /// <param name="e"></param>
  59. public void submit_dept_crnt_status(object sender, EventArgs e)
  60. {
  61. var Dataurl = HttpMethods.HttpPost("http://10.0.22.201:8002/Affairs/submit_dept_crnt_status");
  62. var Dataurl2 = HttpMethods.HttpPost("http://10.0.22.201:8002/Converge/RePush");
  63. var Dataurl1 = HttpMethods.HttpPost("http://10.0.22.201:8002/Converge/ReOtherPush");
  64. }
  65. private string GetToken()
  66. {
  67. //Dictionary<string, object> values = new Dictionary<string, object>();
  68. //values.Add("client_id", "d620caf2-d00f-41a9-ae99-c6dfd435875e");
  69. //values.Add("client_secret", "4f75914e-d517-4325-ac64-c321377b12f0");
  70. //values.Add("grant_type", "client_credentials");
  71. //var jsonParam = JsonConvert.SerializeObject(values);
  72. string jsonParam = "client_id=d620caf2-d00f-41a9-ae99-c6dfd435875e&client_secret=4f75914e-d517-4325-ac64-c321377b12f0&grant_type=client_credentials";
  73. var responseString = HttpMethods.HttpPost("http://59.227.104.17/epoint-sso-web/rest/oauth2/token", jsonParam);
  74. Token jo = JsonConvert.DeserializeObject<Token>(responseString);
  75. if (jo.status.code == "1")
  76. {
  77. if (!string.IsNullOrEmpty(jo.custom.access_token))
  78. return jo.custom.access_token;
  79. else
  80. return "";
  81. }
  82. else
  83. return "";
  84. }
  85. public class Token
  86. {
  87. public List<Controls> controls { set; get; }
  88. public Custom custom { set; get; }
  89. public Status status { set; get; }
  90. }
  91. public class Controls
  92. {
  93. }
  94. public class Custom
  95. {
  96. public string access_token { set; get; }
  97. public string refresh_token { set; get; }
  98. public string jsessionid { set; get; }
  99. public string expires_in { set; get; }
  100. }
  101. public class Status
  102. {
  103. public string code { set; get; }
  104. }
  105. public void Backhaul()
  106. {
  107. string sql = "and F_IsDelete = 0 and F_Administrative in(1,2)";
  108. DataTable dt = new DataTable();
  109. int recordCount = 0;
  110. dt = CallCenterApi.BLL.PagerBLL.GetListPager(
  111. "T_Bus_WorkOrder b WITH(NOLOCK)",
  112. "F_WorkOrderId",
  113. "*",
  114. sql,
  115. "ORDER BY F_CreateTime DESC",
  116. 10000,
  117. 1,
  118. true,
  119. out recordCount);
  120. var now = DateTime.Now;
  121. if (dt != null && dt.Rows.Count > 0)
  122. {
  123. foreach (DataRow dr in dt.Rows)
  124. {
  125. if (dr["F_Administrative"].ToString() == "1")
  126. {
  127. WebClient web = new WebClient();
  128. web.Encoding = Encoding.UTF8;
  129. string Dataurl = web.DownloadString("http://10.0.22.201:8002/Affairs/FinishWorkOrder" + $"?workorderid={dr["F_WorkOrderId"].ToString()}");
  130. }
  131. else if (dr["F_Administrative"].ToString() == "2")
  132. {
  133. WebClient web = new WebClient();
  134. web.Encoding = Encoding.UTF8;
  135. string Dataurl = web.DownloadString("http://10.0.22.201:8002/Affairs/case_sign" + $"?workorderid={dr["F_WorkOrderId"].ToString()}");
  136. }
  137. }
  138. }
  139. }
  140. }
  141. }