地铁二期项目正式开始

APIController.cs 45KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. using Newtonsoft.Json;
  7. using YTSoft.BaseCallCenter.MVCWeb.Models;
  8. using System.Data;
  9. using YTSoft.BaseCallCenter.MVCWeb.Commons;
  10. using System.Text;
  11. namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
  12. {
  13. public class APIController : Controller
  14. {
  15. BLL.T_Call_CallRecords recordBLL = new BLL.T_Call_CallRecords();
  16. //
  17. // GET: /API/
  18. public ActionResult Index()
  19. {
  20. return View();
  21. }
  22. #region 接口数据
  23. /// <summary>
  24. /// 接口数据
  25. /// </summary>
  26. /// <param name="page">当前页码</param>
  27. /// <param name="limit">每页数据量</param>
  28. /// <param name="sqlWhere">查询条件</param>
  29. /// <returns></returns>
  30. [ActionName("WorkOrderTypeFromData")]
  31. [HttpGet]
  32. public string WorkOrderTypeFromData(DateTime? NowDateTime, string dateParty)
  33. {
  34. //数据结果集
  35. ResponseData dataModel = new ResponseData();
  36. try
  37. {
  38. string startDate = "";
  39. string endDate = "";
  40. if (!string.IsNullOrEmpty(dateParty))
  41. {
  42. startDate = dateParty.Substring(0, 10);
  43. endDate = dateParty.Substring(12);
  44. }
  45. else
  46. {
  47. startDate = endDate = DateTime.Now.ToString("yyyy-MM-dd");
  48. }
  49. DataTable datas = recordBLL.GetWorkOrderBussTypeFromData(startDate, endDate);
  50. DataTable newTable = new DataTable();
  51. newTable.Columns.Add("业务类型");
  52. newTable.Columns.Add("语音工单");
  53. newTable.Columns.Add("微信工单");
  54. newTable.Columns.Add("微博工单");
  55. if (datas != null && datas.Rows.Count > 0)
  56. {
  57. DataRow dataRow;
  58. if (datas != null && datas.Rows.Count > 0)
  59. {
  60. #region 咨询工单
  61. int callInCount = 0;
  62. int wxCount = 0;
  63. int wbCount = 0;
  64. //来电工单数量
  65. DataRow[] CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=1");
  66. if (CallRows != null && CallRows.Length > 0)
  67. {
  68. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  69. {
  70. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  71. }
  72. }
  73. //留言工单数量
  74. CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=2");
  75. if (CallRows != null && CallRows.Length > 0)
  76. {
  77. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  78. {
  79. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  80. }
  81. }
  82. //微信工单数量
  83. CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=3");
  84. if (CallRows != null && CallRows.Length > 0)
  85. {
  86. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  87. {
  88. wxCount = int.Parse(CallRows[0]["callInCount"].ToString());
  89. }
  90. }
  91. //微博工单数量
  92. CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=4");
  93. if (CallRows != null && CallRows.Length > 0)
  94. {
  95. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  96. {
  97. wbCount = int.Parse(CallRows[0]["callInCount"].ToString());
  98. }
  99. }
  100. dataRow = newTable.NewRow();
  101. dataRow["业务类型"] = "咨询";
  102. dataRow["语音工单"] = callInCount;
  103. dataRow["微信工单"] = wxCount;
  104. dataRow["微博工单"] = wbCount;
  105. newTable.Rows.Add(dataRow);
  106. #endregion
  107. #region 建议工单
  108. callInCount = 0;
  109. wxCount = 0;
  110. wbCount = 0;
  111. //来电工单数量
  112. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=1");
  113. if (CallRows != null && CallRows.Length > 0)
  114. {
  115. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  116. {
  117. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  118. }
  119. }
  120. //留言工单数量
  121. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=2");
  122. if (CallRows != null && CallRows.Length > 0)
  123. {
  124. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  125. {
  126. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  127. }
  128. }
  129. //微信工单数量
  130. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=3");
  131. if (CallRows != null && CallRows.Length > 0)
  132. {
  133. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  134. {
  135. wxCount = int.Parse(CallRows[0]["callInCount"].ToString());
  136. }
  137. }
  138. //微博工单数量
  139. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=4");
  140. if (CallRows != null && CallRows.Length > 0)
  141. {
  142. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  143. {
  144. wbCount = int.Parse(CallRows[0]["callInCount"].ToString());
  145. }
  146. }
  147. dataRow = newTable.NewRow();
  148. dataRow["业务类型"] = "建议";
  149. dataRow["语音工单"] = callInCount;
  150. dataRow["微信工单"] = wxCount;
  151. dataRow["微博工单"] = wbCount;
  152. newTable.Rows.Add(dataRow);
  153. #endregion
  154. #region 表扬工单
  155. callInCount = 0;
  156. wxCount = 0;
  157. wbCount = 0;
  158. //来电工单数量
  159. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=1");
  160. if (CallRows != null && CallRows.Length > 0)
  161. {
  162. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  163. {
  164. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  165. }
  166. }
  167. //留言工单数量
  168. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=2");
  169. if (CallRows != null && CallRows.Length > 0)
  170. {
  171. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  172. {
  173. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  174. }
  175. }
  176. //微信工单数量
  177. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=3");
  178. if (CallRows != null && CallRows.Length > 0)
  179. {
  180. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  181. {
  182. wxCount = int.Parse(CallRows[0]["callInCount"].ToString());
  183. }
  184. }
  185. //微博工单数量
  186. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=4");
  187. if (CallRows != null && CallRows.Length > 0)
  188. {
  189. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  190. {
  191. wbCount = int.Parse(CallRows[0]["callInCount"].ToString());
  192. }
  193. }
  194. dataRow = newTable.NewRow();
  195. dataRow["业务类型"] = "表扬";
  196. dataRow["语音工单"] = callInCount;
  197. dataRow["微信工单"] = wxCount;
  198. dataRow["微博工单"] = wbCount;
  199. newTable.Rows.Add(dataRow);
  200. #endregion
  201. #region 挂失工单
  202. callInCount = 0;
  203. wxCount = 0;
  204. wbCount = 0;
  205. //来电工单数量
  206. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=1");
  207. if (CallRows != null && CallRows.Length > 0)
  208. {
  209. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  210. {
  211. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  212. }
  213. }
  214. //留言工单数量
  215. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=2");
  216. if (CallRows != null && CallRows.Length > 0)
  217. {
  218. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  219. {
  220. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  221. }
  222. }
  223. //微信工单数量
  224. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=3");
  225. if (CallRows != null && CallRows.Length > 0)
  226. {
  227. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  228. {
  229. wxCount = int.Parse(CallRows[0]["callInCount"].ToString());
  230. }
  231. }
  232. //微博工单数量
  233. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=4");
  234. if (CallRows != null && CallRows.Length > 0)
  235. {
  236. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  237. {
  238. wbCount = int.Parse(CallRows[0]["callInCount"].ToString());
  239. }
  240. }
  241. dataRow = newTable.NewRow();
  242. dataRow["业务类型"] = "挂失";
  243. dataRow["语音工单"] = callInCount;
  244. dataRow["微信工单"] = wxCount;
  245. dataRow["微博工单"] = wbCount;
  246. newTable.Rows.Add(dataRow);
  247. #endregion
  248. #region 投诉工单
  249. callInCount = 0;
  250. wxCount = 0;
  251. wbCount = 0;
  252. //来电工单数量
  253. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=1");
  254. if (CallRows != null && CallRows.Length > 0)
  255. {
  256. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  257. {
  258. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  259. }
  260. }
  261. //留言工单数量
  262. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=2");
  263. if (CallRows != null && CallRows.Length > 0)
  264. {
  265. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  266. {
  267. callInCount += int.Parse(CallRows[0]["callInCount"].ToString());
  268. }
  269. }
  270. //微信工单数量
  271. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=3");
  272. if (CallRows != null && CallRows.Length > 0)
  273. {
  274. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  275. {
  276. wxCount = int.Parse(CallRows[0]["callInCount"].ToString());
  277. }
  278. }
  279. //微博工单数量
  280. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=4");
  281. if (CallRows != null && CallRows.Length > 0)
  282. {
  283. if (CallRows[0]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[0]["callInCount"].ToString()))
  284. {
  285. wbCount = int.Parse(CallRows[0]["callInCount"].ToString());
  286. }
  287. }
  288. dataRow = newTable.NewRow();
  289. dataRow["业务类型"] = "投诉";
  290. dataRow["语音工单"] = callInCount;
  291. dataRow["微信工单"] = wxCount;
  292. dataRow["微博工单"] = wbCount;
  293. newTable.Rows.Add(dataRow);
  294. #endregion
  295. }
  296. }
  297. dataModel.code = 0;
  298. dataModel.data = newTable;
  299. }
  300. catch (Exception ex)
  301. {
  302. dataModel.code = 200;
  303. dataModel.msg = ex.Message;
  304. }
  305. return JsonConvert.SerializeObject(dataModel);
  306. }
  307. /// <summary>
  308. /// 接口数据2
  309. /// </summary>
  310. /// <param name="page">当前页码</param>
  311. /// <param name="limit">每页数据量</param>
  312. /// <param name="sqlWhere">查询条件</param>
  313. /// <returns></returns>
  314. [ActionName("WorkOrderTypeFromDataNew")]
  315. [HttpGet]
  316. public string WorkOrderTypeFromDataNew(DateTime? NowDateTime, string dateParty)
  317. {
  318. //数据结果集
  319. ResponseData dataModel = new ResponseData();
  320. try
  321. {
  322. string startDate = "";
  323. string endDate = "";
  324. if (!string.IsNullOrEmpty(dateParty))
  325. {
  326. startDate = dateParty.Substring(0, 10);
  327. endDate = dateParty.Substring(12);
  328. }
  329. else
  330. {
  331. startDate = endDate = DateTime.Now.ToString("yyyy-MM-dd");
  332. }
  333. DataTable datas = recordBLL.GetWorkOrderBussTypeFromDataNew(startDate, endDate);
  334. DataTable newTable = new DataTable();
  335. newTable.Columns.Add("BusinessType");
  336. newTable.Columns.Add("allcount");
  337. newTable.Columns.Add("callcount");
  338. newTable.Columns.Add("wxcount");
  339. newTable.Columns.Add("wbcount");
  340. newTable.Columns.Add("Returnvisitproblem"); //概要:F_RETURNVISITPROBLEM
  341. if (datas != null && datas.Rows.Count > 0)
  342. {
  343. DataRow dataRow;
  344. if (datas != null && datas.Rows.Count > 0)
  345. {
  346. #region 咨询工单
  347. int callInCount = 0;
  348. int wxCount = 0;
  349. int wbCount = 0;
  350. List<string> Returnvisitproblem_zx = new List<string>();
  351. //string Returnvisitproblem_zx = "[";
  352. //来电工单数量
  353. DataRow[] CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=1");
  354. if (CallRows != null && CallRows.Length > 0)
  355. {
  356. for (int i = 0; i < CallRows.Length; i++)
  357. {
  358. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  359. {
  360. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  361. }
  362. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  363. {
  364. Returnvisitproblem_zx.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim());
  365. }
  366. }
  367. //for (int i = 0; i < CallRows.Length; i++)
  368. //{
  369. // if (i == 0)
  370. // {
  371. // Returnvisitproblem_zx = Returnvisitproblem_zx + "\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  372. // }
  373. // else
  374. // {
  375. // Returnvisitproblem_zx = Returnvisitproblem_zx + ",\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  376. // }
  377. //}
  378. }
  379. //留言工单数量
  380. CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=2");
  381. if (CallRows != null && CallRows.Length > 0)
  382. {
  383. for (int i = 0; i < CallRows.Length; i++)
  384. {
  385. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  386. {
  387. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  388. }
  389. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  390. {
  391. Returnvisitproblem_zx.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim());
  392. }
  393. }
  394. //for (int i = 0; i < CallRows.Length; i++)
  395. //{
  396. // if (i == 0)
  397. // {
  398. // Returnvisitproblem_zx = Returnvisitproblem_zx + "\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  399. // }
  400. // else
  401. // {
  402. // Returnvisitproblem_zx = Returnvisitproblem_zx + ",\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  403. // }
  404. //}
  405. }
  406. //微信工单数量
  407. CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=3");
  408. if (CallRows != null && CallRows.Length > 0)
  409. {
  410. for (int i = 0; i < CallRows.Length; i++)
  411. {
  412. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  413. {
  414. wxCount = int.Parse(CallRows[i]["callInCount"].ToString());
  415. }
  416. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  417. {
  418. Returnvisitproblem_zx.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim());
  419. }
  420. }
  421. //for (int i = 0; i < CallRows.Length; i++)
  422. //{
  423. // if (i == 0)
  424. // {
  425. // Returnvisitproblem_zx = Returnvisitproblem_zx + "\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  426. // }
  427. // else
  428. // {
  429. // Returnvisitproblem_zx = Returnvisitproblem_zx + ",\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  430. // }
  431. //}
  432. }
  433. //微博工单数量
  434. CallRows = datas.Select("BusinessType=6 and F_REPAIRMANID=4");
  435. if (CallRows != null && CallRows.Length > 0)
  436. {
  437. for (int i = 0; i < CallRows.Length; i++)
  438. {
  439. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  440. {
  441. wbCount = int.Parse(CallRows[i]["callInCount"].ToString());
  442. }
  443. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  444. {
  445. Returnvisitproblem_zx.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim());
  446. }
  447. }
  448. //for (int i = 0; i < CallRows.Length; i++)
  449. //{
  450. // if (i == 0)
  451. // {
  452. // Returnvisitproblem_zx = Returnvisitproblem_zx + "\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  453. // }
  454. // else
  455. // {
  456. // Returnvisitproblem_zx = Returnvisitproblem_zx + ",\"" + CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() + "\"";
  457. // }
  458. //}
  459. }
  460. //Returnvisitproblem_zx = Returnvisitproblem_zx + "]";
  461. //微博接口
  462. int wxxtCount = WXWorkOrderCount(3, startDate, endDate);
  463. //微信接口
  464. int wbxtCount = WXWorkOrderCount(4, startDate, endDate);
  465. dataRow = newTable.NewRow();
  466. dataRow["BusinessType"] = "咨询";
  467. dataRow["allcount"] = callInCount + wxCount + wxxtCount + wbCount + wbxtCount;
  468. dataRow["callcount"] = callInCount;
  469. dataRow["wxcount"] = wxCount + wxxtCount;
  470. dataRow["wbcount"] = wbCount + wbxtCount;
  471. dataRow["Returnvisitproblem"] = JsonConvert.SerializeObject(Returnvisitproblem_zx); //Returnvisitproblem_zx;Returnvisitproblem_zx.Replace("\\", ""); //JsonConvert.SerializeObject(Returnvisitproblem_zx); //string.Join(",", Returnvisitproblem_zx) ;
  472. newTable.Rows.Add(dataRow);
  473. #endregion
  474. #region 建议工单
  475. callInCount = 0;
  476. wxCount = 0;
  477. wbCount = 0;
  478. //string Returnvisitproblem_jy = "";
  479. List<string> Returnvisitproblem_jy = new List<string>();
  480. //来电工单数量
  481. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=1");
  482. if (CallRows != null && CallRows.Length > 0)
  483. {
  484. for (int i = 0; i < CallRows.Length; i++)
  485. {
  486. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  487. {
  488. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  489. }
  490. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  491. {
  492. Returnvisitproblem_jy.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  493. }
  494. }
  495. }
  496. //留言工单数量
  497. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=2");
  498. if (CallRows != null && CallRows.Length > 0)
  499. {
  500. for (int i = 0; i < CallRows.Length; i++)
  501. {
  502. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  503. {
  504. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  505. }
  506. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  507. {
  508. Returnvisitproblem_jy.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  509. }
  510. }
  511. }
  512. //微信工单数量
  513. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=3");
  514. if (CallRows != null && CallRows.Length > 0)
  515. {
  516. for (int i = 0; i < CallRows.Length; i++)
  517. {
  518. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  519. {
  520. wxCount = int.Parse(CallRows[i]["callInCount"].ToString());
  521. }
  522. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  523. {
  524. Returnvisitproblem_jy.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  525. }
  526. }
  527. }
  528. //微博工单数量
  529. CallRows = datas.Select("BusinessType=14 and F_REPAIRMANID=4");
  530. if (CallRows != null && CallRows.Length > 0)
  531. {
  532. for (int i = 0; i < CallRows.Length; i++)
  533. {
  534. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  535. {
  536. wbCount = int.Parse(CallRows[i]["callInCount"].ToString());
  537. }
  538. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  539. {
  540. Returnvisitproblem_jy.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  541. }
  542. }
  543. }
  544. dataRow = newTable.NewRow();
  545. dataRow["BusinessType"] = "建议";
  546. dataRow["allcount"] = callInCount + wxCount + wbCount;
  547. dataRow["callcount"] = callInCount;
  548. dataRow["wxcount"] = wxCount;
  549. dataRow["wbcount"] = wbCount;
  550. dataRow["Returnvisitproblem"] = JsonConvert.SerializeObject(Returnvisitproblem_jy);
  551. newTable.Rows.Add(dataRow);
  552. #endregion
  553. #region 表扬工单
  554. callInCount = 0;
  555. wxCount = 0;
  556. wbCount = 0;
  557. //string Returnvisitproblem_by = "";
  558. List<string> Returnvisitproblem_by = new List<string>();
  559. //来电工单数量
  560. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=1");
  561. if (CallRows != null && CallRows.Length > 0)
  562. {
  563. for (int i = 0; i < CallRows.Length; i++)
  564. {
  565. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  566. {
  567. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  568. }
  569. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  570. {
  571. Returnvisitproblem_by.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  572. }
  573. }
  574. }
  575. //留言工单数量
  576. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=2");
  577. if (CallRows != null && CallRows.Length > 0)
  578. {
  579. for (int i = 0; i < CallRows.Length; i++)
  580. {
  581. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  582. {
  583. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  584. }
  585. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  586. {
  587. Returnvisitproblem_by.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  588. }
  589. }
  590. }
  591. //微信工单数量
  592. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=3");
  593. if (CallRows != null && CallRows.Length > 0)
  594. {
  595. for (int i = 0; i < CallRows.Length; i++)
  596. {
  597. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  598. {
  599. wxCount = int.Parse(CallRows[i]["callInCount"].ToString());
  600. }
  601. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  602. {
  603. Returnvisitproblem_by.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  604. }
  605. }
  606. }
  607. //微博工单数量
  608. CallRows = datas.Select("BusinessType=18 and F_REPAIRMANID=4");
  609. if (CallRows != null && CallRows.Length > 0)
  610. {
  611. for (int i = 0; i < CallRows.Length; i++)
  612. {
  613. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  614. {
  615. wbCount = int.Parse(CallRows[i]["callInCount"].ToString());
  616. }
  617. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  618. {
  619. Returnvisitproblem_by.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  620. }
  621. }
  622. }
  623. dataRow = newTable.NewRow();
  624. dataRow["BusinessType"] = "表扬";
  625. dataRow["allcount"] = callInCount + wxCount + wbCount;
  626. dataRow["callcount"] = callInCount;
  627. dataRow["wxcount"] = wxCount;
  628. dataRow["wbcount"] = wbCount;
  629. dataRow["Returnvisitproblem"] = JsonConvert.SerializeObject(Returnvisitproblem_by); ;
  630. newTable.Rows.Add(dataRow);
  631. #endregion
  632. #region 挂失工单
  633. callInCount = 0;
  634. wxCount = 0;
  635. wbCount = 0;
  636. //string Returnvisitproblem_gs = "";
  637. List<string> Returnvisitproblem_gs = new List<string>();
  638. //来电工单数量
  639. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=1");
  640. if (CallRows != null && CallRows.Length > 0)
  641. {
  642. for (int i = 0; i < CallRows.Length; i++)
  643. {
  644. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  645. {
  646. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  647. }
  648. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  649. {
  650. Returnvisitproblem_gs.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  651. }
  652. }
  653. }
  654. //留言工单数量
  655. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=2");
  656. if (CallRows != null && CallRows.Length > 0)
  657. {
  658. for (int i = 0; i < CallRows.Length; i++)
  659. {
  660. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  661. {
  662. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  663. }
  664. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  665. {
  666. Returnvisitproblem_gs.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  667. }
  668. }
  669. }
  670. //微信工单数量
  671. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=3");
  672. if (CallRows != null && CallRows.Length > 0)
  673. {
  674. for (int i = 0; i < CallRows.Length; i++)
  675. {
  676. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  677. {
  678. wxCount = int.Parse(CallRows[i]["callInCount"].ToString());
  679. }
  680. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  681. {
  682. Returnvisitproblem_gs.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  683. }
  684. }
  685. }
  686. //微博工单数量
  687. CallRows = datas.Select("BusinessType=19 and F_REPAIRMANID=4");
  688. if (CallRows != null && CallRows.Length > 0)
  689. {
  690. for (int i = 0; i < CallRows.Length; i++)
  691. {
  692. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  693. {
  694. wbCount = int.Parse(CallRows[i]["callInCount"].ToString());
  695. }
  696. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  697. {
  698. Returnvisitproblem_gs.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  699. }
  700. }
  701. }
  702. dataRow = newTable.NewRow();
  703. dataRow["BusinessType"] = "挂失";
  704. dataRow["allcount"] = callInCount + wxCount + wbCount;
  705. dataRow["callcount"] = callInCount;
  706. dataRow["wxcount"] = wxCount;
  707. dataRow["wbcount"] = wbCount;
  708. dataRow["Returnvisitproblem"] = JsonConvert.SerializeObject(Returnvisitproblem_gs); ;
  709. newTable.Rows.Add(dataRow);
  710. #endregion
  711. #region 投诉工单
  712. callInCount = 0;
  713. wxCount = 0;
  714. wbCount = 0;
  715. //string Returnvisitproblem_ts="";
  716. List<string> Returnvisitproblem_ts = new List<string>();
  717. //来电工单数量
  718. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=1");
  719. if (CallRows != null && CallRows.Length > 0)
  720. {
  721. for (int i = 0; i < CallRows.Length; i++)
  722. {
  723. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  724. {
  725. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  726. }
  727. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  728. {
  729. Returnvisitproblem_ts.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  730. }
  731. }
  732. }
  733. //留言工单数量
  734. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=2");
  735. if (CallRows != null && CallRows.Length > 0)
  736. {
  737. for (int i = 0; i < CallRows.Length; i++)
  738. {
  739. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  740. {
  741. callInCount += int.Parse(CallRows[i]["callInCount"].ToString());
  742. }
  743. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  744. {
  745. Returnvisitproblem_ts.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  746. }
  747. }
  748. }
  749. //微信工单数量
  750. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=3");
  751. if (CallRows != null && CallRows.Length > 0)
  752. {
  753. for (int i = 0; i < CallRows.Length; i++)
  754. {
  755. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  756. {
  757. wxCount = int.Parse(CallRows[i]["callInCount"].ToString());
  758. }
  759. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  760. {
  761. Returnvisitproblem_ts.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  762. }
  763. }
  764. }
  765. //微博工单数量
  766. CallRows = datas.Select("BusinessType=3 and F_REPAIRMANID=4");
  767. if (CallRows != null && CallRows.Length > 0)
  768. {
  769. for (int i = 0; i < CallRows.Length; i++)
  770. {
  771. if (CallRows[i]["callInCount"] != null && !string.IsNullOrEmpty(CallRows[i]["callInCount"].ToString()))
  772. {
  773. wbCount = int.Parse(CallRows[i]["callInCount"].ToString());
  774. }
  775. if (CallRows[i]["F_RETURNVISITPROBLEM"].ToString().Trim() != "")
  776. {
  777. Returnvisitproblem_ts.Add(CallRows[i]["F_RETURNVISITPROBLEM"].ToString());
  778. }
  779. }
  780. }
  781. dataRow = newTable.NewRow();
  782. dataRow["BusinessType"] = "投诉";
  783. dataRow["allcount"] = callInCount + wxCount + wbCount;
  784. dataRow["callcount"] = callInCount;
  785. dataRow["wxcount"] = wxCount;
  786. dataRow["wbcount"] = wbCount;
  787. dataRow["Returnvisitproblem"] = JsonConvert.SerializeObject(Returnvisitproblem_ts); ;
  788. newTable.Rows.Add(dataRow);
  789. #endregion
  790. }
  791. }
  792. dataModel.code = 0;
  793. dataModel.data = newTable;
  794. }
  795. catch (Exception ex)
  796. {
  797. dataModel.code = 200;
  798. dataModel.msg = ex.Message;
  799. }
  800. return JsonConvert.SerializeObject(dataModel);
  801. }
  802. /// 获取 微信/微博接口数量--放置咨询类
  803. /// </summary>
  804. /// <param name="StartDate">开始日期</param>
  805. /// <param name="EndDate">结束日期</param>
  806. /// <returns></returns>
  807. public int WXWorkOrderCount(int? busType, string startDate, string endDate)
  808. {
  809. int totalCount = 0;
  810. string wxAddUrl = "";
  811. try
  812. {
  813. StringBuilder returnStr = new StringBuilder();
  814. if (busType == 4)
  815. {
  816. wxAddUrl = "http://rexian.zzmetro.com/api/external/wbcount";
  817. }
  818. else
  819. {
  820. wxAddUrl = "http://rexian.zzmetro.com/api/external/wxcount";
  821. }
  822. string paramsStr = "begin=" + startDate + "&end=" + endDate;
  823. string addWxResult = HttpHelper.HttpGet(wxAddUrl, paramsStr);
  824. WXResponseResult ResultModel = JsonConvert.DeserializeObject<WXResponseResult>(addWxResult);
  825. if (ResultModel != null)
  826. {
  827. if (ResultModel.service != null && ResultModel.service > 0 && ResultModel.service > totalCount)
  828. {
  829. totalCount = ResultModel.service - totalCount;
  830. }
  831. }
  832. }
  833. catch (Exception ex)
  834. {
  835. }
  836. return totalCount;
  837. }
  838. #endregion
  839. }
  840. }