From 56364722d3ed70d48ec41f567a4e59e5ccbbb868 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 19 五月 2022 17:45:42 +0800
Subject: [PATCH] 增加权限管理

---
 src/main/resources/code/service/app/src/main/resources/static/admin/pages/authority/admin_role_rule_list.html |  117 ++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 85 insertions(+), 32 deletions(-)

diff --git a/src/main/resources/code/service/app/src/main/resources/static/config/system_config_list.html b/src/main/resources/code/service/app/src/main/resources/static/admin/pages/authority/admin_role_rule_list.html
similarity index 64%
copy from src/main/resources/code/service/app/src/main/resources/static/config/system_config_list.html
copy to src/main/resources/code/service/app/src/main/resources/static/admin/pages/authority/admin_role_rule_list.html
index ea3a04d..96d2365 100644
--- a/src/main/resources/code/service/app/src/main/resources/static/config/system_config_list.html
+++ b/src/main/resources/code/service/app/src/main/resources/static/admin/pages/authority/admin_role_rule_list.html
@@ -3,24 +3,27 @@
 
 <head>
     <meta charset="UTF-8">
-    <title>绯荤粺閰嶇疆淇℃伅鍒楄〃</title>
+    <title>绠$悊鍛樿鑹茬鐞嗗垪琛�</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
     <meta name="viewport"
           content="width=device-width,user-scalable=yes, minimum-scale=0.4, initial-scale=0.8,target-densitydpi=low-dpi"/>
-    <link rel="stylesheet" href="../css/font.css">
-    <link rel="stylesheet" href="../css/xadmin.css">
-    <script src="../lib/layui/layui.js" charset="utf-8"></script>
-    <link rel="stylesheet" href="../css/theme3049.min.css">
-    <script src="../js/vue.min.js" type="text/javascript" charset="utf-8"></script>
-    <script type="text/javascript" src="../js/xadmin.js"></script>
-    <script src="../js/http.js" type="text/javascript" charset="utf-8"></script>
-    <script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
+
+    <link rel="stylesheet" href="/admin/css/font.css">
+    <link rel="stylesheet" href="/admin/css/xadmin.css">
+    <link rel="stylesheet" href="/admin/css/theme3049.min.css">
+
+    <script src="/admin/lib/layui/layui.js" charset="utf-8"></script>
+    <script src="/admin/js/vue.min.js" type="text/javascript" charset="utf-8"></script>
+    <script src="/admin/js/xadmin.js" type="text/javascript"></script>
+    <script src="/admin/js/http.js" type="text/javascript" charset="utf-8"></script>
+    <script src="/admin/js/jquery.min.js" type="text/javascript"></script>
+    <script src="/admin/js/utils.js"></script>
     <!--[if lt IE 9]>
     <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
     <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
     <![endif]-->
-    <script src="../js/utils.js"></script>
+
 </head>
 
 <body>
@@ -41,11 +44,24 @@
             <div class="layui-card">
                 <div class="layui-card-body">
                     <form class="layui-form layui-col-space5">
+                        <div class="layui-inline layui-show-xs-block">
+                            <select name="role">
+                            </select></div>
 
                         <div class="layui-inline layui-show-xs-block">
-                            <input type="text" name="kw" lay-verify="" placeholder="璇疯緭鍏ュ悕绉�" autocomplete="off"
+                            <select name="navPage" lay-verify="" autocomplete="off"
+                                    class="layui-select">
+                                <option value="">璇烽�夋嫨椤甸潰绫诲瀷</option>
+                                <option value="true">瀵艰埅椤�</option>
+                                <option value="false">闈炲鑸〉</option>
+                            </select>
+                        </div>
+                        <div class="layui-inline layui-show-xs-block">
+                            <input type="text" name="path" lay-verify="" placeholder="璺緞" autocomplete="off"
                                    class="layui-input">
                         </div>
+
+
 
                         <div class="layui-inline layui-show-xs-block">
                             <button id="search" class="layui-btn" lay-submit="" lay-filter="search">
@@ -64,17 +80,24 @@
 </body>
 <script type="text/html" id="toolbar">
     <div class="layui-btn-container">
-        <button class="layui-btn" onclick="xadmin.open('娣诲姞绯荤粺閰嶇疆淇℃伅','system_config_add.html?type='+  ksapp.getQueryParam('type'),500,580)"><i
+        <button class="layui-btn" onclick="xadmin.open('娣诲姞绠$悊鍛樿鑹茬鐞�','admin_role_rule_add.html',500,580)"><i
                 class="layui-icon">顦�</i>娣诲姞
+        </button>
+        <button class="layui-btn layui-btn-danger" lay-event="delete">
+            <i class="layui-icon">&#xe640;</i>
+            鍒犻櫎
         </button>
     </div>
 </script>
 
 <script type="text/html" id="optContainer">
     <div class="layui-btn-container">
-        <a title="淇敼" onclick="xadmin.open('淇敼绯荤粺閰嶇疆淇℃伅','system_config_update.html?id={{d.id}}',500,580)"
+        <a title="淇敼" onclick="xadmin.open('淇敼绠$悊鍛樿鑹茬鐞�','admin_role_rule_update.html?id={{d.id}}',500,580)"
            href="javascript:;">
             <i class="layui-icon">&#xe642;</i>
