Jonlin 6 жил өмнө
parent
commit
e71fec5ed0

+ 101 - 12
application/admin/controller/Admins.php

@@ -158,32 +158,109 @@ class Admins extends Base
             $result = db('admingroup')->limit($offset, $limit)->select();
             foreach($result as $key=>$vo){
                 // 优化显示状态
-//                if(1 == $vo['status']){
-//                    $result[$key]['status'] = '<span class="label label-primary">启用</span>';
-//                }else{
-//                    $result[$key]['status'] = '<span class="label label-danger">禁用</span>';
-//                }
+                if(1 == $vo['status']){
+                    $result[$key]['status'] = '<span class="label label-primary">启用</span>';
+                }else{
+                    $result[$key]['status'] = '<span class="label label-danger">禁用</span>';
+                }
 
                 // 上次登录时间
-                $result[$key]['addTime'] = date('Y-m-d H:i:s', $vo['addTime']);
+                $result[$key]['addtime'] = date('Y-m-d H:i:s', $vo['addtime']);
 
                 // 生成操作按钮
-                if(0 != $vo['id']){
-                    $result[$key]['operate'] = $this->makeBtn($vo['id']);
+                if(0 != $vo['group_id']){
+                    $result[$key]['operate'] = $this->makeBtnPower($vo['group_id']);
                 }
             }
 
             $return['total'] = db('admingroup')->count();  //总数据
             $return['rows'] = $result;
-var_dump($result);exit;
-           // return json($return);
+
+            return json($return);
 
         }
-//
         return $this->fetch();
     }
 
-    // 生成按钮
+    // 添加权限组
+    public function addPower()
+    {
+        if(request()->isPost()){
+
+            $param = input('post.');
+
+            $has = db('admingroup')->field('group_id')->where('group_name', $param['group_name'])->find();
+            if(!empty($has)){
+                return json(['code' => -1, 'data' => '', 'msg' => '该权限组已经存在']);
+            }
+
+            try{
+                db('admingroup')->insert($param);
+            }catch(\Exception $e){
+                return json(['code' => -2, 'data' => '', 'msg' => $e->getMessage()]);
+            }
+
+            return json(['code' => 1, 'data' => '', 'msg' => '添加权限组成功']);
+        }
+
+        $this->assign([
+            'status' => config('kf_status')
+        ]);
+
+        return $this->fetch();
+    }
+
+    // 编辑权限组
+    public function editPower()
+    {
+        if(request()->isAjax()){
+
+            $param = input('post.');
+            //return $param;
+
+            // 检测用户修改的权限组是否重复
+            $has = db('admingroup')->where('group_name', $param['group_name'])->where('group_id', '<>', $param['group_id'])->find();
+            if(!empty($has)){
+                return json(['code' => -1, 'data' => '', 'msg' => '该权限组已经存在']);
+            }
+
+            try{
+                db('admingroup')->where('group_id', $param['group_id'])->update($param);
+            }catch(\Exception $e){
+                return json(['code' => -2, 'data' => '', 'msg' => $e->getMessage()]);
+            }
+
+            return json(['code' => 1, 'data' => '', 'msg' => '编辑管理员成功']);
+        }
+
+        $id = input('param.id/d');
+        $info = db('admingroup')->where('group_id', $id)->find();
+
+        $this->assign([
+            'info' => $info,
+            'status' => config('kf_status')
+        ]);
+        return $this->fetch();
+    }
+
+    // 删除权限组
+    public function delPower()
+    {
+        if(request()->isAjax()){
+            $id = input('param.id/d');
+            //return $id;
+
+            try{
+                db('admingroup')->where('group_id', $id)->delete();
+            }catch(\Exception $e){
+                return json(['code' => -1, 'data' => '', 'msg' => $e->getMessage()]);
+            }
+
+            return json(['code' => 1, 'data' => '', 'msg' => '删除权限组成功']);
+        }
+    }
+
+    // 生成管理员操作按钮
     private function makeBtn($id)
     {
         $operate = '<a href="' . url('admins/editadmin', ['id' => $id]) . '">';
@@ -194,4 +271,16 @@ var_dump($result);exit;
 
         return $operate;
     }
