mengjie лет назад: 6
Родитель
Сommit
71a9598370

+ 94 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/MedicalFollowup/FollowUpController.cs

@@ -59,6 +59,8 @@ namespace CallCenterApi.Interface.Controllers.MedicalFollowup
59 59
             string strejwwc = HttpUtility.UrlDecode(RequestString.GetQueryString("secondlevel"));
60 60
             //满意度
61 61
             string strsatisfy = HttpUtility.UrlDecode(RequestString.GetQueryString("satisfied"));
62
+            //类型
63
+            string strtype = HttpUtility.UrlDecode(RequestString.GetQueryString("type"));
62 64
 
63 65
             string strpageindex = RequestString.GetQueryString("page");
64 66
             int pageindex = 1;
@@ -133,7 +135,10 @@ namespace CallCenterApi.Interface.Controllers.MedicalFollowup
133 135
             {
134 136
                 sql += " and F_Satisfied = '"+strsatisfy +"' ";//随访完成状态
135 137
             }
136
-
138
+            if (strtype.Trim() != "" && strtype != "undefined")
139
+            {
140
+                sql += " and F_Type = '" + strtype.Trim() + "' ";
141
+            }
137 142
             if (strpageindex.Trim() != "")
138 143
             {
139 144
                 pageindex = Convert.ToInt32(strpageindex);
@@ -388,7 +393,95 @@ namespace CallCenterApi.Interface.Controllers.MedicalFollowup
388 393
 
389 394
 
390 395
         #region 科室随访率统计
396
+        //获取数据
397
+        public ActionResult GetSFDataList(string ks,string stime,string etime)
398
+        {
399
+            ActionResult res = NoToken("未知错误,请重新登录");
400
+            DataTable dtNew = new DataTable();
401
+            dtNew = GetData(ks,  stime,  etime);
402
+            res = Success("获取科室随访率统计数据成功", dtNew);
403
+
404
+            return res;
405
+        }
406
+
407
+        //获取数据源
408
+        private DataTable GetData(string ks, string stime, string etime)
409
+        {
410
+            DataTable dtNew = new DataTable();
411
+            #region 编辑表头
412
+            /*DataColumn dc1 = new DataColumn("科室名称", Type.GetType("System.String"));
413
+            DataColumn dc2 = new DataColumn("科室代码", Type.GetType("System.String"));
414
+            DataColumn dc3 = new DataColumn("时间", Type.GetType("System.String"));
415
+            DataColumn dc4 = new DataColumn("需要随访病人数", Type.GetType("System.String"));
416
+            DataColumn dc5 = new DataColumn("随访完成人数", Type.GetType("System.String"));
417
+            DataColumn dc6 = new DataColumn("科室随访率", Type.GetType("System.String"));
418
+            DataColumn dc7 = new DataColumn("满意人数", Type.GetType("System.String"));
419
+            DataColumn dc8 = new DataColumn("不满意人数", Type.GetType("System.String"));
420
+            DataColumn dc9 = new DataColumn("随访满意率", Type.GetType("System.String"));
421
+
422
+            dtNew.Columns.Add(dc1);
423
+            dtNew.Columns.Add(dc2);
424
+            dtNew.Columns.Add(dc3);
425
+            dtNew.Columns.Add(dc4);
426
+            dtNew.Columns.Add(dc5);
427
+            dtNew.Columns.Add(dc6);
428
+            #endregion
429
+
430
+            string sql = " ";
431
+            var list = bllCall.DataTableToList(bllCall.GetList($" 1=1 {sql} and UserCode is not null ").Tables[0]);
432
+            int callInCount = 0, callOutCount = 0, calledCount = 0, nocalledCount = 0;
433
+            //一天24小时
434
+            for (int i = 0; i < 24; i++)
435
+            {
436
+                DateTime stimes = Convert.ToDateTime(stime + " 00:00:00").AddHours(i);
437
+                DateTime etimes = Convert.ToDateTime(stime + " 00:59:59").AddHours(i);
438
+                DataRow drNew = dtNew.NewRow();
439
+                //SELECT BeginTime, * FROM T_Call_CallRecords WHERE DATEPART(hh,BeginTime) = DATEPART(hh, DATEADD(hh,-2,GETDATE())) and DATEPART(dd,BeginTime) = DATEPART(dd, GETDATE()) and DATEPART(mm, BeginTime) = DATEPART(mm, GETDATE()) and DATEPART(yy, BeginTime) = DATEPART(yy, GETDATE())
440
+                //CallType
441
+                //CallState呼叫状态,0:未接通电话1已接通电话
442
+                var callInTimes = list.Where(x => x.CallType == 0 && x.BeginTime >= stimes && x.BeginTime <= etimes).Count();   //呼入量
443
+                var callOutTimes = list.Where(x => x.CallType == 1 && x.BeginTime >= stimes && x.BeginTime <= etimes).Count();  //呼出量
444
+                var calledTimes = list.Where(x => x.CallState == 1 && x.BeginTime >= stimes && x.BeginTime <= etimes).Count();  //接通量
445
+                var nocalledTimes = list.Where(x => x.CallState == 0 && x.BeginTime >= stimes && x.BeginTime <= etimes).Count();//未接通量
391 446
 
447
+                //var calledRate = list.Where(x => x.CallType == 1 && x.BeginTime >= stimes && x.BeginTime <= etimes).Count();
448
+                drNew["时间"] = (i + 1).ToString();
449
+                drNew["呼入量"] = callInTimes.ToString();
450
+                drNew["呼出量"] = callOutTimes.ToString();
451
+                drNew["接通量"] = calledTimes.ToString();
452
+                drNew["未接通量"] = nocalledTimes.ToString();
453
+                //计算未结案率
454
+                var calledTotal = calledTimes + nocalledTimes;
455
+                Double notRate = 0.00;
456
+                if (calledTotal > 0)
457
+                    notRate = (double)calledTimes / (double)calledTotal;
458
+                drNew["接通率"] = (notRate * 100).ToString("0.00") + "%";
459
+                ////统计结案,未结案数
460
+                callInCount += callInTimes;
461
+                callOutCount += callOutTimes;
462
+                calledCount += calledTimes;
463
+                nocalledCount += nocalledTimes;
464
+                dtNew.Rows.Add(drNew);
465
+            }
466
+            #region 获取一条统计信息
467
+            DataRow drzj = dtNew.NewRow();
468
+            drzj["时间"] = "总计";
469
+            drzj["呼入量"] = callInCount.ToString();
470
+            drzj["呼出量"] = callOutCount.ToString();
471
+            drzj["接通量"] = calledCount.ToString();
472
+            drzj["未接通量"] = nocalledCount.ToString();
473
+            //计算未结案率
474
+            int totalAllCount = calledCount + nocalledCount;
475
+            Double calledAllRate = 0.00;
476
+            if (totalAllCount > 0)
477
+                calledAllRate = (double)calledCount / (double)totalAllCount;
478
+            drzj["接通率"] = (calledAllRate * 100).ToString("0.00") + "%";
479
+            dtNew.Rows.Add(drzj);*/
480
+            #endregion
481
+            return dtNew;
482
+        }
392 483
         #endregion
484
+
485
+        
393 486
     }
