用户管理

This commit is contained in:
Jimmy 2020-12-24 00:34:19 +08:00
parent 9c2e22aa18
commit bf7b2ab019
5 changed files with 204 additions and 2 deletions

View File

@ -0,0 +1,11 @@
using Abp.Application.Services.Dto;
using MineTec.ProManager.Entitys;
namespace MineTec.ProManager.UserInfo.Dto
{
public class GetAllUsers : PagedResultRequestDto
{
public string Account { get; set; } //用于账号搜索
public string UserName { get; set; } //用于用户名搜索
}
}

View File

@ -37,5 +37,18 @@ namespace MineTec.ProManager.UserInfo
Items = ObjectMapper.Map<List<UserInfoDto>>(userlist)
};
}
public async Task<PagedResultDto<UserInfoDto>> GetAllUsers(GetAllUsers input)
{
var query = base.CreateFilteredQuery(input).WhereIf(!string.IsNullOrEmpty(input.Account), t => t.Account.Contains(input.Account)).WhereIf(!string.IsNullOrEmpty(input.UserName), t => t.UserName.Contains(input.UserName));
var usercount = query.Count();
var userlist = query.ToList();
return new PagedResultDto<UserInfoDto>()
{
TotalCount = usercount,
Items = ObjectMapper.Map<List<UserInfoDto>>(userlist)
};
}
}
}

View File

@ -0,0 +1,8 @@
namespace MineTec.ProManager.Entitys
{
public enum Sex : byte
{
Female = 0,
Male = 1
}
}

View File

@ -198,8 +198,8 @@
"target": "_self",
"child": [
{
"title": "失效菜单",
"href": "page/404.html",
"title": "用户列表",
"href": "page/UserList.html",
"icon": "fa fa-superpowers",
"target": "_self"
},

170
Pages/page/UserList.html Normal file
View File

@ -0,0 +1,170 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="../lib/layui-v2.5.5/css/layui.css" media="all">
<link rel="stylesheet" href="../css/public.css" media="all">
</head>
<body>
<div class="layuimini-container">
<div class="layuimini-main">
<fieldset class="table-search-fieldset">
<legend>搜索信息</legend>
<div style="margin: 10px 10px 10px 10px">
<form class="layui-form layui-form-pane" action="">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">用户账号</label>
<div class="layui-input-inline">
<input type="text" name="username" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">用户名称</label>
<div class="layui-input-inline">
<input type="text" name="sex" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<button type="submit" class="layui-btn layui-btn-primary" lay-submit
lay-filter="data-search-btn"><i class="layui-icon"></i> 搜 索</button>
</div>
</div>
</form>
</div>
</fieldset>
<script type="text/html" id="toolbar">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add"> 添加 </button>
<button class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn" lay-event="delete"> 删除 </button>
</div>
</script>
<table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>
<script type="text/html" id="currentTableBar">
<a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>
</script>
</div>
</div>
<script src="../lib/layui-v2.5.5/layui.js" charset="utf-8"></script>
<script src="../js/PublicParameters/PublicParameters.js" charset="utf-8"></script>
<script>
layui.use(['form', 'table'], function () {
var $ = layui.jquery,
form = layui.form,
table = layui.table;
var apiUrl = GetWebApiUrl();
table.render({
elem: '#currentTableId',
url: apiUrl + '/api/services/app/UserInfo/GetAll',
toolbar: '#toolbar',
defaultToolbar: ['filter', 'exports', 'print'],
cols: [[
{ type: "checkbox", width: 50 },
{ field: 'id', width: 150, title: '工号', sort: true },
{ field: 'id', width: 150, title: '账号', sort: true },
{ field: 'username', width: 150, title: '用户名' },
{ field: 'sex', width: 150, title: '性别', sort: true },
{ field: 'city', width: 150, title: '部门' },
{ field: 'sign', width: 150, title: '岗位' },
{ field: 'experience', width: 150, title: '手机号' },
{ title: '操作', width: 150, toolbar: '#currentTableBar', align: "center" }
]],
limits: [10, 15, 20, 25, 50, 100],
limit: 20,
page: true,
skin: 'line'
});
// 监听搜索操作
form.on('submit(data-search-btn)', function (data) {
var result = JSON.stringify(data.field);
layer.alert(result, {
title: '最终的搜索信息'
});
//执行搜索重载
table.reload('currentTableId', {
page: {
curr: 1
}
, where: {
searchParams: result
}
}, 'data');
return false;
});
/**
* toolbar监听事件
*/
table.on('toolbar(currentTableFilter)', function (obj) {
if (obj.event === 'add') { // 监听添加操作
var index = layer.open({
title: '添加用户',
type: 2,
shade: 0.2,
maxmin: true,
shadeClose: true,
area: ['100%', '100%'],
content: '../page/table/add.html',
});
$(window).on("resize", function () {
layer.full(index);
});
} else if (obj.event === 'delete') { // 监听删除操作
var checkStatus = table.checkStatus('currentTableId')
, data = checkStatus.data;
layer.alert(JSON.stringify(data));
}
});
//监听表格复选框选择
table.on('checkbox(currentTableFilter)', function (obj) {
console.log(obj)
});
table.on('tool(currentTableFilter)', function (obj) {
var data = obj.data;
if (obj.event === 'edit') {
var index = layer.open({
title: '编辑用户',
type: 2,
shade: 0.2,
maxmin: true,
shadeClose: true,
area: ['100%', '100%'],
content: '../page/table/edit.html',
});
$(window).on("resize", function () {
layer.full(index);
});
return false;
} else if (obj.event === 'delete') {
layer.confirm('真的删除行么', function (index) {
obj.del();
layer.close(index);
});
}
});
});
</script>
</body>
</html>