+
+    // 生成权限组操作按钮
+    private function makeBtnPower($id)
+    {
+        $operate = '<a href="' . url('admins/editpower', ['id' => $id]) . '">';
+        $operate .= '<button type="button" class="btn btn-primary btn-sm"><i class="fa fa-paste"></i> 编辑</button></a> ';
+
+        $operate .= '<a href="javascript:powerDel(' . $id . ')"><button type="button" class="btn btn-danger btn-sm">';
+        $operate .= '<i class="fa fa-trash-o"></i> 删除</button></a> ';
+
+        return $operate;
+    }
 }

+ 5 - 0
application/admin/controller/Base.php

@@ -10,9 +10,14 @@ class Base extends Controller
         if (!session('user_id')) {
             $this->redirect('admin/login/index');
         }
+        $menu = db('menu')->where('p_id',0)->select();
+        for($i=0;$i<count($menu);$i++){
+            $menulist = db('menu')->where('p_id','<>',0)->select();
+        }
         $this->assign([
             'version' => config('version'),
             'socket' =>config('socket'),
+            'menu' =>$menu,
         ]);
     }
 }

+ 16 - 1
application/admin/controller/Index.php

@@ -125,7 +125,22 @@ class Index extends Base
     // 管理员信息
     public function adminInfo(){
         $user_id = session('user_id');
+
+        //管理员信息
         $admin = db('admins')->where('id', $user_id)->find();
-        return $admin;
+
+        //菜单
+        $menu = db('menu')->select();
+
+        $date['admin'] = $admin;
+        $date['menu'] = $menu;
+        return $date;
+
+        $this->assign([
+            'data' => $date
+        ]);
+
+
+        return $this->fetch('/menu');
     }
 }

+ 120 - 0
application/admin/view/admins/addpower.html

@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>添加权限组</title>
+    <link rel="shortcut icon" href="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">
+    <link href="__JS__/layui/css/layui.css" rel="stylesheet">
+    <link href="__CSS__/style.min.css?v=4.1.0" rel="stylesheet">
+</head>
+<body class="gray-bg">
+<div class="wrapper wrapper-content animated fadeInRight">
+    <div class="row">
+        <div class="col-sm-8">
+            <div class="ibox float-e-margins">
+                <div class="ibox-title">
+                    <h5>添加权限组</h5>
+                </div>
+                <div class="ibox-content">
+                    <form class="form-horizontal m-t layui-form" id="commentForm" method="post" action="{:url('admins/addPower')}">
+
+                        <div class="form-group">
+                            <label class="col-sm-3 control-label">权限组名称:</label>
+                            <div class="input-group col-sm-4">
+                                <input id="group_name" type="text" class="form-control" name="group_name" required="" aria-required="true">
+                            </div>
+                        </div>
+                        <div class="form-group layui-form-item">
+                            <label class="col-sm-3 control-label">是否启用:</label>
+                            <div class="input-group col-sm-6">
+                                {if !empty($status)}
+                                {foreach name="status" item="vo" key="key"}
+                                <input type="radio" name="status" value="{$key}" title="{$vo}" {if $key eq 1}checked{/if}>
+                                {/foreach}
+                                {/if}
+                            </div>
+                        </div>
+                        <div class="form-group">
+                            <div class="col-sm-4 col-sm-offset-6">
+                                <button class="btn btn-primary" type="submit">提交</button>
+                            </div>
+                        </div>
+                    </form>
+                </div>
+            </div>
+
+        </div>
+    </div>
+</div>
+<script src="__JS__/jquery.min.js?v=2.1.4"></script>
+<script src="__JS__/bootstrap.min.js?v=3.3.6"></script>
+<script src="__JS__/content.min.js?v=1.0.0"></script>
+<script src="__JS__/plugins/validate/jquery.validate.min.js"></script>
+<script src="__JS__/plugins/validate/messages_zh.min.js"></script>
+<script src="__JS__/plugins/layer/layer.min.js"></script>
+<script src="__JS__/layui/layui.js"></script>
+<script src="__JS__/jquery.form.js"></script>
+<script type="text/javascript">
+
+    layui.use(['form', 'upload'], function(){
+        var form = layui.form;
+    });
+
+    var index = '';
+    function showStart(){
+        index = layer.load(0, {shade: false});
+        return true;
+    }
+
+    function showSuccess(res){
+
+        layer.ready(function(){
+            layer.close(index);
+            if(1 == res.code){
+               layer.alert(res.msg, {title: '友情提示', icon: 1, closeBtn: 0}, function(){
+                   window.location.href = res.data;
+               });
+            }else if(111 == res.code){
+                window.location.reload();
+            }else{
+                layer.msg(res.msg, {anim: 6});
+            }
+        });
+    }
+
+    $(document).ready(function(){
+        // 添加权限组
+        var options = {
+            beforeSubmit:showStart,
+            success:showSuccess
+        };
+
+        $('#commentForm').submit(function(){
+            $(this).ajaxSubmit(options);
+            return false;
+        });
+    });
+
+    // 表单验证
+    $.validator.setDefaults({
+        highlight: function(e) {
+            $(e).closest(".form-group").removeClass("has-success").addClass("has-error")
+        },
+        success: function(e) {
+            e.closest(".form-group").removeClass("has-error").addClass("has-success")
+        },
+        errorElement: "span",
+        errorPlacement: function(e, r) {
+            e.appendTo(r.is(":radio") || r.is(":checkbox") ? r.parent().parent().parent() : r.parent())
+        },
+        errorClass: "help-block m-b-none",
+        validClass: "help-block m-b-none"
+    });
+
+</script>
+</body>
+</html>