+        </a>
+        <a title="鍒犻櫎" onclick="member_del(this,{{d.LAY_INDEX }},'{{d.id}}')" href="javascript:;">
+            <i class="layui-icon">&#xe640;</i>
         </a>
     </div>
 </script>
@@ -120,9 +143,9 @@
 
 <script>
     var tableIns = null;
+    var app = null;
     $(function () {
-
-        var app = new Vue({
+        app = new Vue({
             el: "#app",
             data: {
                 key: '',
@@ -150,25 +173,29 @@
 
                         tableIns = table.render({
                             elem: '#table_list',
-                            url: "/admin/api/config/list",
+                            url: "/admin/api/authority/list",
                             toolbar: "#toolbar",
                             totalRow: true,
                             cols: [[{type: 'checkbox', title: "ID"},
-                                {field: 'name', width: 200, sort: false, title: "鍚嶇О"},
-                                {field: 'key', width: 120, sort: false, title: "鍏抽敭瀛�"},
+                                {field: 'id', width: 120, sort: false, title: "ID"},
+                                {field: 'role', width: 120, sort: false, title: "瑙掕壊"},
+                                {field: 'path', width: 300, sort: false, title: "璺緞琛ㄨ揪寮�"},
                                 {
-                                    field: 'value', width: 400, sort: false, title: "鍐呭", templet: function (res) {
-                                        if ("object" == typeof res.value) {
-                                            return JSON.stringify(res.value);
+                                    field: 'navPage',
+                                    width: 120,
+                                    sort: false,
+                                    title: "鏄惁涓哄鑸〉闈�",
+                                    templet: function (res) {
+                                        if (res.navPage) {
+                                            return "<input class='layui-disabled' disabled='disabled' type='checkbox' lay-skin='switch' checked='checked'>";
                                         } else {
-                                            return res.value;
+                                            return "<input class='layui-disabled' disabled='disabled' type='checkbox' lay-skin='switch'>";
                                         }
 
                                     }
                                 },
-                                {field: 'remarks', width: 120, sort: false, title: "澶囨敞"},
-                                {field: 'createTime', width: 120, sort: false, title: "鍒涘缓鏃堕棿"},
-                                {field: 'updateTime', width: 120, sort: false, title: "淇敼鏃堕棿"},
+                                {field: 'createTime', width: 150, sort: false, title: "鍒涘缓鏃堕棿"},
+                                {field: 'updateTime', width: 150, sort: false, title: "淇敼鏃堕棿"},
                                 {fixed: 'right', width: 80, title: "鎿嶄綔", toolbar: '#optContainer'}]],
                             page: true,
                             parseData: function (res) { //res 鍗充负鍘熷杩斿洖鐨勬暟鎹�
@@ -217,7 +244,35 @@
                                 ;
                             });
                         //璇锋眰鎼滅储琛ㄥ崟涓渶瑕佺殑鏁版嵁
-                        $('#search').trigger("click");
+
+                        var requestCount = 0;
+                        requestCount++;
+                        var params = {};
+
+                        ksapp.postJSON('/admin/api/authority/listRoles', params, function (res) {
+                            if (res.code == 0) {
+                                //濉厖鏁版嵁
+                                $("select[name=role]").empty();
+                                $("select[name=role]").append("<option value=''>璇烽�夋嫨</option>");
+                                for (var i = 0; i < res.data.length; i++) {
+                                    var html = "<option value='" + res.data[i].key + "'>";
+                                    html += res.data[i].value + "</option>";
+                                    $("select[name=role]").append(html);
+                                }
+                                //閲嶆柊娓叉煋琛ㄥ崟
+                                form.render();
+
+                                requestCount--;
+                                if (requestCount <= 0) {
+                                    //鎼滅储
+                                    $('#search').trigger("click");
+                                }
+                            } else {
+                                layer.msg(res.msg);
+                            }
+
+                        }, function (res) {
+                        });
                     });
 
                 },
@@ -230,7 +285,7 @@
                     });
                 },
                 deleteList: function (ids, success) {
-                    ksapp.post("/admin/api/config/delete", {ids: JSON.stringify(ids)}, function (e) {
+                    ksapp.post("/admin/api/authority/delete", {ids: JSON.stringify(ids)}, function (e) {
                         if (e.code == 0) {
                             success();
                         } else {
@@ -240,18 +295,16 @@
                     });
                 },
                 search: function (params) {
-                    params["type"] = ksapp.getQueryParam("type");
+
                     var ps = {};
                     for (var key in params) {
-                        if (params[key] != null && params[key].length > 0) {
+                        if (params[key].length > 0) {
                             ps[key] = params[key];
                         }
                     }
-
-
                     //鏁版嵁閲嶈浇
                     tableIns.reload({
-                        where: params,
+                        where: ps,
                         page: {
                             curr: 1 //閲嶆柊浠庣 1 椤靛紑濮�
                         }

--
Gitblit v1.8.0