Explorar el Código

坐席日通话市场报表调整

clq1010 %!s(int64=7) %!d(string=hace) años
padre
commit
014538195d

+ 31 - 18
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/ZuoXiTongHuaController.cs

@@ -237,11 +237,11 @@ namespace CallCenterApi.Interface.Controllers.report
237 237
             string sqltimeCallRecords = "";
238 238
             if (stime != null && stime.Trim() != "")
239 239
             {
240
-                sqltimeCallRecords += " and CONVERT(varchar , TalkStartTime, 120)>=CONVERT(varchar , '" + stime.Trim() + " 00:00:01', 120) ";
240
+                sqltimeCallRecords += " and CONVERT(varchar , BeginTime, 120)>=CONVERT(varchar , '" + stime.Trim() + " 00:00:01', 120) ";
241 241
             }
242 242
             if (endtime != null && endtime.Trim() != "")
243 243
             {
244
-                sqltimeCallRecords += " and CONVERT(varchar , TalkStartTime, 120)<=CONVERT(varchar , '" + endtime.Trim() + " 23:59:59', 120) ";
244
+                sqltimeCallRecords += " and CONVERT(varchar , BeginTime, 120)<=CONVERT(varchar , '" + endtime.Trim() + " 23:59:59', 120) ";
245 245
             }
246 246
             double zong1 = 0;
247 247
             double zong2 = 0;
@@ -280,7 +280,8 @@ namespace CallCenterApi.Interface.Controllers.report
280 280
                 }
281 281
                 drNew["坐席人员"] = dt.Rows[i]["F_UserName"].ToString();
282 282
                 //drNew["通话总时长"] = (Convert.ToDouble(dt1.Rows[0]["sums"]) / 3600).ToString("f2");
