浏览代码

1、长呼入次数 与 坐席工作报表 呼入电话数 数值不统一 修改(原因是一个是根据工号查询,一个是工号姓名【由于可能工号不变,会修改姓名】);2、来电单位关键字 下拉卡死优化(获取前200条)

lihai 7 年之前
父节点
当前提交
88ce068d31

+ 3 - 0
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Configs/system.config

@@ -23,4 +23,7 @@
23 23
   <add key="WechatAppid" value="wx957c2297c315e6a5" />
24 24
   <!-- 设置微信appsecret -->
25 25
   <add key="WechatAppsecret" value="6c2d1f9fd32f906c315f03398800d474" />
26
+  <!-- ================== 4:来电单位关键字参数 ================== -->
27
+  <!-- 来点单位 查询每个表top记录数(工单表,客户档案表),包括重复关键字 -->
28
+  <add key="CallUnitNum" value="200" />
26 29
 </appSettings>

+ 70 - 9
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/customer/CustomerController.cs

@@ -20,6 +20,10 @@ namespace CallCenterApi.Interface.Controllers.customer
20 20
     //[Authority]
21 21
     public class CustomerController : BaseController
22 22
     {
23
+        BLL.T_Wo_WorkOrder bllWo = new BLL.T_Wo_WorkOrder();
24
+        BLL.T_Cus_CustomerBase bllCus = new BLL.T_Cus_CustomerBase();
25
+
26
+        public int CallUnitNum = Convert.ToInt32(Configs.GetValue("CallUnitNum"));
23 27
         /// <summary>
24 28
         /// 获取客户列表
25 29
         /// </summary>
@@ -262,9 +266,14 @@ namespace CallCenterApi.Interface.Controllers.customer
262 266
                             }
263 267
                         }
264 268
                     }
265
-                    List<string> lddep = new BLL.T_Cus_CustomerBase().GetLDdep();
266
-                    var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
267
-                    var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
269
+                    //List<string> lddep = new BLL.T_Cus_CustomerBase().GetLDdep();
270
+                    //var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
271
+                    //var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
272
+
273
+                    var lddep = GetLDdep();//从客户信息查找
274
+                    var listWo = bllWo.GetList(CallUnitNum, "1=1", " CreateTime DESC ");
275
+                    var gdlddep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
276
+                    var gdfkdep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
268 277
                     foreach (var item in gdlddep)
269 278
                     {
270 279
                         if (!lddep.Contains(item))
@@ -275,6 +284,7 @@ namespace CallCenterApi.Interface.Controllers.customer
275 284
                         if (!lddep.Contains(item))
276 285
                             lddep.Add(item);
277 286
                     }
287
+                    List<string> lddepResult = lddep.Distinct().ToList();
278 288
                     CacheHelper.Insert("LDDep", lddep);
279 289
                 }
280 290
                 return Error("参数错误");
@@ -309,9 +319,14 @@ namespace CallCenterApi.Interface.Controllers.customer
309 319
                         if (DbHelperSQL.ExecuteSql(sql) > 0)
310 320
                         {
311 321
                             res = Success("设置成功");
312
-                            List<string> lddep = new BLL.T_Cus_CustomerBase().GetLDdep();
313
-                            var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
314
-                            var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
322
+                            //List<string> lddep = new BLL.T_Cus_CustomerBase().GetLDdep();
323
+                            //var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
324
+                            //var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
325
+
326
+                            var lddep = GetLDdep();//从客户信息查找
327
+                            var listWo = bllWo.GetList(CallUnitNum, "1=1", " CreateTime DESC ");
328
+                            var gdlddep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
329
+                            var gdfkdep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
315 330
                             foreach (var item in gdlddep)
316 331
                             {
317 332
                                 if (!lddep.Contains(item))
@@ -322,6 +337,8 @@ namespace CallCenterApi.Interface.Controllers.customer
322 337
                                 if (!lddep.Contains(item))
323 338
                                     lddep.Add(item);
324 339
                             }
340
+
341
+                            List<string> lddepResult = lddep.Distinct().ToList();
325 342
                             CacheHelper.Insert("LDDep", lddep);
326 343
                         }
327 344
                         else
@@ -377,9 +394,15 @@ namespace CallCenterApi.Interface.Controllers.customer
377 394
                 }
378 395
                 else
