Эх сурвалжийг харах

'监控系统改为选项卡'

Ethan 6 жил өмнө
parent
commit
347b403e93

+ 15 - 12
application/admin/controller/Sensitivec.php

@@ -2,22 +2,26 @@
 namespace app\admin\controller;
 
 class Sensitivec extends Base
-{	
+{
 	//敏感词管理
     public function index()
     {
     	if (request()->isAjax()) {
             $param  = input('param.');
-
             $limit  = $param['pageSize'];
             $offset = (($param['pageNumber'] - 1) * $limit);
-
-            $where  = [];
+            $where['sensitivewords_for'] = $param['type'];
             if (empty($param['searchText']) === false) {
                 $where['sensitivewords_word'] = ['like', '%' . $param['searchText'] . '%'];
             }
-            
-            $result = db('sensitivewords')->where($where)->limit($offset, $limit)->select();
+
+            $result = db('sensitivewords')
+                ->field(['sensitivewords_id', 'sensitivewords_word', 'sensitivewords_time', 'sensitivewords_status', 'user_name'])
+                ->alias('a')
+                ->join('admins b', 'a.sensitivewords_uid = b.id')
+                ->where($where)
+                ->limit($offset, $limit)
+                ->select();
 
             foreach ($result as $key => $vo) {
                 // 优化显示状态.
@@ -54,11 +58,10 @@ class Sensitivec extends Base
             }
 
 			$param['sensitivewords_time'] = date('Y-m-d H:i:s');
-			$param['sensitivewords_uid'] = 1;//uid
-			// var_dump($param);die;
-            try{
+			$param['sensitivewords_uid']  = session('user_id');
+            try {
                 db('sensitivewords')->insert($param);
-            }catch(\Exception $e){
+            } catch(\Exception $e) {
                 return json(['code' => -2, 'data' => '', 'msg' => $e->getMessage()]);
             }
 
@@ -85,7 +88,7 @@ class Sensitivec extends Base
             }
 
             $param['sensitivewords_time'] = date('Y-m-d H:i:s');
-            $param['sensitivewords_uid'] = 1;//uid
+            $param['sensitivewords_uid'] = session('user_id');//uid
 
             try{
                 db('sensitivewords')->where('sensitivewords_id', $param['sensitivewords_id'])->update($param);
@@ -135,4 +138,4 @@ class Sensitivec extends Base
     }
 
 
-}
+}

+ 2 - 2
application/admin/model/Kfonline.php

@@ -9,10 +9,10 @@ use think\Model;
  */
 class Kfonline extends Model
 {
-    public function getOnlineAll($status = 0)
+    public function getOnlineAll($status = '')
     {
         $return = [];
-        if ($status == 0) {
+        if ($status) {
             $rets = $this->all();
         } else {
             $rets = $this->where(['status' => $status])->select();

+ 19 - 14
application/admin/view/index.html

@@ -10,7 +10,7 @@
     <!--[if lt IE 9]>
     <meta http-equiv="refresh" content="0;ie.html"/>
     <![endif]-->
-    <link rel="shortcut icon" href="favicon.ico">
+    <link rel="shortcut icon" href="__IMG__/favicon.ico">
     <link href="__CSS__/bootstrap.min.css?v=3.3.6" rel="stylesheet">
     <link href="__CSS__/font-awesome.min.css?v=4.4.0" rel="stylesheet">
     <link href="__CSS__/animate.min.css" rel="stylesheet">
@@ -28,21 +28,21 @@
             <ul class="nav" id="side-menu">
                 <li class="nav-header">
                     <div class="dropdown profile-element">
-                        <span><img alt="image" class="img-circle" src="__IMG__/profile_small.jpg"/></span>
+                        <span><img alt="image" class="img-circle" src="__IMG__/backlogo.png"/></span>
                         <a data-toggle="dropdown" class="dropdown-toggle" href="#">
                             <span class="clear">
-                                <span class="block m-t-xs">欢迎您 -- <strong class="font-bold"></strong>{$admin['user_name']}</span>
-                                <span class="text-muted text-xs block">管理员<b class="caret"></b></span>
+                                <span style="font-size: 18px; margin-top: 20px" onclick="change()" class="block m-t-xs">欢迎您 · <strong class="font-bold"></strong>{$admin['user_name']}</span>
+                                <!--<span class="text-muted text-xs block">管理员<b class="caret"></b></span>-->
                             </span>
                         </a>
-                        <ul class="dropdown-menu animated fadeInRight m-t-xs">
+                        <!--<ul class="dropdown-menu animated fadeInRight m-t-xs">
                             <li>
                                 <a href="javascript:change()">修改密码</a>
                             </li>
                             <li>
                                 <a href="{:url('admin/login/loginOut')}">安全退出</a>
                             </li>
-                        </ul>
+                        </ul>-->
                     </div>
                     <div class="logo-element">AD
                     </div>
@@ -56,25 +56,30 @@
     <!--左侧导航结束-->
     <!--右侧部分开始-->
     <div id="page-wrapper" class="gray-bg dashbard-1">
-        <div class="row border-bottom">
+        <!--<div class="row border-bottom">
             <nav class="navbar navbar-static-top" role="navigation" style="margin-bottom: 0">
-                <div class="navbar-header"><a class="navbar-minimalize minimalize-styl-2 btn btn-primary " href="#"><i
+                &lt;!&ndash;<div class="navbar-header"><a class="navbar-minimalize minimalize-styl-2 btn btn-primary " href="#"><i
                         class="fa fa-bars"></i> </a>
-                </div>
+                </div>&ndash;&gt;
                 <ul class="nav navbar-top-links navbar-right">
-                    <li class="hidden-xs">
+                    &lt;!&ndash;<li class="hidden-xs">
                         <a class="J_menuItem" id="clear"><i class="fa fa-trash"></i>
                             清理缓存
                         </a>
-                    </li>
-                    <li class="dropdown hidden-xs">
+                    </li>&ndash;&gt;
+                    &lt;!&ndash;<li class="hidden-xs">
+                        <a class="J_menuItem" href="{:url('admin/login/loginOut')}"><i class="fa fa fa-sign-out"></i>
+                            退出
+                        </a>
+                    </li>&ndash;&gt;
+                    &lt;!&ndash;<li class="dropdown hidden-xs">
                         <a class="right-sidebar-toggle" aria-expanded="false">
                             <i class="fa fa-tasks"></i> 主题
                         </a>
-                    </li>
+                    </li>&ndash;&gt;
                 </ul>
             </nav>
-        </div>
+        </div>-->
         <div class="row content-tabs">
             <button class="roll-nav roll-left J_tabLeft"><i class="fa fa-backward"></i>
             </button>

+ 136 - 6
application/admin/view/index/index.html

@@ -97,12 +97,20 @@
     </div>
 
     <div class="ibox float-e-margins">
-        <div class="ibox-title">
-            <h5>会话监控</h5>
+        <input style="display:none;" type="text" value="1" id="type">
+        <div style="display: flex;">
+            <div class="ibox-title" style="width: 100px; cursor:pointer;" id="current1" onclick="current(1)">
+                <h5>当前会话</h5>
+            </div>
+            <div class="ibox-title" id="current2" style="width: 100px; cursor:pointer; background: #eee" onclick="current(2)">
+                <h5>在线客服</h5>
+            </div>
+            <div class="ibox-title" style="width: calc(100% - 200px); background: #eee;">
+            </div>
         </div>
         <div class="ibox-content">
             <!--搜索框开始-->
-            <form id='commentForm' role="form" method="post" class="form-inline">
+            <form id="realTimeForm"  role="form" method="post" class="form-inline">
                 <div class="content clearfix m-b">
                     <div class="form-group">
                         <label>分组名称:</label>
@@ -132,9 +140,9 @@
                 </div>
             </form>
             <!--搜索框结束-->
-            <div class="example-wrap">
+            <div id="realTimeTable" class="example-wrap">
                 <div class="example">
-                    <table id="cusTable" class="table table-hover table-striped">
+                    <table class="table table-hover table-striped">
                         <thead>
                         <tr>
                             <th>会话ID</th>
@@ -155,6 +163,67 @@
                 </div>
             </div>
             <!-- End Example Pagination -->
+
+
+            <!--搜索框开始-->
+            <form id='commentForm' style="display: none" role="form" method="get" class="form-inline">
+                <div class="content clearfix m-b">
+                    <div class="form-group">
+                        <label>分组名称:</label>
+                        <div class="input-group col-sm-4 layui-form" style="width: 120px;">
+                            <input type="hidden" name="type1" id="type1"/>
+                            <select lay-verify="required" lay-filter="group">
+                                <option value="">全部客服组</option>
+                                {if !empty($groups)}
+                                {foreach name="groups" item="vo"}
+                                <option value="{$vo['id']}">{$vo['name']}</option>
+                                {/foreach}
+                                {/if}
+                            </select>
+                        </div>
+                    </div>
+                    <div class="form-group" style="margin-left: 40px">
+                        <label>报警状态:</label>
+                        <div class="input-group col-sm-4 layui-form" style="width: 120px;">
+                            <input type="hidden" name="type2" id="type2"/>
+                            <select lay-verify="required" lay-filter="alarm">
+                                <option value="">所有状态</option>
+                                <option value="1">在线状态</option>
+                                <option value="2">休息状态</option>
+                                <option value="3">隐身状态</option>
+                            </select>
+                        </div>
+                    </div>
+
+                    <div class="form-group">
+                        <lable>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</lable>
+                        <button class="btn btn-primary" type="button" style="margin-top:5px" id="search"><strong>搜
+                            索</strong>
+                        </button>
+                    </div>
+                </div>
+            </form>
+            <!--搜索框结束-->
+            <div id="commentTable" style="display: none" class="example-wrap">
+                <div class="example">
+                    <table id="cusTable">
+                        <thead>
+                        <th data-field="uidname">客服</th>
+                        <th data-field="hhl">会话量</th>
+                        <th data-field="jdl">接待量</th>
+                        <th data-field="pjhysc">平均会话时长</th>
+                        <th data-field="cpl">参评率</th>
+                        <th data-field="mydl">满意度率</th>
+                        <th data-field="pjxysc">平均响应时长</th>
+                        <th data-field="jrxxsc">今日休息时长</th>
+                        <th data-field="fxx">发消息</th>
+                        </thead>
+                    </table>
+                </div>
+            </div>
+            <!-- End Example Pagination -->
+
+
         </div>
     </div>
 </div>
@@ -175,7 +244,25 @@
 <script src="__JS__/layui/layui.js"></script>
 <script src="__JS__/jquery.form.js"></script>
 <script type="text/javascript">
-
+    function current(id) {
+        $("#type").val(id);
+        if (id == 1) {
+            $("#current1").css("background","#fff");
+            $("#current2").css("background","#eee");
+            $("#realTimeForm").css("display","block");
+            $("#realTimeTable").css("display","block");
+            $("#commentForm").css("display","none");
+            $("#commentTable").css("display","none");
+        } else if (id == 2) {
+            $("#current2").css({"background":"#fff"});
+            $("#current1").css({"background":"#eee"});
+            $("#realTimeForm").css({"display":"none"});
+            $("#realTimeTable").css({"display":"none"});
+            $("#commentForm").css({"display":"block"});
+            $("#commentTable").css({"display":"block"});
+        }
+        initTable()
+    }
     layui.use(['form', 'upload'], function(){
         var form = layui.form;
 
@@ -189,7 +276,50 @@
             onSearch()
         });
     });
+    function initTable() {
+        //先销毁表格
+        $('#cusTable').bootstrapTable('destroy');
+        //初始化表格,动态从服务器加载数据
+        $("#cusTable").bootstrapTable({
+            method: "get",  //使用get请求到服务器获取数据
+            url: "{:url('kfonitoring/kfjiankong')}", //获取数据的地址
+            striped: true,  //表格显示条纹
+            pagination: true, //启动分页
+            pageSize: 50,  //每页显示的记录数
+            pageNumber: 1, //当前第几页
+            pageList: [5, 10, 15, 20, 25],  //记录数可选列表
+            sidePagination: "server", //表示服务端请求
+            paginationFirstText: "首页",
+            paginationPreText: "上一页",
+            paginationNextText: "下一页",
+            paginationLastText: "尾页",
+            queryParamsType: "undefined",
+            queryParams: function queryParams(params) {   //设置查询参数
+                var param = {
+                    pageNumber: params.pageNumber,
+                    pageSize: params.pageSize,
+                    searchText: $('#type1').val() + ',' + $('#type2').val() + ',' + $('#type3').val()
+                };
+                return param;
+            },
+            onLoadSuccess: function (res) {  //加载成功时执行
+                if (111 == res.code) {
+                    window.location.reload();
+                }
+                layer.msg("加载成功", {time: 1000});
+            },
+            onLoadError: function () {  //加载失败时执行
+                layer.msg("加载数据失败");
+            }
+        });
+    }
+    $(document).ready(function () {
+        //调用函数,初始化表格
+        initTable();
 
+        //当点击查询按钮的时候执行
+        $("#search").bind("click", initTable);
+    });
 </script>
 <!--webSocket-->
 <script>

+ 24 - 3
application/admin/view/sensitivec/index.html

@@ -15,8 +15,16 @@
 <div class="wrapper wrapper-content animated fadeInRight">
     <!-- Panel Other -->
     <div class="ibox float-e-margins">
-        <div class="ibox-title">
-            <h5>敏感词列表</h5>
+        <input style="display:none;" type="text" value="1" id="type">
+        <div style="display: flex;">
+            <div class="ibox-title" style="width: 100px; cursor:pointer;" id="current1" onclick="current(1)">
+                <h5>客服敏感词</h5>
+            </div>
+            <div class="ibox-title" id="current2" style="width: 100px; cursor:pointer; background: #eee" onclick="current(2)">
+                <h5>用户敏感词</h5>
+            </div>
+            <div class="ibox-title" style="width: calc(100% - 200px); background: #eee;">
+            </div>
         </div>
         <div class="ibox-content">
             <a href="/admin/sensitivec/addsensitive.html">
@@ -44,7 +52,7 @@
                         <th data-field="sensitivewords_id">ID</th>
                         <th data-field="sensitivewords_word">内容</th>
                         <th data-field="sensitivewords_time">时间</th>
-                        <th data-field="sensitivewords_for">对象</th>
+                        <th data-field="user_name">操作人</th>
                         <th data-field="sensitivewords_status">状态</th>
                         <th data-field="operate">操作</th>
                         </thead>
@@ -65,9 +73,21 @@
 <script src="__JS__/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.min.js"></script>
 <script src="__JS__/plugins/layer/layer.min.js"></script>
 <script type="text/javascript">
+    function current(id) {
+        $("#type").val(id);
+        if (id == 1) {
+            $("#current1").css("background","#fff");
+            $("#current2").css("background","#eee");
+        } else if (id == 2) {
+            $("#current2").css({"background":"#fff"});
+            $("#current1").css({"background":"#eee"});
+        }
+        initTable()
+    }
     function initTable() {
         //先销毁表格
         $('#cusTable').bootstrapTable('destroy');
+        let type = $('#type').val();
         //初始化表格,动态从服务器加载数据
         $("#cusTable").bootstrapTable({
             method: "get",  //使用get请求到服务器获取数据
@@ -86,6 +106,7 @@
             queryParams: function queryParams(params) {   //设置查询参数
                 var param = {
                     pageNumber: params.pageNumber,
+                    type: type,
                     pageSize: params.pageSize,
                     searchText:$('#content').val()
                 };

+ 3 - 0
application/admin/view/words/index.html

@@ -26,6 +26,9 @@
             <div class="ibox-title" style="width: calc(100% - 200px); background: #eee;">
             </div>
         </div>-->
+        <div class="ibox-title">
+            <h5>系统常用语列表</h5>
+        </div>
         <div class="ibox-content" style="border-top: 0;">
             <a href="/admin/words/addword.html">
                 <button class="btn btn-primary" type="button" style="margin-top:5px"><strong>新 增</strong>

BIN
public/static/admin/images/backlogo.png


BIN
public/static/admin/images/favicon.ico


+ 1 - 1
vendor/GatewayWorker_windows/Applications/whisper/Events.php

@@ -109,7 +109,7 @@ class Events
             });
 
             // 检查对话时效给出.
-            Timer::add(10, function () {
+            Timer::add(60, function () {
                 self::systemMonitoring();
             });