【sysUser】功能完善

pull/64/head
chenjinlong 2021-01-10 18:40:15 +08:00
parent e567f77da7
commit c3b48bc809
8 changed files with 148 additions and 113 deletions

View File

@ -96,7 +96,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
Feng.success("删除成功!"); Feng.success("删除成功!");
table.reload(Organization.tableId); table.reload(Organization.tableId);
}, function (data) { }, function (data) {
Feng.error("删除失败!" + data.responseJSON.message + "!"); Feng.error("删除失败!" + data.message + "!");
}); });
httpRequest.set(data); httpRequest.set(data);
httpRequest.start(true); httpRequest.start(true);
@ -111,7 +111,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
Feng.success("修改成功!"); Feng.success("修改成功!");
}, function (data) { }, function (data) {
table.reload(Organization.tableId); table.reload(Organization.tableId);
Feng.error("修改失败!" + data.responseJSON.message); Feng.error("修改失败!" + data.message);
}); });
httpRequest.set({"orgId": orgId, "statusFlag": checked}); httpRequest.set({"orgId": orgId, "statusFlag": checked});
httpRequest.start(true); httpRequest.start(true);

View File

@ -97,7 +97,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'util'], function () {
Feng.success("修改成功!"); Feng.success("修改成功!");
}, function (data) { }, function (data) {
table.reload(Position.tableId); table.reload(Position.tableId);
Feng.error("修改失败!" + data.responseJSON.message); Feng.error("修改失败!" + data.message);
}); });
httpRequest.set({"positionId": positionId, "statusFlag": checked}); httpRequest.set({"positionId": positionId, "statusFlag": checked});
httpRequest.start(true); httpRequest.start(true);

View File

@ -92,30 +92,22 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
} }
}; };
/** // 删除用户
* 点击删除用户按钮
*
* @param data 点击按钮时候的行数据
*/
MgrUser.onDeleteUser = function (data) { MgrUser.onDeleteUser = function (data) {
var operation = function () { var operation = function () {
var ajax = new $ax(Feng.ctxPath + "/mgr/delete", function () { var httpRequest = new HttpRequest(Feng.ctxPath + "/sysUser/delete", 'post', function (data) {
table.reload(MgrUser.tableId);
Feng.success("删除成功!"); Feng.success("删除成功!");
table.reload(MgrUser.tableId);
}, function (data) { }, function (data) {
Feng.error("删除失败!" + data.responseJSON.message + "!"); Feng.error("删除失败!" + data.message + "!");
}); });
ajax.set("userId", data.userId); httpRequest.set(data);
ajax.start(); httpRequest.start(true);
}; };
Feng.confirm("是否删除用户" + data.account + "?", operation); Feng.confirm("是否删除用户" + data.account + "?", operation);
}; };
/** // 分配角色
* 分配角色
*
* @param data 点击按钮时候的行数据
*/
MgrUser.roleAssign = function (data) { MgrUser.roleAssign = function (data) {
//获取多语言 //获取多语言
var langs = layui.data('system').lang; var langs = layui.data('system').lang;
@ -131,49 +123,32 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
}); });
}; };
/** // 重置密码
* 重置密码
*
* @param data 点击按钮时候的行数据
*/
MgrUser.resetPassword = function (data) { MgrUser.resetPassword = function (data) {
Feng.confirm("是否重置密码为" + $("#defaultPassword").val() + "?", function () { Feng.confirm("是否重置密码为" + $("#defaultPassword").val() + "?", function () {
var ajax = new $ax(Feng.ctxPath + "/mgr/reset", function (data) { var httpRequest = new HttpRequest(Feng.ctxPath + "/sysUser/resetPwd", 'post', function (data) {
Feng.success("重置密码成功!"); Feng.success("重置密码成功!");
table.reload(MgrUser.tableId);
}, function (data) { }, function (data) {
Feng.error("重置密码失败!" + data.responseJSON.message + "!"); Feng.error("重置密码失败!" + data.message + "!");
}); });
ajax.set("userId", data.userId); httpRequest.set(data);
ajax.start(); httpRequest.start(true);
}); });
}; };
/** // 修改用户状态
* 修改用户状态
*
* @param userId 用户id
* @param checked 是否选中true,false选中就是解锁用户未选中就是锁定用户
*/
MgrUser.changeUserStatus = function (userId, checked) { MgrUser.changeUserStatus = function (userId, checked) {
if (checked) {
var ajax = new $ax(Feng.ctxPath + "/mgr/unfreeze", function (data) { var httpRequest = new HttpRequest(Feng.ctxPath + "/sysUser/changeStatus", 'post', function (data) {
Feng.success("解除冻结成功!");
}, function (data) {
Feng.error("解除冻结失败!");
table.reload(MgrUser.tableId); table.reload(MgrUser.tableId);
}); Feng.success("修改成功!");
ajax.set("userId", userId);
ajax.start();
} else {
var ajax = new $ax(Feng.ctxPath + "/mgr/freeze", function (data) {
Feng.success("冻结成功!");
}, function (data) { }, function (data) {
Feng.error("冻结失败!" + data.responseJSON.message + "!");
table.reload(MgrUser.tableId); table.reload(MgrUser.tableId);
Feng.error("修改失败!" + data.message);
}); });
ajax.set("userId", userId); httpRequest.set({"userId": userId, "statusFlag": checked});
ajax.start(); httpRequest.start(true);
}
}; };
// 渲染表格 // 渲染表格
@ -239,7 +214,7 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
// 修改user状态 // 修改user状态
form.on('switch(status)', function (obj) { form.on('switch(status)', function (obj) {
var userId = obj.elem.value; var userId = obj.elem.value;
var checked = obj.elem.checked ? true : false; var checked = obj.elem.checked ? 1 : 2;
MgrUser.changeUserStatus(userId, checked); MgrUser.changeUserStatus(userId, checked);
}); });