379 396
                 {
380
-                    lddep = new BLL.T_Cus_CustomerBase().GetLDdep();//从客户信息查找
381
-                    var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
382
-                    var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
397
+                    //lddep = new BLL.T_Cus_CustomerBase().GetLDdep();//从客户信息查找
398
+                    //var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
399
+                    //var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
400
+
401
+                    lddep = GetLDdep();//从客户信息查找
402
+                    var listWo = bllWo.GetList(CallUnitNum, "1=1", " CreateTime DESC ");                     
403
+                    var gdlddep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
404
+                    var gdfkdep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
405
+
383 406
                     foreach (var item in gdlddep)
384 407
                     {
385 408
                         if (!lddep.Contains(item))
@@ -406,6 +429,9 @@ namespace CallCenterApi.Interface.Controllers.customer
406 429
 
407 430
                             //}
408 431
                         }
432
+                        //lddep = lddep.OrderBy(x=>x.cre);
433
+                        List<string> lddepResult = lddep.Distinct().ToList();
434
+                        CacheHelper.Insert("LDDep", lddepResult);
409 435
                         var obj = new
410 436
                         {
411 437
                             dep = resdep
@@ -418,6 +444,41 @@ namespace CallCenterApi.Interface.Controllers.customer
418 444
             }
419 445
             return res;
420 446
         }
447
+
448
+        /// <summary>
449
+        /// 获取来电单位
450
+        /// </summary>
451
+        /// <returns></returns>
452
+        public List<string> GetLDdep()
453
+        {
454
+            List<string> resdep = new List<string>();
455
+            List<string> lddep = new List<string>();
456
+            var listCus = bllCus.GetList(CallUnitNum, "1=1", " F_CreatedOn DESC ");
457
+            var gdlddep = bllCus.DataTableToList(listCus.Tables[0]).Select(p => p.F_CustomerIndustry).Distinct().ToList();//从工单来电单位中加载
458
+            var gdfkdep = bllCus.DataTableToList(listCus.Tables[0]).Select(p => p.F_RelationShipClass).Distinct().ToList();//从工单反馈单位中加载
459
+            foreach (var item in gdlddep)
460
+            {
461
+                if (!lddep.Contains(item))
462
+                    lddep.Add(item);
463
+            }
464
+            foreach (var item in gdfkdep)
465
+            {
466
+                if (!lddep.Contains(item))
467
+                    lddep.Add(item);
468
+            }
469
+            if (lddep != null && lddep.Count > 0)
470
+            {
471
+                foreach (string dep in lddep)
472
+                {
473
+                    if (!Utils.IsNumeric(dep))
474
+                    {
475
+                        resdep.Add(dep);
476
+                    }
477
+                }
478
+            }
479
+            return resdep;
480
+        }
481
+
421 482
         /// <summary>
422 483
         /// 判断来电单位是否存在。不存在才可以
423 484
         /// </summary>

+ 5 - 2
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/TalkTimeController.cs

@@ -316,7 +316,9 @@ namespace CallCenterApi.Interface.Controllers.report
316 316
             //DataTable dt = DbHelperSQL.Query("SELECT UserId,UserCode,UserName,COUNT(*) AS calloutCount FROM T_Call_CallRecords where 1=1 " + sql + "  GROUP BY UserId,UserCode,UserName").Tables[0];
317 317
             //var recordstr = " select users.F_UserId,users.F_UserCode,users.F_UserName,COUNT(*) AS calloutCount from T_Sys_UserAccount users right join T_Call_CallRecords records on users.F_UserCode = records.UserCode and 1=1 " + sql + " GROUP BY users.F_UserId,users.F_UserCode,users.F_UserName";
318 318
             //20180509 通话时长统计不对  machenyang
319
-            var recordstr = " select records.UserCode,records.UserId,records.UserName,COUNT(*) from T_Call_CallRecords records where 1=1 " + sql + "  and UserCode is not null group by records.UserCode,records.UserId,records.UserName";
319
+            //20180509 通话时长呼入次数 与 坐席工作报表 呼入电话数 数值不统一 修改(原因是一个是根据工号查询,一个是工号姓名【由于可能工号不变,会修改姓名】)  lihai
320
+            //var recordstr = " select records.UserCode,records.UserId,records.UserName,COUNT(*) from T_Call_CallRecords records where 1=1 " + sql + "  and UserCode is not null group by records.UserCode,records.UserId,records.UserName";
321
+            var recordstr = " select records.UserCode,COUNT(*) from T_Call_CallRecords records where 1=1 " + sql + "  and UserCode is not null group by records.UserCode";
320 322
             DataTable dt = DbHelperSQL.Query(recordstr).Tables[0];