283
-                drNew["通话总时长"] = (Convert.ToDouble(sumsobj) / 3600).ToString("0.0000");
283
+                //drNew["通话总时长"] = (Convert.ToDouble(sumsobj) / 3600).ToString("0.0000");
284
+                drNew["通话总时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(sumsobj), 0);
284 285
                 Double sums = 0;
285 286
                 if (sumsobj != null && sumsobj.ToString() != "")
286 287
                 {
@@ -289,11 +290,12 @@ namespace CallCenterApi.Interface.Controllers.report
289 290
                 }
290 291
                 if (dt1.Rows[0]["sumshuchu"] == null || dt1.Rows[0]["sumshuchu"].ToString() == "")
291 292
                 {
292
-                    drNew["呼出通话总时长"] = "0.0000";
293
+                    drNew["呼出通话总时长"] = "0";
293 294
                 }
294 295
                 else
295 296
                 {
296
-                    drNew["呼出通话总时长"] = (Convert.ToDouble(dt1.Rows[0]["sumshuchu"]) / 3600).ToString("0.0000");
297
+                    //drNew["呼出通话总时长"] = (Convert.ToDouble(dt1.Rows[0]["sumshuchu"]) / 3600).ToString("0.0000");
298
+                    drNew["呼出通话总时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(dt1.Rows[0]["sumshuchu"]), 0);
297 299
                 }
298 300
                 sumshuchu = 0;
299 301
                 if (dt1.Rows[0]["sumshuchu"] != null && dt1.Rows[0]["sumshuchu"].ToString() != "")
@@ -311,11 +313,12 @@ namespace CallCenterApi.Interface.Controllers.report
311 313
                 }
312 314
                 if (dt1.Rows[0]["sumshuru"] == null || dt1.Rows[0]["sumshuru"].ToString() == "")
313 315
                 {
314
-                    drNew["呼入通话总时长"] = "0.0000";
316
+                    drNew["呼入通话总时长"] = "0";
315 317
                 }
316 318
                 else
317 319
                 {
318
-                    drNew["呼入通话总时长"] = (Convert.ToDouble(dt1.Rows[0]["sumshuru"]) / 3600).ToString("0.0000");
320
+                    //drNew["呼入通话总时长"] = (Convert.ToDouble(dt1.Rows[0]["sumshuru"]) / 3600).ToString("0.0000");
321
+                    drNew["呼入通话总时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(dt1.Rows[0]["sumshuru"]), 0);
319 322
                 }
320 323
                 sumshuru = 0;
321 324
 
@@ -334,21 +337,27 @@ namespace CallCenterApi.Interface.Controllers.report
334 337
                 }
335 338
                 if (day == 0)
336 339
                 {
337
-                    drNew["平均日呼入通话时长"] = "0.0000";
338
-                    drNew["平均日呼出通话时长"] = "0.0000";
340
+                    drNew["平均日呼入通话时长"] = "0";
341
+                    drNew["平均日呼出通话时长"] = "0";
339 342
                 }
340 343
                 else
341 344
                 {
342
-                    drNew["平均日呼入通话时长"] = (sumshuru / day / 3600).ToString("0.0000");    //ToString("f2")
343
-                    drNew["平均日呼出通话时长"] = (sumshuchu / day / 3600).ToString("0.0000");    //ToString("f2")
345
+                    //drNew["平均日呼入通话时长"] = (sumshuru / day ).ToString("0.0000");    
346
+                    //drNew["平均日呼出通话时长"] = (sumshuchu / day).ToString("0.0000");
347
+
348
+                    drNew["平均日呼入通话时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(sumshuru / day), 0);
349
+                    drNew["平均日呼出通话时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(sumshuchu / day), 0);
344 350
                 }
345 351
                 dtNew.Rows.Add(drNew);
346 352
             }
347 353
 
348 354
             DataRow drzj = dtNew.NewRow();
349 355
             drzj["坐席人员"] = "总计";
350
-            drzj["通话总时长"] = (zong1 / 3600).ToString("0.0000");
351
-            drzj["呼出通话总时长"] = (zong2 / 3600).ToString("0.0000");
356
+            //drzj["通话总时长"] = (zong1 / 3600).ToString("0.0000");
357
+            //drzj["呼出通话总时长"] = (zong2 / 3600).ToString("0.0000");
358
+
359
+            drzj["通话总时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(zong1), 0);
360
+            drzj["呼出通话总时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(zong2), 0);
352 361
             if (zong1 == 0 || zong2 == 0)
353 362
             {
354 363
                 drzj["呼出通话占比"] = "0.00" + "%";
@@ -357,7 +366,8 @@ namespace CallCenterApi.Interface.Controllers.report
357 366
             {
358 367
                 drzj["呼出通话占比"] = (Convert.ToDouble(zong2 / zong1) * 100).ToString("f2") + "%";
359 368
             }
360
-            drzj["呼入通话总时长"] = (zong3 / 3600).ToString("0.0000");
369
+            //drzj["呼入通话总时长"] = (zong3 / 3600).ToString("0.0000");
370
+            drzj["呼入通话总时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(zong3), 0);
361 371
             if (zong1 == 0 || zong3 == 0)
362 372
             {
363 373
                 drzj["呼入通话占比"] = "0.00" + "%";
@@ -368,13 +378,16 @@ namespace CallCenterApi.Interface.Controllers.report
368 378
             }
369 379
             if (day == 0)
370 380
             {
371
-                drzj["平均日呼入通话时长"] = "0.0000";
372
-                drzj["平均日呼出通话时长"] = "0.0000";
381
+                drzj["平均日呼入通话时长"] = "0";
382
+                drzj["平均日呼出通话时长"] = "0";
373 383
             }
374 384
             else
375 385
             {
376
-                drzj["平均日呼入通话时长"] = (zong3 / day / 3600).ToString("0.0000");
377
-                drzj["平均日呼出通话时长"] = (zong2 / day / 3600).ToString("0.0000");
386
+                //drzj["平均日呼入通话时长"] = (zong3 / day / 3600).ToString("0.0000");
387
+                //drzj["平均日呼出通话时长"] = (zong2 / day / 3600).ToString("0.0000");
388
+
389
+                drzj["平均日呼入通话时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(zong3 / day), 0);
390
+                drzj["平均日呼出通话时长"] = CallCenter.Utility.DateTimeConvert.parseTimeSeconds(Convert.ToInt32(zong2 / day), 0);
378 391
             }
379 392
             dtNew.Rows.Add(drzj);
380 393
             return dtNew;

+ 11 - 10
codegit/CallCenterCommon/CallCenter.Utility/Time/DateTimeConvert.cs

@@ -165,10 +165,10 @@ namespace CallCenter.Utility
165 165
             int day, hour, minute, second;
166 166
             if (t >= 86400) //天,
167 167
             {
168
-                day = Convert.ToInt16(t / 86400);
169
-                hour = Convert.ToInt16((t % 86400) / 3600);
170
-                minute = Convert.ToInt16((t % 86400 % 3600) / 60);
171
-                second = Convert.ToInt16(t % 86400 % 3600 % 60);
168
+                day = Convert.ToInt32(t / 86400);
169
+                hour = Convert.ToInt32((t % 86400) / 3600);
170
+                minute = Convert.ToInt32((t % 86400 % 3600) / 60);
171
+                second = Convert.ToInt32(t % 86400 % 3600 % 60);
172 172
                 if (type == 0)
173 173
                     r = day + ("天") + hour + ("小时") + minute + ("分") + second + ("秒");
174 174
                 else
@@ -177,9 +177,9 @@ namespace CallCenter.Utility
177 177
             }
178 178
             else if (t >= 3600)//时,
179 179
             {
180
-                hour = Convert.ToInt16(t / 3600);
181
-                minute = Convert.ToInt16((t % 3600) / 60);
182
-                second = Convert.ToInt16(t % 3600 % 60);
180
+                hour = Convert.ToInt32(t / 3600);
181
+                minute = Convert.ToInt32((t % 3600) / 60);
182
+                second = Convert.ToInt32(t % 3600 % 60);
183 183
                 if (type == 0)
184 184
                     r = hour + ("小时") + minute + ("分") + second + ("秒");
185 185
                 else
@@ -187,18 +187,19 @@ namespace CallCenter.Utility
187 187
             }
188 188
             else if (t >= 60)//分
189 189
             {
190
-                minute = Convert.ToInt16(t / 60);
191
-                second = Convert.ToInt16(t % 60);
190
+                minute = Convert.ToInt32(t / 60);
191
+                second = Convert.ToInt32(t % 60);
192 192
                 r = minute + ("分") + second + ("秒");
193 193
             }
194 194
             else
195 195
             {
196
-                second = Convert.ToInt16(t);
196
+                second = Convert.ToInt32(t);
197 197
                 r = second + ("秒");
198 198
             }
199 199
             return r;
200 200
         }
201 201
 
202
+       
202 203
         /// <summary>
203 204
         /// 当前日期时间,转换为秒
204 205
         /// </summary>