View File

@ -8,7 +8,7 @@ var UserInfoDlg = {
} }
}; };
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], function () { layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects', 'xmSelect'], function () {
var $ = layui.jquery; var $ = layui.jquery;
var HttpRequest = layui.HttpRequest; var HttpRequest = layui.HttpRequest;
var form = layui.form; var form = layui.form;
@ -16,7 +16,8 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
var laydate = layui.laydate; var laydate = layui.laydate;
var layer = layui.layer; var layer = layui.layer;
var formSelects = layui.formSelects; var formSelects = layui.formSelects;
var xmSelect = layui.xmSelect;
var insXmSel;
// 点击部门时 // 点击部门时
$('#deptName').click(function () { $('#deptName').click(function () {
var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName"); var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName");
@ -35,6 +36,29 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
}); });
}); });
/* 渲染树形 */
function renderTree() {
$.get(Feng.ctxPath + '/hrOrganization/treeLayui', function (data) {
insXmSel = xmSelect.render({
el: '#organizationEditParentSel',
height: '250px',
data: data.data,
model: {label: {type: 'text'}},
prop: {name: 'title', value: 'id'},
radio: true,
clickClose: true,
tree: {
show: true,
indent: 15,
strict: false,
expandedKeys: true
}
});
});
}
renderTree();
// 添加表单验证方法 // 添加表单验证方法
form.verify({ form.verify({
psw: [/^[\S]{6,12}$/, '密码必须6到12位且不能出现空格'], psw: [/^[\S]{6,12}$/, '密码必须6到12位且不能出现空格'],
@ -52,29 +76,26 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
// 表单提交事件 // 表单提交事件
form.on('submit(btnSubmit)', function (data) { form.on('submit(btnSubmit)', function (data) {
var ajax = new $ax(Feng.ctxPath + "/mgr/add", function (data) {
Feng.success("添加成功!");
//传给上个页面刷新table用 //获取机构id
admin.putTempData('formOk', true); data.field.orgId = insXmSel.getValue('valueStr');
//关掉对话框 var request = new HttpRequest(Feng.ctxPath + "/sysUser/add", 'post', function (data) {
admin.closeThisDialog(); admin.closeThisDialog();
Feng.success("添加成功!");
admin.putTempData('formOk', true);
}, function (data) { }, function (data) {
Feng.error("添加失败!" + data.responseJSON.message) admin.closeThisDialog();
Feng.error("添加失败!" + data.message);
}); });
ajax.set(data.field); request.set(data.field);
ajax.start(); request.start(true);
//添加 return false 可成功跳转页面
return false;
}); });
//初始化所有的职位列表 //初始化所有的职位列表
formSelects.config('selPosition', { formSelects.config('selPosition', {
searchUrl: Feng.ctxPath + "/position/listPositions", searchUrl: Feng.ctxPath + "/hrPosition/list",
keyName: 'name', keyName: 'positionName',
keyVal: 'positionId' keyVal: 'positionId'
}); });
}); });

