Преглед на файлове

Merge branch 'master' of http://192.168.1.222:3000/zhengbingbing/Autobio_API

clq1010 преди 7 години
родител
ревизия
ff1968167c

+ 9 - 6
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/DaysTalkTimeController.cs

@@ -26,12 +26,12 @@ namespace CallCenterApi.Interface.Controllers.report
26 26
         }
27 27
 
28 28
         //获取数据
29
-        public ActionResult GetDataList(string stime, string etime,string usercode)
29
+        public ActionResult GetDataList(string stime, string etime,string usercode, string dpt)
30 30
         {
31 31
             ActionResult res = NoToken("未知错误,请重新登录");
32 32
            
33 33
                 DataTable dtNew = new DataTable();
34
-                dtNew = getData(stime, etime, usercode);
34
+                dtNew = getData(stime, etime, usercode, dpt);
35 35
                 #region
36 36
                 //#region 编辑表头
37 37
                 //DataColumn dc1 = new DataColumn("日期", Type.GetType("System.String"));
@@ -117,13 +117,13 @@ namespace CallCenterApi.Interface.Controllers.report
117 117
         }
118 118
 
119 119
         //导出数据
120
-        public ActionResult ExptList(string stime, string etime, string usercode)
120
+        public ActionResult ExptList(string stime, string etime, string usercode, string dpt)
121 121
         {
122 122
             ActionResult res = NoToken("未知错误,请重新登录");
123 123
             if (Request.IsAuthenticated)
124 124
             {
125 125
                 NPOIHelper npoi = new NPOIHelper();
126
-                DataTable dt = getData(stime, etime, usercode);
126
+                DataTable dt = getData(stime, etime, usercode, dpt);
127 127
                 if (npoi.ExportToExcel("日通话时长数据", dt) == "")
128 128
                 {
129 129
                     return Success("导出成功");
@@ -136,7 +136,7 @@ namespace CallCenterApi.Interface.Controllers.report
136 136
             return res;
137 137
         }
138 138
 
139
-        private DataTable getData(string stime, string etime, string usercode)
139
+        private DataTable getData(string stime, string etime, string usercode, string dpt)
140 140
         {
141 141
             DataTable dtNew = new DataTable();
142 142
             #region 编辑表头
@@ -184,7 +184,10 @@ namespace CallCenterApi.Interface.Controllers.report
184 184
 
185 185
             sql += " and DATEDIFF(d,BeginTime,'" + beginTime.ToString("yyyy-MM-dd HH:mm:ss") + "')<=0";
186 186
             sql += " and DATEDIFF(d,BeginTime,'" + endTime.ToString("yyyy-MM-dd HH:mm:ss") + "')>=0";
187
-
187
+            if (dpt != null && dpt.Trim() != "")
188
+            {
189
+                sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
190
+            }
188 191
             DataTable dt = new BLL.T_Call_CallRecords().GetList("1=1 " + sql).Tables[0];
189 192
 
190 193
             for (DateTime t = beginTime; t <= endTime; t = t.AddDays(1))

+ 25 - 22
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/SwitchedlossCallController.cs

@@ -26,12 +26,12 @@ namespace CallCenterApi.Interface.Controllers.report
26 26
         }
27 27
 
28 28
         //获取数据
29
-        public ActionResult GetDataList(string stime, string endtime)
29
+        public ActionResult GetDataList(string stime, string endtime, string dpt)
30 30
         {
31 31
             ActionResult res = NoToken("未知错误,请重新登录");
32 32
 
33 33
             DataTable dtNew = new DataTable();
34
-            dtNew = GetData(stime, endtime);
34
+            dtNew = GetData(stime, endtime, dpt);
35 35
             #region
36 36
 
37 37
             //#region 编辑表头
@@ -72,13 +72,13 @@ namespace CallCenterApi.Interface.Controllers.report
72 72
         }
73 73
 
74 74
         //导出数据
75
-        public ActionResult ExptList(string stime, string endtime)
75
+        public ActionResult ExptList(string stime, string endtime, string dpt)
76 76
         {
77 77
             ActionResult res = NoToken("未知错误,请重新登录");
78 78
             if (Request.IsAuthenticated)
79 79
             {
80 80
                 NPOIHelper npoi = new NPOIHelper();
81
-                DataTable dt = GetData(stime, endtime);
81
+                DataTable dt = GetData(stime, endtime, dpt);
82 82
                 if (npoi.ExportToExcel("接通呼损数据", dt) == "")
83 83
                 {
84 84
                     return Success("导出成功");
@@ -92,7 +92,7 @@ namespace CallCenterApi.Interface.Controllers.report
92 92
         }
93 93
 
94 94
         //获取数据源
95
-        private DataTable GetData(string stime, string endtime)
95
+        private DataTable GetData(string stime, string endtime, string dpt)
96 96
         {
97 97
             DataTable dtNew = new DataTable();
98 98
             #region 编辑表头
@@ -108,11 +108,11 @@ namespace CallCenterApi.Interface.Controllers.report
108 108
             dtNew.Columns.Add(dc4);
109 109
             dtNew.Columns.Add(dc5);
110 110
             #endregion
111
-            string[] DataArr = GetStatisticalTime(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
112
-            string[] CallConnectData = GetStatisticalCallConnectData(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
113
-            string[] CallLossData = GetStatisticalCallLossData(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
114
-            string[] CallConnectDataRate = GetStatisticalCallConnectDataRate(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
115
-            string[] CallLossDataRate = GetStatisticalCallLossDataRate(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
111
+            string[] DataArr = GetStatisticalTime(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
112
+            string[] CallConnectData = GetStatisticalCallConnectData(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
113
+            string[] CallLossData = GetStatisticalCallLossData(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
114
+            string[] CallConnectDataRate = GetStatisticalCallConnectDataRate(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
115
+            string[] CallLossDataRate = GetStatisticalCallLossDataRate(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
116 116
 
117 117
             for (int i = 0; i < DataArr.Length; i++)
118 118
             {
@@ -136,7 +136,7 @@ namespace CallCenterApi.Interface.Controllers.report
136 136
         /// <param name="BeginTime"></param>
137 137
         /// <param name="EndTime"></param>
138 138
         /// <returns></returns>
139
-        public string GetStatisticalTime(string BeginTime, string EndTime)
139
+        public string GetStatisticalTime(string BeginTime, string EndTime, string dpt)
140 140
         {
141 141
             string result = "[";
142 142
 
@@ -145,7 +145,7 @@ namespace CallCenterApi.Interface.Controllers.report
145 145
             //    //result = (JTHS)item.Value.ToString();
146 146
             //    result += item.Key.ToString().TrimStart('{').TrimEnd('}') + ",";
147 147
             //}
148
-            var datares = GetStatistical(BeginTime, EndTime);
148
+            var datares = GetStatistical(BeginTime, EndTime, dpt);
149 149
             ArrayList arrList = new ArrayList(datares.Keys);
150 150
             arrList.Sort();
151 151
             for (int i = 0; i < arrList.Count; i++)
@@ -162,7 +162,7 @@ namespace CallCenterApi.Interface.Controllers.report
162 162
         /// <param name="BeginTime"></param>
163 163
         /// <param name="EndTime"></param>
164 164
         /// <returns></returns>
165
-        public string GetStatisticalCallConnectData(string BeginTime, string EndTime)
165
+        public string GetStatisticalCallConnectData(string BeginTime, string EndTime, string dpt)
166 166
         {
167 167
             string result = "[";
168 168
 
@@ -170,7 +170,7 @@ namespace CallCenterApi.Interface.Controllers.report
170 170
             //{
171 171
             //    result += ((JTHS)item.Value).CallConnectCount + ",";
172 172
             //}
173
-            var datares = GetStatistical(BeginTime, EndTime);
173
+            var datares = GetStatistical(BeginTime, EndTime, dpt);
174 174
             ArrayList arrList = new ArrayList(datares.Keys);
175 175
             arrList.Sort();
176 176
             for (int i = 0; i < arrList.Count; i++)
@@ -187,7 +187,7 @@ namespace CallCenterApi.Interface.Controllers.report
187 187
         /// <param name="BeginTime"></param>
188 188
         /// <param name="EndTime"></param>
189 189
         /// <returns></returns>
190
-        public string GetStatisticalCallLossData(string BeginTime, string EndTime)
190
+        public string GetStatisticalCallLossData(string BeginTime, string EndTime, string dpt)
191 191
         {
192 192
             string result = "[";
193 193
 
@@ -195,7 +195,7 @@ namespace CallCenterApi.Interface.Controllers.report
195 195
             //{
196 196
             //    result += ((JTHS)item.Value).CallLossCount + ",";
197 197
             //}
198
-            var datares = GetStatistical(BeginTime, EndTime);
198
+            var datares = GetStatistical(BeginTime, EndTime, dpt);
199 199
             ArrayList arrList = new ArrayList(datares.Keys);
200 200
             arrList.Sort();
201 201
             for (int i = 0; i < arrList.Count; i++)
@@ -212,7 +212,7 @@ namespace CallCenterApi.Interface.Controllers.report
212 212
         /// <param name="BeginTime"></param>
213 213
         /// <param name="EndTime"></param>
214 214
         /// <returns></returns>
215
-        public string GetStatisticalCallConnectDataRate(string BeginTime, string EndTime)
215
+        public string GetStatisticalCallConnectDataRate(string BeginTime, string EndTime, string dpt)
216 216
         {
217 217
             string result = "[";
218 218
 
@@ -220,7 +220,7 @@ namespace CallCenterApi.Interface.Controllers.report
220 220
             //{
221 221
             //    result += ((JTHS)item.Value).CallConnectRate.ToString("F2") + ",";
222 222
             //}
223
-            var datares = GetStatistical(BeginTime, EndTime);
223
+            var datares = GetStatistical(BeginTime, EndTime, dpt);
224 224
             ArrayList arrList = new ArrayList(datares.Keys);
225 225
             arrList.Sort();
226 226
             for (int i = 0; i < arrList.Count; i++)
@@ -238,11 +238,11 @@ namespace CallCenterApi.Interface.Controllers.report
238 238
         /// <param name="BeginTime"></param>
239 239
         /// <param name="EndTime"></param>
240 240
         /// <returns></returns>
241
-        public string GetStatisticalCallLossDataRate(string BeginTime, string EndTime)
241
+        public string GetStatisticalCallLossDataRate(string BeginTime, string EndTime, string dpt)
242 242
         {
243 243
             string result = "[";
244 244
 
245
-            var datares = GetStatistical(BeginTime, EndTime);
245
+            var datares = GetStatistical(BeginTime, EndTime, dpt);
246 246
             ArrayList arrList = new ArrayList(datares.Keys);
247 247
             arrList.Sort();
248 248
             //foreach (DictionaryEntry item in GetStatistical(BeginTime, EndTime))
@@ -263,7 +263,7 @@ namespace CallCenterApi.Interface.Controllers.report
263 263
         /// <param name="BeginTime"></param>
264 264
         /// <param name="EndTime"></param>
265 265
         /// <returns></returns>
266
-        public Hashtable GetStatistical(string BeginTime, string EndTime)
266
+        public Hashtable GetStatistical(string BeginTime, string EndTime, string dpt)
267 267
         {
268 268
             Hashtable tab = new Hashtable();
269 269
 
@@ -287,7 +287,10 @@ namespace CallCenterApi.Interface.Controllers.report
287 287
                 endTime = DateTime.Parse(EndTime + " 23:59:59");
288 288
             else
289 289
                 endTime = DateTime.Parse(DateTime.Now.ToShortDateString() + " 23:59:59");
290
-
290
+            if (dpt != null && dpt.Trim() != "")
291
+            {
292
+                sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
293
+            }
291 294
             sql += " and DATEDIFF(d,BeginTime,'" + beginTime.ToString("yyyy-MM-dd HH:mm:ss") + "')<=0";
292 295
             sql += " and DATEDIFF(d,BeginTime,'" + endTime.ToString("yyyy-MM-dd HH:mm:ss") + "')>=0";
293 296
             // 没有业务类型。添加这个条件会过滤掉 BusinessType is null 的记录

+ 36 - 25
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/TalkTimeController.cs

@@ -27,12 +27,12 @@ namespace CallCenterApi.Interface.Controllers.report
27 27
         }
28 28
 
29 29
         //获取数据
30
-        public ActionResult GetDataList(string stime, string endtime)
30
+        public ActionResult GetDataList(string stime, string endtime, string dpt)
31 31
         {
32 32
             ActionResult res = NoToken("未知错误,请重新登录");
33 33
 
34 34
             DataTable dtNew = new DataTable();
35
-            dtNew = GetData(stime, endtime);
35
+            dtNew = GetData(stime, endtime, dpt);
36 36
             #region
37 37
             //DataTable dtNew = new DataTable();
38 38
             //#region 编辑表头
@@ -90,13 +90,13 @@ namespace CallCenterApi.Interface.Controllers.report
90 90
         }
91 91
 
92 92
         //导出数据
93
-        public ActionResult ExptList(string stime, string endtime)
93
+        public ActionResult ExptList(string stime, string endtime, string dpt)
94 94
         {
95 95
             ActionResult res = NoToken("未知错误,请重新登录");
96 96
             if (Request.IsAuthenticated)
97 97
             {
98 98
                 NPOIHelper npoi = new NPOIHelper();
99
-                DataTable dt = GetData(stime, endtime);
99
+                DataTable dt = GetData(stime, endtime, dpt);
100 100
                 if (npoi.ExportToExcel("通话时长数据", dt) == "")
101 101
                 {
102 102
                     return Success("导出成功");
@@ -110,7 +110,7 @@ namespace CallCenterApi.Interface.Controllers.report
110 110
         }
111 111
 
112 112
         //获取数据源
113
-        private DataTable GetData(string stime, string endtime)
113
+        private DataTable GetData(string stime, string endtime, string dpt)
114 114
         {
115 115
             DataTable dtNew = new DataTable();
116 116
             #region 编辑表头
@@ -135,15 +135,15 @@ namespace CallCenterApi.Interface.Controllers.report
135 135
             dtNew.Columns.Add(dc9);
136 136
             #endregion
137 137
 
138
-            string[] CallInTime = GetCallRecordIn(stime, endtime, "0").TrimStart('[').TrimEnd(']').Split(',');
139
-            string[] CallInTimes = GetCallRecordTotalTime(stime, endtime, "0").TrimStart('[').TrimEnd(']').Split(',');
140
-            string[] CallOutTime = GetCallRecordOut(stime, endtime, "1", "").TrimStart('[').TrimEnd(']').Split(',');
141
-            string[] CallOutTimes = GetCallRecordTotalTime(stime, endtime, "1").TrimStart('[').TrimEnd(']').Split(',');
142
-            string[] CallOutWTime = GetCallRecordOut(stime, endtime, "1", "0").TrimStart('[').TrimEnd(']').Split(',');
143
-            string[] CallOutWTimes = GetCallRecordRingTime(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
144
-            string[] CallTotalTime = GetCallRecordTotalTime(stime, endtime, "").TrimStart('[').TrimEnd(']').Split(',');
138
+            string[] CallInTime = GetCallRecordIn(stime, endtime, "0", dpt).TrimStart('[').TrimEnd(']').Split(',');
139
+            string[] CallInTimes = GetCallRecordTotalTime(stime, endtime, "0", dpt).TrimStart('[').TrimEnd(']').Split(',');
140
+            string[] CallOutTime = GetCallRecordOut(stime, endtime, "1", "", dpt).TrimStart('[').TrimEnd(']').Split(',');
141
+            string[] CallOutTimes = GetCallRecordTotalTime(stime, endtime, "1", dpt).TrimStart('[').TrimEnd(']').Split(',');
142
+            string[] CallOutWTime = GetCallRecordOut(stime, endtime, "1", "0", dpt).TrimStart('[').TrimEnd(']').Split(',');
143
+            string[] CallOutWTimes = GetCallRecordRingTime(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
144
+            string[] CallTotalTime = GetCallRecordTotalTime(stime, endtime, "", dpt).TrimStart('[').TrimEnd(']').Split(',');
145 145
             string[] AgentArr = GetAgent().TrimStart('[').TrimEnd(']').Split(',');
146
-            string[] AverageTime = GetCallAverageTime(stime, endtime).TrimStart('[').TrimEnd(']').Split(',');
146
+            string[] AverageTime = GetCallAverageTime(stime, endtime, dpt).TrimStart('[').TrimEnd(']').Split(',');
147 147
 
148 148
             for (int i = 0; i < AgentArr.Length; i++)
149 149
             {
@@ -173,9 +173,9 @@ namespace CallCenterApi.Interface.Controllers.report
173 173
         /// <param name="EndTime">结束时间</param>
174 174
         /// <param name="Tag">1表示呼出,0表示呼入</param>
175 175
         /// <returns></returns>
176
-        public string GetCallRecordOut(string BeginTime, string EndTime, string Tag, string state)
176
+        public string GetCallRecordOut(string BeginTime, string EndTime, string Tag, string state, string dpt)
177 177
         {
178
-            return GetHighChartData(BeginTime, EndTime, Tag, state);
178
+            return GetHighChartData(BeginTime, EndTime, Tag, state, dpt);
179 179
         }
180 180
         /// <summary>
181 181
         /// 获取通话总时长
@@ -183,7 +183,7 @@ namespace CallCenterApi.Interface.Controllers.report
183 183
         /// <param name="BeginTime">开始时间</param>
184 184
         /// <param name="EndTime">结束时间</param>
185 185
         /// <returns></returns>
186
-        public string GetCallRecordTotalTime(string BeginTime, string EndTime, string tag)
186
+        public string GetCallRecordTotalTime(string BeginTime, string EndTime, string tag, string dpt)
187 187
         {
188 188
             string result = "[";
189 189
             string sql = "";
@@ -196,6 +196,10 @@ namespace CallCenterApi.Interface.Controllers.report
196 196
             {
197 197
                 sql += " and DATEDIFF(d,BeginTime,'" + EndTime + "')>=0";
198 198
             }
199
+            if (dpt != null && dpt.Trim() != "")
200
+            {
201
+                sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
202
+            }
199 203
             if (tag != "")
200 204
             {
201 205
                 sql += " and CallType=" + tag;
@@ -240,14 +244,14 @@ namespace CallCenterApi.Interface.Controllers.report
240 244
         /// <param name="BeginTime">开始时间</param>
241 245
         /// <param name="EndTime">结束时间</param>
242 246
         /// <returns></returns>
243
-        public string GetCallAverageTime(string BeginTime, string EndTime)
247
+        public string GetCallAverageTime(string BeginTime, string EndTime, string dpt)
244 248
         {
245 249
             string result = "[";
246 250
 
247
-            string[] CallInTime = GetCallRecordIn(BeginTime, EndTime, "0").TrimStart('[').TrimEnd(']').Split(',');
248
-            string[] CallOutTime = GetCallRecordOut(BeginTime, EndTime, "1", "").TrimStart('[').TrimEnd(']').Split(',');
251
+            string[] CallInTime = GetCallRecordIn(BeginTime, EndTime, "0", dpt).TrimStart('[').TrimEnd(']').Split(',');
252
+            string[] CallOutTime = GetCallRecordOut(BeginTime, EndTime, "1", "", dpt).TrimStart('[').TrimEnd(']').Split(',');
249 253
 
250
-            string[] CallTotalTime = GetCallRecordTotalTime(BeginTime, EndTime, "").TrimStart('[').TrimEnd(']').Split(',');
254
+            string[] CallTotalTime = GetCallRecordTotalTime(BeginTime, EndTime, "", dpt).TrimStart('[').TrimEnd(']').Split(',');
251 255
 
252 256
             for (int i = 0; i < CallInTime.Length; i++)
253 257
             {
@@ -274,9 +278,9 @@ namespace CallCenterApi.Interface.Controllers.report
274 278
         /// <param name="BeginTime">开始时间</param>
275 279
         /// <param name="EndTime">结束时间</param>
276 280
         /// <returns></returns>
277
-        public string GetCallRecordIn(string BeginTime, string EndTime, string Tag)
281
+        public string GetCallRecordIn(string BeginTime, string EndTime, string Tag, string dpt)
278 282
         {
279
-            return GetHighChartData(BeginTime, EndTime, Tag, "");
283
+            return GetHighChartData(BeginTime, EndTime, Tag, "", dpt);
280 284
         }
281 285
         /// <summary>
282 286
         /// 获取呼入呼出数据
@@ -285,7 +289,7 @@ namespace CallCenterApi.Interface.Controllers.report
285 289
         /// <param name="EndTime">结束时间</param>
286 290
         /// <param name="Tag">1表示呼出,0表示呼入</param>
287 291
         /// <returns></returns>
288
-        private string GetHighChartData(string BeginTime, string EndTime, string Tag, string state)
292
+        private string GetHighChartData(string BeginTime, string EndTime, string Tag, string state, string dpt)
289 293
         {
290 294
             string result = "[";
291 295
             string sql = " and CallType=" + Tag; // 呼入
@@ -305,7 +309,10 @@ namespace CallCenterApi.Interface.Controllers.report
305 309
             {
306 310
                 sql += " and CallState=" + state.Trim();
307 311
             }
308
-
312
+            if (dpt != null && dpt.Trim() != "")
313
+            {
314
+                sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
315
+            }
309 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];
310 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";
311 318
             //20180509 通话时长统计不对  machenyang
@@ -340,7 +347,7 @@ namespace CallCenterApi.Interface.Controllers.report
340 347
         /// <param name="BeginTime"></param>
341 348
         /// <param name="EndTime"></param>
342 349
         /// <returns></returns>
343
-        public string GetCallRecordRingTime(string BeginTime, string EndTime)
350
+        public string GetCallRecordRingTime(string BeginTime, string EndTime, string dpt)
344 351
         {
345 352
             string result = "[";
346 353
             string sql = "";
@@ -355,6 +362,10 @@ namespace CallCenterApi.Interface.Controllers.report
355 362
                 sql += " and BeginTime<='" + EndTime + "'";
356 363
                 //sql += " and DATEDIFF(d,BeginTime,'" + EndTime + "')>=0";
357 364
             }
365
+            if (dpt != null && dpt.Trim() != "")
366
+            {
367
+                sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
368
+            }
358 369
             //只统计呼入振铃时长
359 370
             sql += " and CallType=0 ";
360 371
 

+ 24 - 10
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/TotalCallController.cs

@@ -29,7 +29,7 @@ namespace CallCenterApi.Interface.Controllers.report
29 29
         }
30 30
 
31 31
         //获取数据
32
-        public ActionResult GetDataList(string years)
32
+        public ActionResult GetDataList(string years, string dpt)
33 33
         {
34 34
             ActionResult res = NoToken("未知错误,请重新登录");
35 35
             if (Request.IsAuthenticated)
@@ -46,12 +46,17 @@ namespace CallCenterApi.Interface.Controllers.report
46 46
                 dtNew.Columns.Add(dc3);
47 47
                 dtNew.Columns.Add(dc4);
48 48
                 #endregion
49
+                var sql = "";
50
+                if (dpt != null && dpt.Trim() != "")
51
+                {
52
+                    sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
53
+                }
49 54
                 //DataTable dt = new BLL.T_Call_CallRecords().GetList("1=1").Tables[0];
50
-                var list = bll.DataTableToList(bll.GetList(" 1=1 ").Tables[0]);
55
+                var list = bll.DataTableToList(bll.GetList($" 1=1 {sql} ").Tables[0]);
51 56
                 DateTime dtNow;
52 57
                 int Count = 0;
53 58
                 int DayCount = 0;
54
-
59
+                
55 60
                 if (string.IsNullOrEmpty(years))
56 61
                 {
57 62
                     dtNow = DateTime.Now;
@@ -120,7 +125,7 @@ namespace CallCenterApi.Interface.Controllers.report
120 125
             return res;
121 126
         }
122 127
 
123
-        private DataTable GetData(string years)
128
+        private DataTable GetData(string years, string dpt)
124 129
         {
125 130
             DataTable dtNew = new DataTable();
126 131
             try {
@@ -133,8 +138,13 @@ namespace CallCenterApi.Interface.Controllers.report
133 138
                 dtNew.Columns.Add(dc2);
134 139
                 dtNew.Columns.Add(dc3);
135 140
                 #endregion
141
+                var sql = "";
142
+                if (dpt != null && dpt.Trim() != "")
143
+                {
144
+                    sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
145
+                }
136 146
                 //DataTable dt = new BLL.T_Call_CallRecords().GetList("1=1").Tables[0];
137
-                var list = bll.DataTableToList(bll.GetList(" 1=1 ").Tables[0]);
147
+                var list = bll.DataTableToList(bll.GetList($" 1=1 {sql} ").Tables[0]);
138 148
                 DateTime dtNow;
139 149
                 int Count = 0;
140 150
                 int DayCount = 0;
@@ -204,13 +214,13 @@ namespace CallCenterApi.Interface.Controllers.report
204 214
             return dtNew;
205 215
         }
206 216
 
207
-        public ActionResult ExptList(string years)
217
+        public ActionResult ExptList(string years, string dpt)
208 218
         {
209 219
             ActionResult res = NoToken("未知错误,请重新登录");
210 220
             if (Request.IsAuthenticated)
211 221
             {
212 222
                 NPOIHelper npoi = new NPOIHelper();
213
-                DataTable dt = GetData(years);
223
+                DataTable dt = GetData(years, dpt);
214 224
                 if (npoi.ExportToExcel("总呼叫量数据", dt) == "")
215 225
                 {
216 226
                     return Success("导出成功");
@@ -224,15 +234,19 @@ namespace CallCenterApi.Interface.Controllers.report
224 234
         }
225 235
 
226 236
         //获取图形数据
227
-        public ActionResult GetChartData(string years)
237
+        public ActionResult GetChartData(string years, string dpt)
228 238
         {
229 239
             ActionResult res = NoToken("未知错误,请重新登录");
230 240
             if (Request.IsAuthenticated)
231 241
             {
232 242
                 string[] arr=new string[12];
233
-
243
+                var sql = "";
244
+                if (dpt != null && dpt.Trim() != "")
245
+                {
246
+                    sql += $" AND UserCode IN (SELECT F_UserCode FROM dbo.T_Sys_UserAccount WHERE F_DeptId = {dpt} AND f_seatFlag=1 and F_WorkNumber!='') ";
247
+                }
234 248
                 //DataTable dt = new BLL.T_Call_CallRecords().GetList("1=1").Tables[0];
235
-                var list = bll.DataTableToList(bll.GetList(" 1=1 ").Tables[0]);
249
+                var list = bll.DataTableToList(bll.GetList($" 1=1 {sql} ").Tables[0]);
236 250
                 DateTime dtNow;
237 251
 
238 252
                 if (string.IsNullOrEmpty(years))

Файловите разлики са ограничени, защото са твърде много
+ 9 - 3
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/tel/CallrecordsController.cs