Jonlin 6 rokov pred
rodič
commit
ddb022fb42

+ 8 - 0
application/admin/controller/Accounts.php

@@ -171,8 +171,16 @@ class Accounts extends Base
             if(!empty($param['user_id']) && $param['user_id'] != 0){
                 $info['user_id'] = $param['user_id'];
             }
+            $update = array();
+            $update['nick_name'] = $param['nick_name'];
+            $update['email'] = $param['account_email'];
+            $update['phone'] = $param['account_phone'];
             try{
                 db('accounts')->where('id', $param['id'])->update($info);
+                $accounts = db('accountsmessage')->where('account_id', $param['id'])->select();
+                if(!empty($accounts)){
+                    db('accountsmessage')->where('account_id', $param['id'])->update($update);
+                }
             }catch(\Exception $e){
                 return json(['code' => -6, 'data' => '', 'msg' => $e->getMessage()]);
             }

+ 37 - 4
application/admin/controller/System.php

@@ -571,6 +571,9 @@ class System extends Base
             if($alarm['alarm_respond'] == 1){
                 $span = $span . '<span class="alarm_info">客服未回应</span>';
             }
+            if($alarm['alarm_count'] == 0){
+                $span = $span . '<span class="alarm_info">会话无内容</span>';
+            }
         }
 
         //用户信息
@@ -639,6 +642,33 @@ class System extends Base
         $evaluate = db('evaluate')->select();
         //$alarm报警信息
         $alarm =  db('alarm')->select();
+        //会话超时标准
+        $verifyAllTime =  db('systemconfig')->where('systemconfig_name','质检会话时长设置')->find();
+        //会话响应时长标准
+        $verifyReturnTime =  db('systemconfig')->where('systemconfig_name','质检会话响应时长设置')->find();
+        for($c=0;$c<count($alarm);$c++){
+            $alarm[$c]['alarminfo'] = '';
+            if($alarm[$c]['alarm_userSensitive'] != 0){
+                $alarm[$c]['alarminfo'] .= '访客敏感词/';
+            }
+            if($alarm[$c]['alarm_serverSensitive'] != 0){
+                $alarm[$c]['alarminfo'] .= '客服敏感词/';
+            }
+            if($alarm[$c]['alarm_corresponding'] > $verifyReturnTime['systemconfig_data']){
+                $alarm[$c]['alarminfo'] .= '响应超时/';
+            }
+            if($alarm[$c]['alarm_cvtOvertime'] > $verifyAllTime['systemconfig_data']){
+                $alarm[$c]['alarminfo'] .= '会话超时/';
+            }
+            if($alarm[$c]['alarm_respond'] == 1){
+                $alarm[$c]['alarminfo'] .= '客服未回应/';
+            }
+            if($alarm[$c]['alarm_count'] == 0){
+                $alarm[$c]['alarminfo'] .= '会话无内容';
+            }
+
+        }
+
         foreach($result as $key=>$vo){
             if($result[$key]['intime'] != 0){
                 $result[$key]['intime'] = date('Y-m-d H:i:s', $vo['intime']);
@@ -678,9 +708,10 @@ class System extends Base
                 }
             }
 
-            //会话时长/响应时长
+            //会话时长/响应时长/报警信息
             $result[$key]['conversation'] = '';
             $result[$key]['response'] = '';
+            $result[$key]['alarm'] = '';
             for($b=0;$b<count($alarm);$b++){
                 if($result[$key]['servicelog_id'] == $alarm[$b]['servicelog_id']){
                     //会话时长
@@ -691,6 +722,8 @@ class System extends Base
                     $response_min = intval($alarm[$b]['alarm_corresponding']/60);
                     $response_s = $alarm[$b]['alarm_corresponding']%60;
                     $result[$key]['response'] = $response_min.'分'.$response_s.'秒';
+                    //报警信息
+                    $result[$key]['alarminfo'] = $alarm[$b]['alarminfo'];
                 }
             }
 
@@ -723,7 +756,7 @@ class System extends Base
                 $content = json_decode($chat_log[$c]['content'], true);
                 $chat_log[$c]['time_line'] = date('Y-m-d H:i:s',$chat_log[$c]['time_line']);
                 $result[$key]['detail'] = $result[$key]['detail'].' '.$chat_log[$c]['time_line'].' '.$chat_log[$c]['from_name'];
-                $content['content'] = '';
+
                 if(!empty($content['text'])){
                     $content['content'] = $content['text'];
                 }
@@ -734,8 +767,8 @@ class System extends Base
             }
 
         }
-        $head = ['工单id', '访客进线时间', '接待客服', '所在组', '访客账号', '开始时间', '结束时间', '会话时长', '响应时长', '关闭原因', '满意度','来源ip','来源网站','来源系统','来源浏览器','聊天详情'];
-        $key = ['servicelog_id', 'intime', 'kefu_name', 'group_name', 'user_name', 'start_time', 'end_time', 'conversation', 'response', 'servicelog_close_type', 'evaluate_name','user_ip','website','system','browse','detail'];
+        $head = ['工单id', '访客进线时间', '接待客服', '所在组', '访客账号', '开始时间', '结束时间', '会话时长', '响应时长', '关闭原因', '满意度','来源ip','来源网站','来源系统','来源浏览器','报警信息','聊天详情'];
+        $key = ['servicelog_id', 'intime', 'kefu_name', 'group_name', 'user_name', 'start_time', 'end_time', 'conversation', 'response', 'servicelog_close_type', 'evaluate_name','user_ip','website','system','browse','alarminfo','detail'];
         (new Office())->outdata('工单数据导出', $result, $head, $key);
         return true;
     }

+ 9 - 0
application/service/controller/Services.php

@@ -61,10 +61,19 @@ class Services extends Base
                 ];
             }
 
+            $info = array();
+            $info['nick_name'] = $nick_name;
+            $info['email'] = $account_email;
+            $info['phone'] = $phone;
+
             $account = db('accounts')->where('id', $account_id)->select();
             if(!empty($account)){
                 try{
                     db('accounts')->where('id', $account_id)->update($param);
+                    $accounts = db('accountsmessage')->where('account_id', $account_id)->select();
+                    if(!empty($accounts)){
+                        db('accountsmessage')->where('account_id', $account_id)->update($info);
+                    }
                     return json(['code' => 1, 'data' => '', 'msg' => '保存成功']);
                 }catch(\Exception $e){
                     return json(['code' => -1, 'data' => '', 'msg' => $e->getMessage()]);