+ 120 - 0
application/admin/view/admins/editpower.html

@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>编辑权限组</title>
+    <link rel="shortcut icon" href="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">
+    <link href="__JS__/layui/css/layui.css" rel="stylesheet">
+    <link href="__CSS__/style.min.css?v=4.1.0" rel="stylesheet">
+</head>
+<body class="gray-bg">
+<div class="wrapper wrapper-content animated fadeInRight">
+    <div class="row">
+        <div class="col-sm-8">
+            <div class="ibox float-e-margins">
+                <div class="ibox-title">
+                    <h5>编辑权限组</h5>
+                </div>
+                <div class="ibox-content">
+                    <form class="form-horizontal m-t layui-form" id="commentForm" method="post" action="{:url('admins/editpower')}">
+                        <input type="hidden" value="{$info['group_id']}" name="group_id"/>
+                        <div class="form-group">
+                            <label class="col-sm-3 control-label">权限组名称:</label>
+                            <div class="input-group col-sm-4">
+                                <input id="group_name" type="text" class="form-control" name="group_name" required="" aria-required="true" value="{$info['group_name']}">
+                            </div>
+                        </div>
+                        <div class="form-group layui-form-item">
+                            <label class="col-sm-3 control-label">是否启用:</label>
+                            <div class="input-group col-sm-6">
+                                {if !empty($status)}
+                                {foreach name="status" item="vo" key="key"}
+                                <input type="radio" name="status" value="{$key}" title="{$vo}" {if $key eq $info['status']}checked{/if}>
+                                {/foreach}
+                                {/if}
+                            </div>
+                        </div>
+                        <div class="form-group">
+                            <div class="col-sm-4 col-sm-offset-6">
+                                <button class="btn btn-primary" type="submit">提交</button>
+                            </div>
+                        </div>
+                    </form>
+                </div>
+            </div>
+
+        </div>
+    </div>
+</div>
+<script src="__JS__/jquery.min.js?v=2.1.4"></script>
+<script src="__JS__/bootstrap.min.js?v=3.3.6"></script>
+<script src="__JS__/content.min.js?v=1.0.0"></script>
+<script src="__JS__/plugins/validate/jquery.validate.min.js"></script>
+<script src="__JS__/plugins/validate/messages_zh.min.js"></script>
+<script src="__JS__/plugins/layer/layer.min.js"></script>
+<script src="__JS__/layui/layui.js"></script>
+<script src="__JS__/jquery.form.js"></script>
+<script type="text/javascript">
+
+    layui.use(['form', 'upload'], function(){
+        var form = layui.form;
+    });
+
+    var index = '';
+    function showStart(){
+        index = layer.load(0, {shade: false});
+        return true;
+    }
+
+    function showSuccess(res){
+
+        layer.ready(function(){
+            layer.close(index);
+            if(1 == res.code){
+               layer.alert(res.msg, {title: '友情提示', icon: 1, closeBtn: 0}, function(){
+                   window.location.href = res.data;
+               });
+            }else if(111 == res.code){
+                window.location.reload();
+            }else{
+                layer.msg(res.msg, {anim: 6});
+            }
+        });
+    }
+
+    $(document).ready(function(){
+        // 添加管理员
+        var options = {
+            beforeSubmit:showStart,
+            success:showSuccess
+        };
+
+        $('#commentForm').submit(function(){
+            $(this).ajaxSubmit(options);
+            return false;
+        });
+    });
+
+    // 表单验证
+    $.validator.setDefaults({
+        highlight: function(e) {
+            $(e).closest(".form-group").removeClass("has-success").addClass("has-error")
+        },
+        success: function(e) {
+            e.closest(".form-group").removeClass("has-error").addClass("has-success")
+        },
+        errorElement: "span",
+        errorPlacement: function(e, r) {
+            e.appendTo(r.is(":radio") || r.is(":checkbox") ? r.parent().parent().parent() : r.parent())
+        },
+        errorClass: "help-block m-b-none",
+        validClass: "help-block m-b-none"
+    });
+
+</script>
+</body>
+</html>