321 323
             Dictionary<string, int> myDictionary = new Dictionary<string, int>();
322 324
 
@@ -329,7 +331,8 @@ namespace CallCenterApi.Interface.Controllers.report
329 331
 
330 332
                 if (drUser != null)
331 333
                 {
332
-                    myDictionary[item.F_UserCode] += int.Parse(drUser[3].ToString());
334
+                    myDictionary[item.F_UserCode] += int.Parse(drUser[1].ToString());
335
+                    //myDictionary[item.F_UserCode] += int.Parse(drUser[3].ToString());
333 336
                 }
334 337
             }
335 338
 

+ 15 - 3
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/tel/CallInScreenController.cs

@@ -2,6 +2,7 @@
2 2
 using CallCenterApi.Common;
3 3
 using CallCenterApi.DB;
4 4
 using CallCenterApi.Interface.Controllers.Base;
5
+using CallCenterApi.Interface.Controllers.customer;
5 6
 using System;
6 7
 using System.Collections.Generic;
7 8
 using System.Data;
@@ -14,6 +15,8 @@ namespace CallCenterApi.Interface.Controllers.tel
14 15
 {
15 16
     public class CallInScreenController : BaseController
16 17
     {
18
+        BLL.T_Wo_WorkOrder bllWo = new BLL.T_Wo_WorkOrder();
19
+        BLL.T_Cus_CustomerBase bllCus = new BLL.T_Cus_CustomerBase();
17 20
         /// <summary>
18 21
         /// 添加黑名单
19 22
         /// </summary>
@@ -803,13 +806,21 @@ namespace CallCenterApi.Interface.Controllers.tel
803 806
                                     lddep_cache.Add(lddep);
804 807
                                 if (!lddep_cache.Contains(fkdep))
805 808
                                     lddep_cache.Add(fkdep);
809
+                                List<string> lddepResult = lddep_cache.Distinct().ToList();
806 810
                                 CacheHelper.Insert("LDDep", lddep_cache);
807 811
                             }
808 812
                             else
809 813
                             {
810
-                                lddep_cache = new BLL.T_Cus_CustomerBase().GetLDdep();
811
-                                var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
812
-                                var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
814
+                                //lddep_cache = new BLL.T_Cus_CustomerBase().GetLDdep();
815
+                                //var gdlddep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
816
+                                //var gdfkdep = new BLL.T_Wo_WorkOrder().GetModelList("1=1").Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
817
+
818
+                                CustomerController cusController = new CustomerController();
819
+
820
+                                lddep_cache = cusController.GetLDdep();//从客户信息查找
821
+                                var listWo = bllWo.GetList(cusController.CallUnitNum, "1=1", " CreateTime DESC ");
822
+                                var gdlddep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Address).Distinct().ToList();//从工单来电单位中加载
823
+                                var gdfkdep = bllWo.DataTableToList(listWo.Tables[0]).Select(p => p.Source).Distinct().ToList();//从工单反馈单位中加载
813 824
                                 foreach (var item in gdlddep)
814 825
                                 {
815 826
                                     if (!lddep.Contains(item))
@@ -826,6 +837,7 @@ namespace CallCenterApi.Interface.Controllers.tel
826 837
                                         lddep_cache.Add(lddep);
827 838
                                     if (!lddep_cache.Contains(fkdep))
828 839
                                         lddep_cache.Add(fkdep);
840
+                                    List<string> lddepResult = lddep_cache.Distinct().ToList();
829 841
                                     CacheHelper.Insert("LDDep", lddep_cache);
830 842
                                 }
831 843
                                 else

+ 1 - 1
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Web.config

@@ -17,7 +17,7 @@
17 17
     <add key="smssign" value="中鑫之宝"/>
18 18
   </appSettings>
19 19
   <connectionStrings>
20
-    <add name="ConnectionString" connectionString="Data Source=192.168.5.8;User ID=sa;pwd=hykj800100;Initial Catalog=CallCenter_Anto_20180820;"/>
20
+    <add name="ConnectionString" connectionString="Data Source=192.168.5.8;User ID=sa;pwd=hykj800100;Initial Catalog=CallCenter_Auto_20180905;"/>
21 21
 	  <!--<add name="ConnectionString" connectionString="Data Source=192.168.4.18;User ID=sa;pwd=800100;Initial Catalog=CallCenter_Anto;"/>-->
22 22
     
23 23
   </connectionStrings>