394 487
 }

+ 1 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/SeatGroupController.cs

@@ -32,7 +32,7 @@ namespace CallCenterApi.Interface.Controllers
32 32
             string sql = "";
33 33
             if (strcontent!=null&&strcontent != "")
34 34
             {
35
-                sql = " and( F_ZXZCode like '" + strcontent + "' or F_ZXZName  like '" + strcontent + "'  or F_WHBDKey like '" + strcontent + "%'  or F_WHWDKey  like '" + strcontent + "%'  or F_ZXAtt like '" + strcontent + "'  or F_Des like '" + strcontent + "')";
35
+                sql = " and( F_ZXZCode like '%" + strcontent + "%' or F_ZXZName  like '%" + strcontent + "%'  or F_WHBDKey like '%" + strcontent + "%'  or F_WHWDKey  like '%" + strcontent + "%'  or F_ZXAtt like '%" + strcontent + "%'  or F_Des like '%" + strcontent + "%')";
36 36
             }
37 37
                 if (strpageindex.Trim() != "")
38 38
                 {

+ 1 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/callout/CallOutPlanController.cs

@@ -669,7 +669,7 @@ namespace CallCenterApi.Interface.Controllers.callout
669 669
             var sql = "";
670 670
             if (!string.IsNullOrWhiteSpace(key))
671 671
             {
672
-                sql += " and F_Phone='" + key + "' or  F_TaskName like '%" + key + "%' or F_TaskRemark like '%" + key + "%'";
672
+                sql += " and F_Phone like'%" + key + "%' or  F_TaskName like '%" + key + "%' or F_TaskRemark like '%" + key + "%'";
673 673
             }
674 674
             sb.Append(" and F_Taskid in (select F_TaskID from T_Call_OutTask where  F_IsStart=1 and F_DeleteFlag=0 "+sql+" ) ");
675 675
 

+ 2 - 2
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/knowledge/KnowledgeController.cs

@@ -412,7 +412,7 @@ namespace CallCenterApi.Interface.Controllers.knowledge
412 412
                     sql += " and (F_Content like '%" + keywords.Trim() + "%' or F_Title like '%"
413 413
                         + keywords.Trim() + "%' or F_KeyWords like '%" + keywords.Trim() + "%')";
414 414
                 }
