Açıklama Yok

SatisfactionClose.cs 5.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. using CallCenterApi.DB;
  2. using CallCenterApi.Model;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. namespace CallCenter.QuartzService
  10. {
  11. public class SatisfactionClose : QuartzJob
  12. {
  13. public SatisfactionClose()
  14. {
  15. CronExpression = "0 0 0 * * ? *";
  16. DoWork += MyWork_DoWork;
  17. }
  18. private readonly CallCenterApi.BLL.T_Bus_WorkOrder workorder = new CallCenterApi.BLL.T_Bus_WorkOrder();
  19. private void MyWork_DoWork(object sender, EventArgs e)
  20. {
  21. //您反映的诉求已有回复,请前往http://12345rx.zwfw.anyang.gov.cn:9999/citizenNode/orderDetails.html?workorderid=XX9941050021122801070查看办结结果并进行评价,谢谢!
  22. string sql = "and F_WorkState in(6,7) and F_IsSms = 1 and F_IsDelete = 0 and(datediff(dd, (select top 1 RecvTime from T_SMS_RecvSMS where ( Content like '%您反映的诉求已有回复,请前往http://12345rx.zwfw.anyang.gov.cn:9999/citizenNode/orderDetails.html?%' or Content = '您诉求的诉求已完成,请前往安阳政务服务官网(https://zwfw.anyang.gov.cn),登录后查看办结结果对执行情况进行评价,谢谢' or Content = '您反映的诉求已有回复,请前往安阳政务服务官网(https://zwfw.anyang.gov.cn)登录后查看办结结果并对办理情况进行评价,或者拨打12345市长热线来电咨询,谢谢!') and F_Name = b.F_WorkOrderId order by RecvTime desc), GETDATE()) >= 15) and F_DealTime is not null";
  23. DataTable dt = new DataTable();
  24. int recordCount = 0;
  25. dt = CallCenterApi.BLL.PagerBLL.GetListPager(
  26. "T_Bus_WorkOrder b WITH(NOLOCK)",
  27. "F_WorkOrderId",
  28. "*",
  29. sql,
  30. "ORDER BY F_CreateTime DESC",
  31. 10000,
  32. 1,
  33. true,
  34. out recordCount);
  35. var now = DateTime.Now;
  36. //var modellist = workorder.GetModelList("F_WorkState =6 and F_IsSms =1 and F_IsDelete =0 and (datediff(hh,F_DealTime ,GETDATE() )>=15) and F_DealTime is not null");
  37. if (dt != null && dt.Rows .Count >0)
  38. {
  39. foreach (DataRow dr in dt.Rows)
  40. {
  41. CallCenterApi.Model.T_Bus_WorkOrder it = new CallCenterApi.Model.T_Bus_WorkOrder();
  42. it = workorder.GetModel(dr["F_WorkOrderId"].ToString());
  43. if (it !=null )
  44. {
  45. string Commentsql = "SELECT COUNT(1) FROM PublicComment WHERE WorkOrderId ='"+it .F_WorkOrderId +"' AND CreateTime >='"+it .F_DealTime +"'";
  46. var Comment = DbHelperSQL.GetSingle(Commentsql).ToString();
  47. if (int .Parse (Comment)>0)
  48. {
  49. continue;
  50. }
  51. else
  52. {
  53. Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
  54. keyValuePairs.Add("F_WorkState", 9);
  55. keyValuePairs.Add("F_IsSatisfie", 1);
  56. keyValuePairs.Add("F_IsClosed", 1);
  57. keyValuePairs.Add("F_CloseUser", "");
  58. keyValuePairs.Add("F_CloseTime", DateTime.Now);
  59. keyValuePairs.Add("F_FinalOpinion", "15天自动满意");
  60. keyValuePairs.Add("F_IsStandard", 1);
  61. keyValuePairs.Add("F_StandardIDS", "");
  62. keyValuePairs.Add("F_ToBereply", 0);
  63. workorder.UpdateWorkOrder(it.F_Id, keyValuePairs);
  64. // workorder.Update(it);
  65. CallCenterApi.Model.T_Bus_Operation oper = new CallCenterApi.Model.T_Bus_Operation();
  66. oper.F_WorkOrderId = it.F_WorkOrderId;
  67. oper.F_State = 9;
  68. oper.F_Message = " 15天未评价自动结案了工单,结果:满意";
  69. oper.F_CreateUser = "8000";
  70. oper.F_CreateTime = DateTime.Now;
  71. oper.F_IsDelete = 0;
  72. new CallCenterApi.BLL.T_Bus_Operation().Add(oper);
  73. string strStm_Src_Dsc = "";
  74. if (dr["F_InfoSource"].ToString() == "2458")
  75. {
  76. strStm_Src_Dsc = "连线政府";
  77. }
  78. if (dr["F_InfoSource"].ToString() == "1")
  79. {
  80. strStm_Src_Dsc = "市长热线";
  81. }
  82. if (dr["F_InfoSource"].ToString() == "2")
  83. {
  84. strStm_Src_Dsc = "市长信箱";
  85. }
  86. if (dr["F_InfoSource"].ToString() == "4")
  87. {
  88. strStm_Src_Dsc = "人民网";
  89. }
  90. string strSql = string.Format(@"INSERT INTO PublicComment ( [WorkOrderId], [strStm_Src_Dsc], [strWrkOrder_Cst_Ssf_Cd], [strUdt_Psn_ID], [strSsf_Cst_Ass_CntDsc], [strRltv_InsID], [strInpt_Inst_Nm], [strHpCnt], [CreateTime])
  91. values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}') ;select @@IDENTITY ", dr["F_WorkOrderId"].ToString(), strStm_Src_Dsc, "非常满意", "", " 15天未评议自动评议工单", "", "", "", DateTime.Now);
  92. object objres = DbHelperSQL.GetSingle(strSql);
  93. }
  94. }
  95. }
  96. }
  97. }
  98. }
  99. }