View File

@ -8,7 +8,7 @@ var UserInfoDlg = {
} }
}; };
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], function () { layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects', 'xmSelect'], function () {
var $ = layui.jquery; var $ = layui.jquery;
var HttpRequest = layui.HttpRequest; var HttpRequest = layui.HttpRequest;
var form = layui.form; var form = layui.form;
@ -16,31 +16,56 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
var laydate = layui.laydate; var laydate = layui.laydate;
var layer = layui.layer; var layer = layui.layer;
var formSelects = layui.formSelects; var formSelects = layui.formSelects;
var xmSelect = layui.xmSelect;
var insXmSel;
//获取信息详情填充表单 //获取信息详情填充表单
var request = new HttpRequest(Feng.ctxPath + "/sysUser/detail?userId=" + Feng.getUrlParam("userId"), 'get'); var request = new HttpRequest(Feng.ctxPath + "/sysUser/detail?userId=" + Feng.getUrlParam("userId"), 'get');
var result = request.start(); var result = request.start();
form.val('userForm', result.data); form.val('userForm', result.data);
renderTree(result.data.orgId);
// 点击部门时 // 点击部门时
$('#deptName').click(function () { // $('#deptName').click(function () {
var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName"); // var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName");
var formId = encodeURIComponent("parent.UserInfoDlg.data.deptId"); // var formId = encodeURIComponent("parent.UserInfoDlg.data.deptId");
var treeUrl = encodeURIComponent("/dept/tree"); // var treeUrl = encodeURIComponent("/dept/tree");
//
// layer.open({
// type: 2,
// title: '部门选择',
// area: ['300px', '400px'],
// content: Feng.ctxPath + '/system/commonTree?formName=' + formName + "&formId=" + formId + "&treeUrl=" + treeUrl,
// end: function () {
// console.log(UserInfoDlg.data);
// $("#deptId").val(UserInfoDlg.data.deptId);
// $("#deptName").val(UserInfoDlg.data.deptName);
// }
// });
// });
layer.open({ /* 渲染树形 */
type: 2, function renderTree(orgParentId) {
title: '部门选择', $.get(Feng.ctxPath + '/hrOrganization/treeLayui', function (data) {
area: ['300px', '400px'], insXmSel = xmSelect.render({
content: Feng.ctxPath + '/system/commonTree?formName=' + formName + "&formId=" + formId + "&treeUrl=" + treeUrl, el: '#organizationEditParentSel',
end: function () { height: '250px',
console.log(UserInfoDlg.data); data: data.data,
$("#deptId").val(UserInfoDlg.data.deptId); initValue: [orgParentId],
$("#deptName").val(UserInfoDlg.data.deptName); model: {label: {type: 'text'}},
prop: {name: 'title', value: 'id'},
radio: true,
clickClose: true,
tree: {
show: true,
indent: 15,
strict: false,
expandedKeys: true
} }
}); });
}); });
}
// 添加表单验证方法 // 添加表单验证方法
form.verify({ form.verify({
@ -78,9 +103,9 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
}); });
//初始化所有的职位列表 //初始化所有的职位列表
// formSelects.config('selPosition', { formSelects.config('selPosition', {
// searchUrl: Feng.ctxPath + "/position/listPositions?userId=" + $("#userId").val(), searchUrl: Feng.ctxPath + "/hrPosition/list",
// keyName: 'name', keyName: 'positionName',
// keyVal: 'positionId' keyVal: 'positionId'
// }); });
}); });

View File

@ -20,6 +20,7 @@
<div class="layui-card-body"> <div class="layui-card-body">
<div class="layui-form toolbar"> <div class="layui-form toolbar">
<input id="defaultPassword" class="layui-input" type="hidden" value="${constants.getDefaultPassWord()}"/>
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-inline"> <div class="layui-inline">
<input id="name" class="layui-input" type="text" placeholder=""/> <input id="name" class="layui-input" type="text" placeholder=""/>