+ 4 - 18
application/admin/view/admins/power.html

@@ -19,27 +19,13 @@
             <h5>权限组列表</h5>
         </div>
         <div class="ibox-content">
-            <!--搜索框开始-->
-            <form id='commentForm' role="form" method="post" class="form-inline pull-right">
-                <div class="content clearfix m-b">
-                    <div class="form-group">
-                        <label>管理员名称:</label>
-                        <input type="text" class="form-control" id="username" name="user_name">
-                    </div>
-                    <div class="form-group">
-                        <button class="btn btn-primary" type="button" style="margin-top:5px" id="search"><strong>搜 索</strong>
-                        </button>
-                    </div>
-                </div>
-            </form>
-            <!--搜索框结束-->
             <div class="example-wrap">
                 <div class="example">
                     <table id="cusTable">
                         <thead>
-                        <th data-field="group_id1">权限组ID</th>
+                        <th data-field="group_id">权限组ID</th>
                         <th data-field="group_name">权限组名称</th>
-                        <th data-field="addTime">创建时间</th>
+                        <th data-field="addtime">创建时间</th>
                         <th data-field="status">状态</th>
                         <th data-field="operate">操作</th>
                         </thead>
@@ -65,7 +51,7 @@
         //初始化表格,动态从服务器加载数据
         $("#cusTable").bootstrapTable({
             method: "get",  //使用get请求到服务器获取数据
-            url: "{:url('admins/index')}", //获取数据的地址
+            url: "{:url('admins/power')}", //获取数据的地址
             striped: true,  //表格显示条纹
             pagination: true, //启动分页
             pageSize: 10,  //每页显示的记录数
@@ -105,7 +91,7 @@
         $("#search").bind("click", initTable);
     });
 
