forked from kidgrow-microservices-platform

kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user.html
@@ -2,8 +2,8 @@
    <div class="layui-card-header">
        <h2 class="header-title">用户管理</h2>
        <span class="layui-breadcrumb pull-right">
          <a href="#!console">首页</a>
          <a><cite>用户管理</cite></a>
            <a href="#!console">首页</a>
            <a><cite>用户管理</cite></a>
        </span>
    </div>
    <div class="layui-card-body">
@@ -11,18 +11,17 @@
            搜索:
            <select id="user-search-key">
                <option value="">-请选择-</option>
                <option value="user_id">ID</option>
                <option value="username">账号</option>
                <option value="nick_name">用户名</option>
                <option value="mobile">手机号</option>
            </select>&emsp;
            <input id="user-search-value" class="layui-input search-input" type="text" placeholder="输入关键字"/>&emsp;
            <button id="user-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
            <button id="user-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
            <button id="user-btn-export" class="layui-btn icon-btn"><i class="layui-icon">&#xe601;</i>导出</button>
            <button type="button" class="layui-btn" id="user-btn-import">
                <i class="layui-icon">&#xe67c;</i>导入
            </button>
            <input id="user-search-value" class="layui-input search-input" type="text" placeholder="按关键字" />&emsp;
            <button id="user-btn-search" class="layui-btn icon-btn"><i class="layui-icon" >&#xe615;</i>搜索</button>
            <button id="user-btn-add" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="user-btn-add">&#xe654;</i>添加</button>
<!--            <button id="user-btn-export" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="user-btn-export">&#xe601;</i>导出</button>-->
<!--            <button type="button" class="layui-btn" id="user-btn-import">-->
<!--                <i class="layui-icon permissions" permissions="user-btn-import">&#xe67c;</i>导入 -->
<!--            </button>-->
        </div>
        <table class="layui-table" id="user-table" lay-filter="user-table"></table>
@@ -32,9 +31,10 @@
<!-- 表格操作列 -->
<script type="text/html" id="user-table-bar">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-xs" lay-event="reset">重置密码</a>
    <a class="layui-btn layui-btn-xs" lay-event="del">删除</a>
    <a class="layui-btn layui-btn-primary layui-btn-xs permissions" permissions="user-btn-add" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-xs permissions" permissions="user-default-password" lay-event="reset">重置密码</a>
    <a class="layui-btn layui-btn-xs permissions" permissions="userorg-save" lay-event="org">分配组织</a>
    <a class="layui-btn layui-btn-xs permissions" permissions="user-del" lay-event="del">删除</a>
</script>
<!-- 表格状态列 -->
@@ -59,25 +59,24 @@
            elem: '#user-table',
            url: config.base_server + 'api-user/users',
            method: 'GET',
            headers:{'Authorization': 'Bearer ' + config.getToken().access_token},
            headers: { 'Authorization': 'Bearer ' + config.getToken().access_token},
            page: true,
            cols: [[
                {type: 'numbers'},
                {field: 'id', sort: true, title: '用户编号'},
                {field: 'username', sort: true, title: '账号'},
                {field: 'nickname', sort: true, title: '用户名'},
                {field: 'mobile', sort: true, title: '手机号'},
                {sort: true, title: '性别',templet:function (d) {
                        return d.sex==0?"男":"女"
                    }},
                { field: 'username',  width: 100, title: '账号' },
                { field: 'nickname',  width: 200, title: '用户名' },
                { field: 'mobile',  width: 150, title: '手机号' },
                {
                    sort: true, templet: function (d) {
                        return util.toDateString(d.createTime);
                    }, title: '创建时间'
                    sort: true, title: '性别', templet: function (d) {
                        return d.sex == 0 ? "男" : "女"
                    }, width: 100
                },
                {field: 'enabled',width: 100, sort: true, templet: '#user-tpl-state', title: '状态'},
                {fixed: 'right', align: 'center', toolbar: '#user-table-bar', title: '操作', width: 195}
            ]]
                { field: 'createTime', width: 250, sort: true, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd HH:mm')}}</div>" },
                { field: 'enabled', width: 100, sort: true, templet: '#user-tpl-state', title: '状态' },
                { fixed: 'right', align: 'center', toolbar: '#user-table-bar', title: '操作', width: 300 }
            ]],
            done:function(res){
                permissionsInput(res,config);
            }
        });
        // 添加按钮点击事件
