|
@@ -26,23 +26,23 @@ class Report extends Base
|
|
|
*/
|
|
*/
|
|
|
public function index()
|
|
public function index()
|
|
|
{
|
|
{
|
|
|
- $param = input('param.');
|
|
|
|
|
- $startTime = isset($param['start']) === true ? $param['start'] : date('Y-m-d', strtotime("-6 day"));
|
|
|
|
|
- $endTime = isset($param['end']) === true ? $param['end'] : date('Y-m-d');
|
|
|
|
|
- $timeInterval = $this->Date_segmentation($startTime, $endTime);
|
|
|
|
|
- $queueData = []; // 排队数据.
|
|
|
|
|
- $chatData = []; // 消息数据.
|
|
|
|
|
- $serviceData = []; // 会话数据.
|
|
|
|
|
- $xData = []; // x轴数据.
|
|
|
|
|
- $system = []; // 系统数据.
|
|
|
|
|
- $evaluateGood = 0; // 好评数.
|
|
|
|
|
|
|
+ $param = input('param.');
|
|
|
|
|
+ $startTime = isset($param['start']) === true ? $param['start'] : date('Y-m-d', strtotime("-6 day"));
|
|
|
|
|
+ $endTime = isset($param['end']) === true ? $param['end'] : date('Y-m-d');
|
|
|
|
|
+ $timeInterval = $this->Date_segmentation($startTime, $endTime);
|
|
|
|
|
+ $queueData = []; // 排队数据.
|
|
|
|
|
+ $chatData = []; // 消息数据.
|
|
|
|
|
+ $serviceData = []; // 会话数据.
|
|
|
|
|
+ $xData = []; // x轴数据.
|
|
|
|
|
+ $system = []; // 系统数据.
|
|
|
|
|
+ $evaluateGood = 0; // 好评数.
|
|
|
$evaluateSecondary = 0; // 中评数.
|
|
$evaluateSecondary = 0; // 中评数.
|
|
|
- $evaluateBad = 0; // 差评数.
|
|
|
|
|
- $evaluateNo = 0; // 未评数.
|
|
|
|
|
|
|
+ $evaluateBad = 0; // 差评数.
|
|
|
|
|
+ $evaluateNo = 0; // 未评数.
|
|
|
foreach ($timeInterval['days_list'] as $k => $value) {
|
|
foreach ($timeInterval['days_list'] as $k => $value) {
|
|
|
$allCount = 0; // 会话总数.
|
|
$allCount = 0; // 会话总数.
|
|
|
$dayBegin = strtotime($value);
|
|
$dayBegin = strtotime($value);
|
|
|
- $dayEnd = (strtotime($value) + 24 * 60 * 60);
|
|
|
|
|
|
|
+ $dayEnd = (strtotime($value) + 24 * 60 * 60);
|
|
|
$chatLogCountWhere['start_time'] = [
|
|
$chatLogCountWhere['start_time'] = [
|
|
|
'between',
|
|
'between',
|
|
|
[
|
|
[
|
|
@@ -50,7 +50,7 @@ class Report extends Base
|
|
|
$dayEnd,
|
|
$dayEnd,
|
|
|
],
|
|
],
|
|
|
];
|
|
];
|
|
|
- $join = [
|
|
|
|
|
|
|
+ $join = [
|
|
|
'alarm b' => 'a.servicelog_id = b.servicelog_id',
|
|
'alarm b' => 'a.servicelog_id = b.servicelog_id',
|
|
|
];
|
|
];
|
|
|
$field = [
|
|
$field = [
|
|
@@ -81,7 +81,7 @@ class Report extends Base
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 会话总数.
|
|
// 会话总数.
|
|
|
- $xData[] = $value;
|
|
|
|
|
|
|
+ $xData[] = $value;
|
|
|
$chatData[$k] = $allCount;
|
|
$chatData[$k] = $allCount;
|
|
|
// 当天工单总数.
|
|
// 当天工单总数.
|
|
|
$serviceData[$k] = model('serviceLog')->countServiceLog($chatLogCountWhere);
|
|
$serviceData[$k] = model('serviceLog')->countServiceLog($chatLogCountWhere);
|
|
@@ -90,7 +90,7 @@ class Report extends Base
|
|
|
foreach ($system as $k => $v) {
|
|
foreach ($system as $k => $v) {
|
|
|
$systemCount[] = [
|
|
$systemCount[] = [
|
|
|
'value' => $v,
|
|
'value' => $v,
|
|
|
- 'name' => $k,
|
|
|
|
|
|
|
+ 'name' => $k,
|
|
|
];
|
|
];
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -99,17 +99,17 @@ class Report extends Base
|
|
|
$defaultTime = "$startTime , $endTime";
|
|
$defaultTime = "$startTime , $endTime";
|
|
|
|
|
|
|
|
$this->assign([
|
|
$this->assign([
|
|
|
- 'xData' => json_encode($xData),
|
|
|
|
|
- 'chatData' => json_encode($chatData),
|
|
|
|
|
|
|
+ 'xData' => json_encode($xData),
|
|
|
|
|
+ 'chatData' => json_encode($chatData),
|
|
|
'serviceData' => json_encode($serviceData),
|
|
'serviceData' => json_encode($serviceData),
|
|
|
- 'queueData' => json_encode($queueData),
|
|
|
|
|
|
|
+ 'queueData' => json_encode($queueData),
|
|
|
'systemCount' => json_encode($systemCount),
|
|
'systemCount' => json_encode($systemCount),
|
|
|
'defaultTime' => json_encode($defaultTime),
|
|
'defaultTime' => json_encode($defaultTime),
|
|
|
- 'evaluate' => json_encode([
|
|
|
|
|
- 'evaluateGood' => $evaluateGood,
|
|
|
|
|
|
|
+ 'evaluate' => json_encode([
|
|
|
|
|
+ 'evaluateGood' => $evaluateGood,
|
|
|
'evaluateSecondary' => $evaluateSecondary,
|
|
'evaluateSecondary' => $evaluateSecondary,
|
|
|
- 'evaluateBad' => $evaluateBad,
|
|
|
|
|
- 'evaluateNo' => $evaluateNo,
|
|
|
|
|
|
|
+ 'evaluateBad' => $evaluateBad,
|
|
|
|
|
+ 'evaluateNo' => $evaluateNo,
|
|
|
]),
|
|
]),
|
|
|
]);
|
|
]);
|
|
|
|
|
|
|
@@ -205,7 +205,7 @@ class Report extends Base
|
|
|
return $a['uid'] == $b['uid'] ? 0 : ($a['uid'] > $b['uid'] ? 1 : -1);
|
|
return $a['uid'] == $b['uid'] ? 0 : ($a['uid'] > $b['uid'] ? 1 : -1);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
foreach ($all_last as $key => $val) {
|
|
foreach ($all_last as $key => $val) {
|
|
|
$all_last[$key]['1'] = secendToHourMinit($all_last[$key]['1']);
|
|
$all_last[$key]['1'] = secendToHourMinit($all_last[$key]['1']);
|
|
|
$all_last[$key]['2'] = secendToHourMinit($all_last[$key]['2']);
|
|
$all_last[$key]['2'] = secendToHourMinit($all_last[$key]['2']);
|
|
@@ -216,7 +216,7 @@ class Report extends Base
|
|
|
unset($all_last[$key]['uid']);
|
|
unset($all_last[$key]['uid']);
|
|
|
unset($all_last[$key]['0']);
|
|
unset($all_last[$key]['0']);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
//导出数据
|
|
//导出数据
|
|
|
if ($returnAll) {
|
|
if ($returnAll) {
|
|
@@ -326,13 +326,14 @@ class Report extends Base
|
|
|
// 工作报表
|
|
// 工作报表
|
|
|
public function workreport()
|
|
public function workreport()
|
|
|
{
|
|
{
|
|
|
- if (request()->isAjax()) {
|
|
|
|
|
|
|
+ $toExcel = input('param.toExcel', 0);
|
|
|
|
|
|
|
|
|
|
+ if (request()->isAjax() || $toExcel) {
|
|
|
$param = input('param.');
|
|
$param = input('param.');
|
|
|
$limit = $param['pageSize'];
|
|
$limit = $param['pageSize'];
|
|
|
$offset = ($param['pageNumber'] - 1) * $limit;
|
|
$offset = ($param['pageNumber'] - 1) * $limit;
|
|
|
- $toExcel = input('param.toExcel', 0);
|
|
|
|
|
- return $toExcel;exit;
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
$where = [];
|
|
$where = [];
|
|
|
//用户名称
|
|
//用户名称
|
|
|
if (empty($param['searchText']) === false) {
|
|
if (empty($param['searchText']) === false) {
|
|
@@ -341,6 +342,9 @@ class Report extends Base
|
|
|
if (empty($param['start']) === false && empty($param['end']) === false && $param['start'] <= $param['end']) {
|
|
if (empty($param['start']) === false && empty($param['end']) === false && $param['start'] <= $param['end']) {
|
|
|
$start = strtotime($param['start']);
|
|
$start = strtotime($param['start']);
|
|
|
$end = strtotime($param['end'] . ' 23:59:59');
|
|
$end = strtotime($param['end'] . ' 23:59:59');
|
|
|
|
|
+ } else {
|
|
|
|
|
+ $start = '2019-07-01 00:00:00';
|
|
|
|
|
+ $end = '2019-07-15 23:59:59';
|
|
|
}
|
|
}
|
|
|
$result = db('users')->limit($offset, $limit)->where($where)->select();
|
|
$result = db('users')->limit($offset, $limit)->where($where)->select();
|
|
|
|
|
|
|
@@ -410,11 +414,11 @@ class Report extends Base
|
|
|
$return['total'] = db('users')->where($where)->count(); //总数据
|
|
$return['total'] = db('users')->where($where)->count(); //总数据
|
|
|
$return['rows'] = $result;
|
|
$return['rows'] = $result;
|
|
|
|
|
|
|
|
- if (!$toExcel) {
|
|
|
|
|
|
|
|
|
|
|
|
+ if (!$toExcel) {
|
|
|
return json($return);
|
|
return json($return);
|
|
|
} else {
|
|
} else {
|
|
|
- dir('aa');
|
|
|
|
|
|
|
+
|
|
|
$head = ['账号', '姓名', '工号'];
|
|
$head = ['账号', '姓名', '工号'];
|
|
|
$key = ['user_account', 'user_name', 'user_job_number'];
|
|
$key = ['user_account', 'user_name', 'user_job_number'];
|
|
|
$data = array();
|
|
$data = array();
|
|
@@ -450,9 +454,10 @@ class Report extends Base
|
|
|
return $this->fetch();
|
|
return $this->fetch();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public function toexcel(){
|
|
|
|
|
- $head = ['账号', '姓名','工号'];
|
|
|
|
|
- $key = ['user_account', 'user_name','user_job_number'];
|
|
|
|
|
|
|
+ public function toexcel()
|
|
|
|
|
+ {
|
|
|
|
|
+ $head = ['账号', '姓名', '工号'];
|
|
|
|
|
+ $key = ['user_account', 'user_name', 'user_job_number'];
|
|
|
// $data = $this->workreport();
|
|
// $data = $this->workreport();
|
|
|
// return $data;
|
|
// return $data;
|
|
|
// $data = $data['rows'];
|
|
// $data = $data['rows'];
|
|
@@ -469,5 +474,4 @@ class Report extends Base
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
}//end class
|
|
}//end class
|