View File

@ -16,13 +16,13 @@
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">姓名<span style="color: red;">*</span></label> <label class="layui-form-label">姓名<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input name="name" placeholder="请输入姓名" type="text" class="layui-input" lay-verify="required" required/> <input name="realName" placeholder="请输入姓名" type="text" class="layui-input" lay-verify="required" required/>
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">生日</label> <label class="layui-form-label">生日<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input id="birthday" name="birthday" placeholder="请输入生日" type="text" class="layui-input date-icon" autocomplete="off"/> <input id="birthday" name="birthday" placeholder="请输入生日" type="text" class="layui-input date-icon" autocomplete="off" lay-verify="required" required/>
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md6"> <div class="layui-inline layui-col-md6">
@ -51,9 +51,9 @@
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">电话</label> <label class="layui-form-label">电话<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input name="phone" placeholder="请输入电话" type="text" class="layui-input"/> <input name="phone" placeholder="请输入电话" type="text" class="layui-input" lay-verify="required" required/>
</div> </div>
</div> </div>
</div> </div>
@ -63,17 +63,23 @@
<div class="layui-card-header">职务信息</div> <div class="layui-card-header">职务信息</div>
<div class="layui-card-body"> <div class="layui-card-body">
<div class="layui-form-item layui-row"> <div class="layui-form-item layui-row">
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">部门<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input id="deptId" name="deptId" type="hidden">
<input id="deptName" name="deptName" placeholder="请输入部门" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">机构<span style="color: red;">*</span></label> <label class="layui-form-label">机构<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<select name="position" xm-select="selPosition"> <div id="organizationEditParentSel" class="ew-xmselect-tree"></div>
</div>
</div>
<!-- <div class="layui-inline layui-col-md12">-->
<!-- <label class="layui-form-label">机构<span style="color: red;">*</span></label>-->
<!-- <div class="layui-input-block">-->
<!-- <input id="deptId" name="deptId" type="hidden">-->
<!-- <input id="deptName" name="deptName" placeholder="请输入部门" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>-->
<!-- </div>-->
<!-- </div>-->
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">职位<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select name="positionId" xm-select="selPosition">
<option value="">请选择职位</option> <option value="">请选择职位</option>
</select> </select>
</div> </div>

View File

@ -20,7 +20,7 @@
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">出生日期</label> <label class="layui-form-label">出生日期<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input id="birthday" name="birthday" placeholder="请输入生日" type="text" class="layui-input date-icon" autocomplete="off"/> <input id="birthday" name="birthday" placeholder="请输入生日" type="text" class="layui-input date-icon" autocomplete="off"/>
</div> </div>
@ -39,9 +39,9 @@
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">电话</label> <label class="layui-form-label">电话<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input name="phone" placeholder="请输入电话" type="text" class="layui-input"/> <input name="phone" placeholder="请输入电话" type="text" class="layui-input" lay-verify="required" required/>
</div> </div>
</div> </div>
</div> </div>
@ -52,16 +52,23 @@
<div class="layui-card-body"> <div class="layui-card-body">
<div class="layui-form-item layui-row"> <div class="layui-form-item layui-row">
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">部门<span style="color: red;">*</span></label> <label class="layui-form-label">机构<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input id="deptId" name="deptId" type="hidden"> <div id="organizationEditParentSel" class="ew-xmselect-tree"></div>
<input id="deptName" name="deptName" placeholder="请输入部门" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>
</div> </div>
</div> </div>
<!-- <div class="layui-inline layui-col-md12">-->
<!-- <label class="layui-form-label">机构<span style="color: red;">*</span></label>-->
<!-- <div class="layui-input-block">-->
<!-- <input id="deptId" name="deptId" type="hidden">-->
<!-- <input id="deptName" name="deptName" placeholder="请输入部门" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>-->
<!-- </div>-->
<!-- </div>-->
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">职位<span style="color: red;">*</span></label> <label class="layui-form-label">职位<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<select name="position" id="position" xm-select="selPosition" lay-verify="required" required> <select name="positionId" xm-select="selPosition">
<option value="">请选择职位</option>
</select> </select>
</div> </div>
</div> </div>