415
-                string str = "SELECT  F_Expand1 AS '所属分类',F_Title AS '标题',F_Description AS '关键字',F_Content AS '内容' FROM dbo.T_RepositoryInformation where 1=1 " + sql + " ORDER BY F_RepositoryId desc";
415
+                string str = "SELECT  F_Expand1 AS '所属分类',F_Title AS '标题',F_Content AS '内容',F_KeyWords AS '关键字' FROM dbo.T_RepositoryInformation where 1=1 " + sql + " ORDER BY F_RepositoryId desc";
416 416
                 dt = DbHelperSQL.Query(str).Tables[0];
417 417
                 foreach (DataRow dr in dt.Rows)
418 418
                 {
@@ -421,7 +421,7 @@ namespace CallCenterApi.Interface.Controllers.knowledge
421 421
             }
422 422
             #endregion
423 423
             NPOIHelper npoi = new NPOIHelper();
424
-            if (npoi.ExportToExcel("工单列表", dt) == "")
424
+            if (npoi.ExportToExcel("知识库列表", dt) == "")
425 425
             {
426 426
                 return Success("导出成功");
427 427
             }

+ 1 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/HourCallTotalController.cs

@@ -129,7 +129,7 @@ namespace CallCenterApi.Interface.Controllers.report
129 129
             {
130 130
                 NPOIHelper npoi = new NPOIHelper();
131 131
                 DataTable dt = GetData(stime);
132
-                if (npoi.ExportToExcel("通话时长数据", dt) == "")
132
+                if (npoi.ExportToExcel("每日呼叫数据", dt) == "")
133 133
                 {
134 134
                     return Success("导出成功");
135 135
                 }

+ 2 - 2
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/YearContrastController.cs

@@ -136,10 +136,10 @@ namespace CallCenterApi.Interface.Controllers.report
136 136
                     drNew["月份"] = (i + 1).ToString() + "月";
137 137
                     drNew[beginyear + "年客户呼叫数"] = bkhcall[i];
138 138
                     drNew[beginyear + "年坐席接听数"] = bzxjt[i];
139
-                    drNew[beginyear + "年坐席接听率"] = bjtl[i];
139
+                    drNew[beginyear + "年接通率"] = bjtl[i];
140 140
                     drNew[endyear + "年客户呼叫数"] = ekhcall[i];
141 141
                     drNew[endyear + "年坐席接听数"] = ezxjt[i];
142
-                    drNew[endyear + "年坐席接听率"] = ejtl[i];
142
+                    drNew[endyear + "年接通率"] = ejtl[i];
143 143
                     dtNew.Rows.Add(drNew);
144 144
                 }