@@ -96,12 +95,13 @@
                layer.confirm('确定重置此用户的密码吗?', function (i) {
                    layer.close(i);
                    layer.load(2);
                    admin.req('api-user/users/'+obj.data.id+'/password', {}, function (data) {
                    admin.req('api-user/users/' + obj.data.id + '/password', {}, function (data) {
                        layer.closeAll('loading');
                        if (data.code == 0) {
                            layer.msg(data.msg, {icon: 1, time: 500});
                            layer.msg(data.msg, { icon: 1, time: 2000 });
                            layer.alert("密码重置为:"+data.data, {icon: 1});
                        } else {
                            layer.msg(data.msg, {icon: 2, time: 500});
                            layer.msg(data.msg, { icon: 2, time: 2000 });
                        }
                    }, 'PUT');
                });
@@ -109,15 +109,23 @@
                layer.confirm('确定删除此用户吗?', function (i) {
                    layer.close(i);
                    layer.load(2);
                    admin.req('api-user/users/'+obj.data.id, {}, function (data) {
                    admin.req('api-user/users/' + obj.data.id, {}, function (data) {
                        layer.closeAll('loading');
                        if (data.code == 0) {
                            layer.msg(data.msg, {icon: 1, time: 500});
                            layer.msg(data.msg, { icon: 1, time: 2000 });
                            table.reload('user-table', {});
                        } else {
                            layer.msg(data.msg, {icon: 2, time: 500});
                            layer.msg(data.msg, { icon: 2, time: 2000 });
                        }
                    }, 'delete');
                });
            } else if (layEvent === "org") {
            admin.putTempData('t_user', data);
                admin.popupCenter({
                    title: "分配组织",
                    path: 'pages/system/user_org_form.html',
                    finish: function () {
                    }
                });
            }
        });
@@ -125,8 +133,8 @@
        //显示表单弹窗
        var showEditModel = function (data) {
            //修改sex值
            if (data){
                data.sex = data.sex+'';
            if (data) {
                data.sex = data.sex + '';
            }
            admin.putTempData('t_user', data);
            var title = data ? '修改用户' : '添加用户';
@@ -143,7 +151,7 @@
        $('#user-btn-search').click(function () {
            var key = $('#user-search-key').val();
            var value = $('#user-search-value').val();
            table.reload('user-table', {where: {searchKey: key, searchValue: value}});
            table.reload('user-table', { where: { searchKey: key, searchValue: value } });
        });
        // 导出
@@ -154,7 +162,7 @@
            xhr.responseType = "blob";
            xhr.setRequestHeader("client_type", "DESKTOP_WEB");
            xhr.setRequestHeader("Authorization", "Bearer " + config.getToken().access_token);
            xhr.onload = function() {
            xhr.onload = function () {
                if (this.status == 200) {
                    var fileName = "user.xlsx";
                    var blob = this.response;
@@ -182,10 +190,10 @@
            }, function (data) {
                layer.closeAll('loading');
                if (data.code == 0) {
                    layer.msg(data.msg, {icon: 1, time: 500});
                    layer.msg(data.msg, { icon: 1, time: 2000 });
                    //table.reload('table-user', {});
                } else {
                    layer.msg(data.msg, {icon: 2, time: 500});
                    layer.msg(data.msg, { icon: 2, time: 2000 });
                    $(obj.elem).prop('checked', !obj.elem.checked);
                    form.render('checkbox');
                }
@@ -196,16 +204,16 @@
        var importUrl = config.base_server + 'api-user/users/import';
        upload.render({
            elem: '#user-btn-import'
            ,url: importUrl
            ,accept: 'file' //普通文件
            ,multiple: false
            ,headers: {"Authorization" : "Bearer " + config.getToken().access_token}
            ,done: function(data){
            , url: importUrl
            , accept: 'file' //普通文件
            , multiple: false
            , headers: { "Authorization": "Bearer " + config.getToken().access_token }
            , done: function (data) {
                if (data.code == 0) {
                    layer.msg(data.msg, {icon: 1, time: 500});
                    layer.msg(data.msg, { icon: 1, time: 2000 });
                    table.reload('user-table', {});
                } else {
                    layer.msg(data.msg, {icon: 2, time: 500});
                    layer.msg(data.msg, { icon: 2, time: 2000 });
                }
            }
        });