Initial commit
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head th:replace="/common/template :: header(~{::title},~{::link},~{::style})">
|
||||
<link rel="stylesheet" th:href="@{/lib/zTree_v3/css/zTreeStyle/zTreeStyle.css}" type="text/css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-form timo-compile">
|
||||
<form th:action="@{/system/user/save}">
|
||||
<input type="hidden" name="id" th:if="${user}" th:value="${user.id}"/>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label required">用户名</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="text" name="username" placeholder="请输入用户名" th:value="${user?.username}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label required">用户昵称</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="text" name="nickname" placeholder="请输入用户昵称" th:value="${user?.nickname}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" th:if="!${user}">
|
||||
<label class="layui-form-label required">用户密码</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="password" name="password" placeholder="请输入用户密码">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" th:if="!${user}">
|
||||
<label class="layui-form-label required">确认密码</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="password" name="confirm" placeholder="再一次输入密码">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label required">所属</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input select-tree" th:attr="data-url=@{/system/dept/list}, data-value=${user?.dept?.id}"
|
||||
type="text" name="dept" placeholder="请选择" th:value="${user?.dept?.title}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">电话号码</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="text" name="phone" placeholder="请输入电话号码" th:value="${user?.phone}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">邮箱</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="text" name="email" placeholder="请输入邮箱" th:value="${user?.email}">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">选择性别</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="radio" name="sex" value="1" title="男" checked><div class="layui-unselect layui-form-radio layui-form-radioed"><i class="layui-anim layui-icon"></i><div>男</div></div>
|
||||
<input type="radio" name="sex" value="2" title="女" th:checked="${user?.sex} eq 2"><div class="layui-unselect layui-form-radio"><i class="layui-anim layui-icon"></i><div>女</div></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item layui-form-text">
|
||||
<label class="layui-form-label">备注</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea placeholder="请输入内容" class="layui-textarea" name="remark">[[${user?.remark}]]</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item timo-finally">
|
||||
<button class="layui-btn ajax-submit"><i class="fa fa-check-circle"></i> 保存</button>
|
||||
<button class="layui-btn btn-secondary close-popup"><i class="fa fa-times-circle"></i> 关闭</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<script th:replace="/common/template :: script"></script>
|
||||
<script type="text/javascript" th:src="@{/js/plugins/jquery-3.3.1.min.js}"></script>
|
||||
<script type="text/javascript" th:src="@{/lib/zTree_v3/js/jquery.ztree.core.min.js}"></script>
|
||||
<script type="text/javascript" th:src="@{/js/timoTree.js}"></script>
|
||||
<script type="text/javascript">
|
||||
// 树形菜单
|
||||
$.fn.selectTree();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,50 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org"
|
||||
>
|
||||
<head th:replace="/common/template :: header(~{::title},~{::link},~{::style})">
|
||||
</head>
|
||||
<body>
|
||||
<div class="timo-detail-page">
|
||||
<div class="timo-detail-title">基本信息</div>
|
||||
<table class="layui-table timo-detail-table">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th width='100px'>用户编号</th>
|
||||
<td th:text="${user.id}"></td>
|
||||
<th width='100px'>用户账号</th>
|
||||
<td th:text="${user.username}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>用户昵称</th>
|
||||
<td th:text="${user.nickname}"></td>
|
||||
<th>用户性别</th>
|
||||
<td th:text="${#dicts.keyValue('USER_SEX', user.sex)}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>所属</th>
|
||||
<td colspan="4" th:text="${user.dept?.title}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>电话号码</th>
|
||||
<td th:text="${user.phone}"></td>
|
||||
<th>邮箱</th>
|
||||
<td th:text="${user.email}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>创建时间</th>
|
||||
<td th:text="${#dates.format(user.createDate, 'yyyy-MM-dd HH:mm:ss')}"></td>
|
||||
<th>最后修改</th>
|
||||
<td th:text="${#dates.format(user.updateDate, 'yyyy-MM-dd HH:mm:ss')}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>备注</th>
|
||||
<td th:text="${user.remark}" colspan="4"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div th:replace="/common/fragment :: log(${user})"></div>
|
||||
</div>
|
||||
<script th:replace="/common/template :: script"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,126 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org"
|
||||
>
|
||||
<head th:replace="/common/template :: header(~{::title},~{::link},~{::style})">
|
||||
<link rel="stylesheet" th:href="@{/lib/zTree_v3/css/zTreeStyle/zTreeStyle.css}" type="text/css">
|
||||
</head>
|
||||
<body class="timo-layout-page">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header timo-card-header">
|
||||
<span><i class="fa fa-bars"></i> 用户管理</span>
|
||||
<i class="layui-icon layui-icon-refresh refresh-btn"></i>
|
||||
<a th:href="@{/system/user/export}"><i class="fa fa-download"></i></a>
|
||||
</div>
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-row timo-card-screen put-row">
|
||||
<div class="pull-left layui-form-pane timo-search-box">
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">状态</label>
|
||||
<div class="layui-input-block timo-search-status">
|
||||
<select class="timo-search-select" name="status" mo:dict="SEARCH_STATUS" mo-selected="${param.status}"></select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">所属</label>
|
||||
<div class="layui-input-block">
|
||||
<input class="layui-input select-tree" th:attr="data-url=@{/system/dept/list}, data-value=${dept?.id}" th:value="${dept?.title}" type="text" name="dept" placeholder="请选择部门">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">用户名</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="username" th:value="${param.username}" placeholder="请输入用户名" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">用户昵称</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="nickname" th:value="${param.nickname}" placeholder="请输入用户昵称" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn timo-search-btn">
|
||||
<i class="fa fa-search"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pull-right screen-btn-group">
|
||||
<div class="btn-group-left">
|
||||
<button class="layui-btn open-popup-param" data-title="修改密码" th:attr="data-url=@{/system/user/pwd}" data-size="456,242">
|
||||
<i class="fa fa-refresh"></i> 修改密码</button>
|
||||
<button class="layui-btn open-popup-param" data-type="radio" data-title="角色分配" th:attr="data-url=@{/system/user/role}" data-size="480,400">
|
||||
<i class="fa fa-user-secret"></i> 角色分配</button>
|
||||
</div>
|
||||
<div class="btn-group-right">
|
||||
<button class="layui-btn open-popup" data-title="添加用户" th:attr="data-url=@{/system/user/add}" data-size="auto">
|
||||
<i class="fa fa-plus"></i> 添加</button>
|
||||
<div class="btn-group">
|
||||
<button class="layui-btn">操作<span class="caret"></span></button>
|
||||
<dl class="layui-nav-child layui-anim layui-anim-upbit">
|
||||
<dd><a class="ajax-status" th:href="@{/system/user/status/ok}">启用</a></dd>
|
||||
<dd><a class="ajax-status" th:href="@{/system/user/status/freezed}">冻结</a></dd>
|
||||
<dd><a class="ajax-status" th:href="@{/system/user/status/delete}">删除</a></dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="timo-table-wrap">
|
||||
<table class="layui-table timo-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="timo-table-checkbox">
|
||||
<label class="timo-checkbox"><input type="checkbox">
|
||||
<i class="layui-icon layui-icon-ok"></i></label>
|
||||
</th>
|
||||
<th class="sortable" data-field="username">用户名</th>
|
||||
<th class="sortable" data-field="nickname">用户昵称</th>
|
||||
<th class="sortable" data-field="dept">所属</th>
|
||||
<th class="sortable" data-field="sex">性别</th>
|
||||
<th class="sortable" data-field="phone">电话</th>
|
||||
<th class="sortable" data-field="email">邮箱</th>
|
||||
<th class="sortable" data-field="createDate">创建时间</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="item:${list}">
|
||||
<td><label class="timo-checkbox"><input type="checkbox" th:value="${item.id}">
|
||||
<i class="layui-icon layui-icon-ok"></i></label></td>
|
||||
<td th:text="${item.username}">用户名</td>
|
||||
<td th:text="${item.nickname}">用户昵称</td>
|
||||
<td th:text="${item.dept?.title}">用户昵称</td>
|
||||
<td th:text="${#dicts.keyValue('USER_SEX', item.sex)}">性别</td>
|
||||
<td th:text="${item.phone}">电话</td>
|
||||
<td th:text="${item.email}">邮箱</td>
|
||||
<td th:text="${#dates.format(item.createDate, 'yyyy-MM-dd HH:mm:ss')}">创建时间</td>
|
||||
<td th:text="${#dicts.dataStatus(item.status)}">状态</td>
|
||||
<td>
|
||||
<a class="open-popup" data-title="编辑用户" th:attr="data-url=@{'/system/user/edit/'+${item.id}}" data-size="600,570" href="#">编辑</a>
|
||||
<a class="open-popup" data-title="详细信息" th:attr="data-url=@{'/system/user/detail/'+${item.id}}" data-size="800,600" href="#">详细</a>
|
||||
<a class="ajax-get" th:attr="data-msg='您是否删除'+${item.nickname}" th:href="@{/system/user/status/delete(ids=${item.id})}">删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div th:replace="/common/fragment :: page"></div>
|
||||
</div>
|
||||
</div>
|
||||
<script th:replace="/common/template :: script"></script>
|
||||
<script type="text/javascript" th:src="@{/js/plugins/jquery-3.3.1.min.js}"></script>
|
||||
<script type="text/javascript" th:src="@{/lib/zTree_v3/js/jquery.ztree.core.min.js}"></script>
|
||||
<script type="text/javascript" th:src="@{/js/timoTree.js}"></script>
|
||||
<script type="text/javascript">
|
||||
var local = window.localStorage;
|
||||
// 树形菜单
|
||||
$.fn.selectTree({
|
||||
rootTree: '全部',
|
||||
onSelected: function(treeNode){
|
||||
local.setItem('deptTitle', treeNode.name);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,29 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head th:replace="/common/template :: header(~{::title},~{::link},~{::style})">
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-form timo-compile">
|
||||
<form th:action="@{/system/user/pwd}">
|
||||
<input th:each="id:${idList}" type="hidden" name="ids" th:value="${id}"/>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">新密码</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="password" name="password" placeholder="请输入新密码">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">确认密码</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="password" name="confirm" placeholder="再一次输入密码">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item timo-finally">
|
||||
<button class="layui-btn ajax-submit"><i class="fa fa-check-circle"></i> 保存</button>
|
||||
<button class="layui-btn btn-secondary close-popup"><i class="fa fa-times-circle"></i> 关闭</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<script th:replace="/common/template :: script"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,39 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head th:replace="/common/template :: header(~{::title},~{::link},~{::style})">
|
||||
<style>
|
||||
.layui-input-block{
|
||||
margin-left: 20px;
|
||||
margin-right: 20px;
|
||||
margin-bottom: 70px;
|
||||
}
|
||||
.timo-compile .timo-finally{
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
padding-bottom: 14px;
|
||||
margin-bottom: 0;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-form timo-compile">
|
||||
<form th:action="@{/system/user/role}">
|
||||
<input type="hidden" name="id" th:value="${id}"/>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<input th:each="item:${list}" type="checkbox" name="roleId" th:title="${item.title}"
|
||||
th:value="${item.id}" th:checked="${#sets.contains(authRoles, item)}" lay-skin="primary">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item timo-finally">
|
||||
<button class="layui-btn ajax-submit"><i class="fa fa-check-circle"></i> 保存</button>
|
||||
<button class="layui-btn btn-secondary close-popup"><i class="fa fa-times-circle"></i> 关闭</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<script th:replace="/common/template :: script"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user