145 145
             }

+ 1 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/tel/CallblackController.cs

@@ -31,7 +31,7 @@ namespace CallCenterApi.Interface.Controllers.tel
31 31
 
32 32
                     if (strtelnum != null && strtelnum.Trim() != "")
33 33
                     {
34
-                        sql += " and F_TelPhone= '" + strtelnum.Trim() + "' ";
34
+                        sql += " and F_TelPhone like '%" + strtelnum.Trim() + "%' ";
35 35
                     }
36 36
                     if (strsettime.Trim() != "" && strsettime != "undefined")
37 37
                     {

+ 7 - 7
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/tel/CallrecordsController.cs

@@ -295,31 +295,31 @@ namespace CallCenterApi.Interface.Controllers.tel
295 295
                 //else
296 296
                 //    sql += " and UserCode='" + usercode + "' ";
297 297
 
298
-                if (usercode != null && usercode.Trim() != "")
298
+                if (usercode != null && usercode.Trim() != ""&& usercode.Trim() != "undefined") 
299 299
                 {
300 300
                     sql += " and UserCode='" + usercode + "'";
301 301
                 }
302
-                if (dept != null && dept.Trim() != "")
302
+                if (dept != null && dept.Trim() != "" && dept.Trim() != "undefined")
303 303
                 {
304 304
                     sql += " and UserCode in (select F_UserCode from T_Sys_UserAccount where F_DeptId=" + dept.Trim() + ")";
305 305
                 }
306
-                if (phone != null && phone.Trim() != "")
306
+                if (phone != null && phone.Trim() != "" && phone.Trim() != "undefined")
307 307
                 {
308 308
                     sql += " and CallNumber like '%" + phone + "%'";
309 309
                 }
310
-                if (callstate.Trim() != "")
310
+                if (callstate.Trim() != "" && callstate.Trim() != "undefined")
311 311
                 {
312 312
                     sql += " and CallState='" + callstate + "'";
313 313
                 }
314
-                if (calltype.Trim() != "")
314
+                if (calltype.Trim() != "" && calltype.Trim() != "undefined")
315 315
                 {
316 316
                     sql += " and CallType='" + calltype + "'";
317 317
                 }
318
-                if (starttime.Trim() != "")
318
+                if (starttime.Trim() != "" && starttime.Trim() != "undefined")
319 319
                 {
320 320
                     sql += " and datediff(day,BeginTime,'" + starttime + "')<=0 ";
321 321
                 }
322
-                if (endtime.Trim() != "")
322
+                if (endtime.Trim() != "" && endtime.Trim() != "undefined")
323 323
                 {
324 324
                     sql += " and datediff(day,BeginTime,'" + endtime + "')>=0 ";
325 325
                 }

+ 1 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/tel/MobiledataController.cs

@@ -29,7 +29,7 @@ namespace CallCenterApi.Interface.Controllers.tel
29 29
 
30 30
                 if (strtelnum != null && strtelnum.Trim() != "")
31 31
                 {
32
-                    sql += " and (F_MobileNum= '" + strtelnum.Trim() + "' or F_ZipCode like '%" + strtelnum.Trim()
32
+                    sql += " and (F_MobileNum= '%" + strtelnum.Trim() + "%' or F_ZipCode like '%" + strtelnum.Trim()
33 33
                         + "%' or F_CityDes like '%" + strtelnum.Trim() + "%'or F_CardDes like '%" + strtelnum.Trim() + "%')";
34 34
                 }
35 35