| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- <!DOCTYPE html>
- <html lang="zh-CN">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>角色管理</title>
- <link rel="stylesheet" href="../../lib/layui/css/layui.css">
- <style>
- body { padding: 15px; }
- .search-form { margin-bottom: 15px; padding: 15px; background: #fff; border-radius: 4px; }
- .status-green { color: #5fb878; }
- .status-red { color: #ff5722; }
- </style>
- </head>
- <body>
- <div class="search-form">
- <form class="layui-form layui-form-pane" lay-filter="searchForm">
- <div class="layui-form-item">
- <div class="layui-inline">
- <label class="layui-form-label">角色名称</label>
- <div class="layui-input-inline">
- <input type="text" name="roleName" placeholder="请输入角色名称" class="layui-input" autocomplete="off">
- </div>
- </div>
- <div class="layui-inline">
- <label class="layui-form-label">状态</label>
- <div class="layui-input-inline">
- <select name="status" class="layui-select">
- <option value="">全部</option>
- <option value="1">正常</option>
- <option value="0">停用</option>
- </select>
- </div>
- </div>
- <div class="layui-inline">
- <button type="button" class="layui-btn" id="btnSearch"><i class="layui-icon layui-icon-search"></i> 搜索</button>
- <button type="reset" class="layui-btn layui-btn-primary">重置</button>
- </div>
- </div>
- </form>
- </div>
-
- <div class="table-toolbar">
- <button class="layui-btn layui-btn-sm" id="btnAdd"><i class="layui-icon layui-icon-add-1"></i> 添加</button>
- <button class="layui-btn layui-btn-sm layui-btn-danger" id="btnBatchDelete"><i class="layui-icon layui-icon-delete"></i> 批量删除</button>
- </div>
-
- <table id="tableList" lay-filter="tableList"></table>
-
- <script type="text/html" id="toolbar">
- <a class="layui-btn layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i> 编辑</a>
- <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="assignMenu"><i class="layui-icon layui-icon-set-fill"></i> 分配菜单</a>
- <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i> 删除</a>
- </script>
-
- <script type="text/html" id="statusTpl">
- {{# if(d.status === '1') { }}
- <span class="status-green"><i class="layui-icon layui-icon-ok-circle"></i> 正常</span>
- {{# } else { }}
- <span class="status-red"><i class="layui-icon layui-icon-close-fill"></i> 停用</span>
- {{# } }}
- </script>
-
- <script src="../../lib/layui/layui.js"></script>
- <script src="../../js/config.js"></script>
- <script src="../../js/common.js"></script>
- <script>
- layui.use(['table', 'layer', 'form'], function() {
- var table = layui.table;
- var layer = layui.layer;
- var form = layui.form;
-
- var tableIns = TableRender.init({
- elem: '#tableList',
- url: Config.api.role.page,
- cols: [[
- { type: 'checkbox', fixed: 'left' },
- { field: 'roleName', title: '角色名称', width: 150 },
- { field: 'roleKey', title: '权限标识', width: 200 },
- { field: 'sort', title: '排序', width: 80 },
- { field: 'status', title: '状态', width: 100, templet: '#statusTpl' },
- { field: 'createTime', title: '创建时间', width: 170, templet: function(d) { return Common.formatDate(d.createTime); } },
- { field: 'remark', title: '备注' },
- { fixed: 'right', title: '操作', width: 220, align: 'center', toolbar: '#toolbar' }
- ]]
- });
-
- $('#btnSearch').click(function() {
- var data = form.val('searchForm');
- table.reload('tableList', {
- where: data,
- page: { curr: 1 }
- });
- });
-
- $('#btnAdd').click(function() {
- Common.open({
- title: '添加角色',
- area: ['600px', '450px'],
- content: 'role_form.html?id='
- });
- });
-
- $('#btnBatchDelete').click(function() {
- var checkStatus = table.checkStatus('tableList');
- var data = checkStatus.data;
- if (data.length === 0) {
- layer.msg('请选择要删除的数据', { icon: 2 });
- return;
- }
- var ids = data.map(function(item) { return item.id; });
- Common.confirm('确定要删除选中的 ' + data.length + ' 条数据吗?', function() {
- Common.del(Config.api.role.remove + '/' + ids.join(','), function(res) {
- Common.success('删除成功', function() {
- table.reload('tableList');
- });
- });
- });
- });
-
- table.on('tool(tableList)', function(obj) {
- var data = obj.data;
- var event = obj.event;
-
- if (event === 'edit') {
- Common.open({
- title: '编辑角色',
- area: ['600px', '450px'],
- content: 'role_form.html?id=' + data.id
- });
- } else if (event === 'assignMenu') {
- Common.open({
- title: '分配菜单 - ' + data.roleName,
- area: ['400px', '500px'],
- content: 'role_menu.html?roleId=' + data.id
- });
- } else if (event === 'del') {
- Common.confirm('确定要删除角色 【' + data.roleName + '】 吗?', function() {
- Common.del(Config.api.role.remove + '/' + data.id, function(res) {
- Common.success('删除成功', function() {
- obj.del();
- });
- });
- });
- }
- });
- });
- </script>
- </body>
- </html>
|