-    function adminDel(id) {
+    function powerDel(id) {
         layer.confirm('确认删除权限组?', {icon: 3, title: '提示'}, function (index) {
             //do something
             $.getJSON("{:url('admins/delPower')}", {'id': id}, function (res) {

+ 11 - 22
application/admin/view/index.html

@@ -47,9 +47,9 @@
                     <div class="logo-element">AD
                     </div>
                 </li>
-                <!-- 菜单开始 -->
+                 <!--菜单开始-->
                 {include file="/menu" /}
-                <!-- 菜单结束 -->
+                 <!--菜单结束 -->
             </ul>
         </div>
     </nav>
@@ -247,17 +247,6 @@
 <script src="__JS__/plugins/pace/pace.min.js"></script>
 <script src="__JS__/layui/layui.js"></script>
 <script src="__JS__/jquery.form.js"></script>
-<script>
-    $.ajax({
-        type:"post",
-        url:"{:url('index/adminInfo')}",  //数据传输的控制器方法
-        //data:Data,//这里data传递过去的是序列化以后的字符串
-        success:function(data){
-            //console.log(data);
-            $(".font-bold").html(data['user_name']);
-        }
-    });
-</script>
 <script>
     var box;
     function change(){
@@ -311,15 +300,15 @@
             return false;
         });
 
-        $("#clear").click(function(){
-            $.getJSON("{:url('index/clear')}", function(res){
-                if(1 == res.code){
-                    layer.tips(res.msg, "#clear", {time: 1500});
-                }else{
-                    layer.tips(res.msg, "#clear", {time: 1500});
-                }
-            });
-        });
+//        $("#clear").click(function(){
+//            $.getJSON("{:url('index/clear')}", function(res){
+//                if(1 == res.code){
+//                    layer.tips(res.msg, "#clear", {time: 1500});
+//                }else{
+//                    layer.tips(res.msg, "#clear", {time: 1500});
+//                }
+//            });
+//        });
 
     });
 

+ 71 - 0
application/admin/view/menu.html

@@ -1,3 +1,29 @@
+{if !empty($menu)}
+{foreach name="status" item="vo" key="key"}
+<input type="radio" name="status" value="{$key}" title="{$vo}" {if $key eq 1}checked{/if}>
+<li class="menu">
+    <a href="#">
+        <i class="fa fa-qq"></i>
+        <span class="nav-label">客服管理</span>
+        <span class="fa arrow"></span>
+    </a>
+    <ul class="nav nav-second-level">
+        <li>
+            <a class="J_menuItem" href="{:url('users/index')}">客服列表</a>
+        </li>
+        <li>
+            <a class="J_menuItem" href="{:url('users/addUser')}">添加客服</a>
+        </li>
+    </ul>
+</li>
+{/foreach}
+{/if}
+
+
+
+
+
+
 <li class="menu">
     <a href="#">
         <i class="fa fa-qq"></i>
@@ -144,6 +170,7 @@
         <span class="fa arrow"></span>
     </a>
     <ul class="nav nav-second-level">
+
         <li>
             <a class="J_menuItem" href="{:url('sensitivec/index')}">敏感词</a>
         </li>
@@ -152,4 +179,48 @@
         </li>
     </ul>
 </li>
+<script src="__JS__/jquery.min.js?v=2.1.4"></script>
+<script>
+    $.ajax({
+        type:"post",
+        url:"{:url('index/adminInfo')}",  //数据传输的控制器方法
+        //data:Data,//这里data传递过去的是序列化以后的字符串
+        success:function(data){
+            //console.log(data);
+            $(".font-bold").html(data['admin']['user_name']);
+
+            $("#side-menu").append(
+                    '<li class="menu">' +
+                    '<a href="#">' +
+                    '<i class="fa fa-qq"></i>' +
+                    '<span class="nav-label">客服管理</span>' +
+                    '<span class="fa arrow"></span>' +
+                    '</a>' +
+                    '<ul class="nav nav-second-level collapse" aria-expanded="true">' +
+                    '<li>' +
+                    '<a class="J_menuItem" href="{:url('users/index')}">客服列表</a>' +
+            '</li>' +
+            '<li>' +
+            '<a class="J_menuItem" href="{:url('users/addUser')}">添加客服</a>' +
+            '</li>' +
+            '</ul>' +
+            '</li>'
+            );
+        }
+    });
 
+    $n = 1;
+    $(document).on("click","#side-menu>li",function(){
+        console.log(1234);
+        if($n == 1){
+            $(this).addClass('active');
+            $(this).children('ul').addClass('in');
+            $(this).siblings().removeClass('active');
+            $n = 2;
+        }else{
+            $(this).removeClass('active');
+            $(this).children('ul').removeClass('in');
+            $n = 1;
+        }
+    });
+</script>