Kaynağa Gözat

坐席日通话市场报表调整

clq1010 7 yıl önce
ebeveyn
işleme
014538195d

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

237
             string sqltimeCallRecords = "";
237
             string sqltimeCallRecords = "";
238
             if (stime != null && stime.Trim() != "")
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
             if (endtime != null && endtime.Trim() != "")
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
             double zong1 = 0;
246
             double zong1 = 0;
247
             double zong2 = 0;
247
             double zong2 = 0;
280
                 }
280
                 }
281
                 drNew["坐席人员"] = dt.Rows[i]["F_UserName"].ToString();
281
                 drNew["坐席人员"] = dt.Rows[i]["F_UserName"].ToString();
282
                 //drNew["通话总时长"] = (Convert.ToDouble(dt1.Rows[0]["sums"]) / 3600).ToString("f2");
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
                 Double sums = 0;
285
                 Double sums = 0;
285
                 if (sumsobj != null && sumsobj.ToString() != "")
286
                 if (sumsobj != null && sumsobj.ToString() != "")
286
                 {
287
                 {
289
                 }
290
                 }
290
                 if (dt1.Rows[0]["sumshuchu"] == null || dt1.Rows[0]["sumshuchu"].ToString() == "")
291
                 if (dt1.Rows[0]["sumshuchu"] == null || dt1.Rows[0]["sumshuchu"].ToString() == "")
291
                 {
292
                 {
292
-                    drNew["呼出通话总时长"] = "0.0000";
293
+                    drNew["呼出通话总时长"] = "0";
293
                 }
294
                 }
294
                 else
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
                 sumshuchu = 0;
300
                 sumshuchu = 0;
299
                 if (dt1.Rows[0]["sumshuchu"] != null && dt1.Rows[0]["sumshuchu"].ToString() != "")
301
                 if (dt1.Rows[0]["sumshuchu"] != null && dt1.Rows[0]["sumshuchu"].ToString() != "")
311
                 }
313
                 }
312
                 if (dt1.Rows[0]["sumshuru"] == null || dt1.Rows[0]["sumshuru"].ToString() == "")
314
                 if (dt1.Rows[0]["sumshuru"] == null || dt1.Rows[0]["sumshuru"].ToString() == "")
313
                 {
315
                 {
314
-                    drNew["呼入通话总时长"] = "0.0000";
316
+                    drNew["呼入通话总时长"] = "0";
315
                 }
317
                 }
316
                 else
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
                 sumshuru = 0;
323
                 sumshuru = 0;
321
 
324
 
334
                 }
337
                 }
335
                 if (day == 0)
338
                 if (day == 0)
336
                 {
339
                 {
337
-                    drNew["平均日呼入通话时长"] = "0.0000";
338
-                    drNew["平均日呼出通话时长"] = "0.0000";
340
+                    drNew["平均日呼入通话时长"] = "0";
341
+                    drNew["平均日呼出通话时长"] = "0";
339
                 }
342
                 }
340
                 else
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
                 dtNew.Rows.Add(drNew);
351
                 dtNew.Rows.Add(drNew);
346
             }
352
             }
347
 
353
 
348
             DataRow drzj = dtNew.NewRow();
354
             DataRow drzj = dtNew.NewRow();
349
             drzj["坐席人员"] = "总计";
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
             if (zong1 == 0 || zong2 == 0)
361
             if (zong1 == 0 || zong2 == 0)
353
             {
362
             {
354
                 drzj["呼出通话占比"] = "0.00" + "%";
363
                 drzj["呼出通话占比"] = "0.00" + "%";
357
             {
366
             {
358
                 drzj["呼出通话占比"] = (Convert.ToDouble(zong2 / zong1) * 100).ToString("f2") + "%";
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
             if (zong1 == 0 || zong3 == 0)
371
             if (zong1 == 0 || zong3 == 0)
362
             {
372
             {
363
                 drzj["呼入通话占比"] = "0.00" + "%";
373
                 drzj["呼入通话占比"] = "0.00" + "%";
368
             }
378
             }
369
             if (day == 0)
379
             if (day == 0)
370
             {
380
             {
371
-                drzj["平均日呼入通话时长"] = "0.0000";
372
-                drzj["平均日呼出通话时长"] = "0.0000";
381
+                drzj["平均日呼入通话时长"] = "0";
382
+                drzj["平均日呼出通话时长"] = "0";
373
             }
383
             }
374
             else
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
             dtNew.Rows.Add(drzj);
392
             dtNew.Rows.Add(drzj);
380
             return dtNew;
393
             return dtNew;

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

165
             int day, hour, minute, second;
165
             int day, hour, minute, second;
166
             if (t >= 86400) //天,
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
                 if (type == 0)
172
                 if (type == 0)
173
                     r = day + ("天") + hour + ("小时") + minute + ("分") + second + ("秒");
173
                     r = day + ("天") + hour + ("小时") + minute + ("分") + second + ("秒");
174
                 else
174
                 else
177
             }
177
             }
178
             else if (t >= 3600)//时,
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
                 if (type == 0)
183
                 if (type == 0)
184
                     r = hour + ("小时") + minute + ("分") + second + ("秒");
184
                     r = hour + ("小时") + minute + ("分") + second + ("秒");
185
                 else
185
                 else
187
             }
187
             }
188
             else if (t >= 60)//分
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
                 r = minute + ("分") + second + ("秒");
192
                 r = minute + ("分") + second + ("秒");
193
             }
193
             }
194
             else
194
             else
195
             {
195
             {
196
-                second = Convert.ToInt16(t);
196
+                second = Convert.ToInt32(t);
197
                 r = second + ("秒");
197
                 r = second + ("秒");
198
             }
198
             }
199
             return r;
199
             return r;
200
         }
200
         }
201
 
201
 
202
+       
202
         /// <summary>
203
         /// <summary>
203
         /// 当前日期时间,转换为秒
204
         /// 当前日期时间,转换为秒
204
         /// </summary>
205
         /// </summary>