mirror of https://gitee.com/stylefeng/guns
Merge branch 'master' of https://git.stylefeng.cn/guns-technology/guns-standalone-beetl into group1-dict
commit
4e15a3279f
|
@ -27,4 +27,15 @@ public class LogViewController {
|
|||
return "/modular/system/log/log.html";
|
||||
}
|
||||
|
||||
/**
|
||||
* 操作日志管理列表
|
||||
*
|
||||
* @author TSQ
|
||||
* @date 2021/1/5 15:18
|
||||
*/
|
||||
@GetResource(name = "日志详情页", path = "/view/logDetail")
|
||||
public String detailView() {
|
||||
return "/modular/system/log/log_detail.html";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -49,4 +49,15 @@ public class UserViewController {
|
|||
return "/modular/system/user/user_edit.html";
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户管理-角色-视图
|
||||
*
|
||||
* @author chenjinlong
|
||||
* @date 2021/1/7 19:09
|
||||
*/
|
||||
@GetResource(name = "用户管理-角色-视图", path = "/view/user/roleView")
|
||||
public String roleView() {
|
||||
return "/modular/system/user/user_role.html";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -18,14 +18,14 @@ layui.use(['HttpRequest', 'treeTable', 'laydate', 'func' ,'form'], function () {
|
|||
*/
|
||||
Log.initColumn = function () {
|
||||
return [[
|
||||
{type: 'checkbox'},
|
||||
{type: 'numbers'},
|
||||
{field: 'logId', hide: true, sort: true, title: 'id'},
|
||||
/*{field: 'logType', align: "center", sort: true, title: '日志类型'},*/
|
||||
{field: 'logName', align: "center", sort: true, title: '日志名称'},
|
||||
{field: 'createUser', align: "center", sort: true, title: '用户名称'},
|
||||
{field: 'appName', align: "center", sort: true, title: '服务器名'},
|
||||
{field: 'requestUrl', align: "center", sort: true, title: '方法名'},
|
||||
{field: 'createTime', align: "center", sort: true, title: '时间'},
|
||||
{field: 'clientIp', align: "center", sort: true, title: 'IP'},
|
||||
{field: 'requestUrl', align: "center", sort: true, title: '请求地址'},
|
||||
{field: 'createTime', align: "center", sort: true, title: '创建时间'},
|
||||
{field: 'logContent', align: "center", sort: true, title: '具体消息'},
|
||||
{align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 100}
|
||||
]];
|
||||
|
@ -60,40 +60,40 @@ layui.use(['HttpRequest', 'treeTable', 'laydate', 'func' ,'form'], function () {
|
|||
/**
|
||||
* 日志详情
|
||||
*/
|
||||
// Log.logDetail = function (param) {
|
||||
// var ajax = new $ax(Feng.ctxPath + "/log/detail/" + param.operationLogId, function (data) {
|
||||
// Feng.infoDetail("日志详情", data.regularMessage);
|
||||
// }, function (data) {
|
||||
// Feng.error("获取详情失败!");
|
||||
// });
|
||||
// ajax.start();
|
||||
// };
|
||||
Log.logDetail = function (data) {
|
||||
func.open({
|
||||
height: 800,
|
||||
title: '查看日志详情',
|
||||
content: Feng.ctxPath + '/view/logDetail?logId='+ data.logId,
|
||||
tableId: Log.tableId
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 清空日志
|
||||
*/
|
||||
// Log.cleanLog = function () {
|
||||
// Feng.confirm("是否清空所有日志?", function () {
|
||||
// var ajax = new $ax(Feng.ctxPath + "/log/delLog", function (data) {
|
||||
// Feng.success("清空日志成功!");
|
||||
// Log.search();
|
||||
// }, function (data) {
|
||||
// Feng.error("清空日志失败!");
|
||||
// });
|
||||
// ajax.start();
|
||||
// });
|
||||
// };
|
||||
Log.cleanLog = function (data) {
|
||||
var deleteLog = function () {
|
||||
var dataList = layui.table.cache["logTable"];
|
||||
var httpRequest = new HttpRequest(Feng.ctxPath + "/logManager/delete", 'post', function () {
|
||||
Feng.success("清空日志成功!");
|
||||
table.reload(Log.tableId);
|
||||
}, function (data) {
|
||||
Feng.error("清空日志失败!" + data.responseJSON.message + "!");
|
||||
});
|
||||
httpRequest.set("appName",dataList[0].appName);
|
||||
httpRequest.set("beginDateTime",dataList[dataList.length-1].createTime);
|
||||
httpRequest.set("endDateTime",dataList[0].createTime);
|
||||
httpRequest.start(true);
|
||||
};
|
||||
Feng.confirm("是否删除?", deleteLog);
|
||||
};
|
||||
|
||||
// 渲染时间选择框
|
||||
laydate.render({
|
||||
elem: '#createTime'
|
||||
});
|
||||
|
||||
// 渲染时间选择框
|
||||
// laydate.render({
|
||||
// elem: '#createTime'
|
||||
// });
|
||||
|
||||
// 渲染表格
|
||||
var tableResult = table.render({
|
||||
elem: '#' + Log.tableId,
|
||||
|
@ -111,18 +111,18 @@ layui.use(['HttpRequest', 'treeTable', 'laydate', 'func' ,'form'], function () {
|
|||
Log.search();
|
||||
});
|
||||
|
||||
// 搜索按钮点击事件
|
||||
// $('#btnClean').click(function () {
|
||||
// Log.cleanLog();
|
||||
// });
|
||||
//点击清空日志事件
|
||||
$('#btnClean').click(function () {
|
||||
Log.cleanLog();
|
||||
});
|
||||
|
||||
// 工具条点击事件
|
||||
// table.on('tool(' + Log.tableId + ')', function (obj) {
|
||||
// var data = obj.data;
|
||||
// var layEvent = obj.event;
|
||||
//
|
||||
// if (layEvent === 'detail') {
|
||||
// Log.logDetail(data);
|
||||
// }
|
||||
// });
|
||||
table.on('tool(' + Log.tableId + ')', function (obj) {
|
||||
var data = obj.data;
|
||||
var layEvent = obj.event;
|
||||
|
||||
if (layEvent === 'detail') {
|
||||
Log.logDetail(data);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
/**
|
||||
* 详情对话框
|
||||
*/
|
||||
var SysLogInfoDlg = {
|
||||
data: {
|
||||
logId: "",
|
||||
}
|
||||
};
|
||||
|
||||
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'iconPicker'], function () {
|
||||
var $ = layui.jquery;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var form = layui.form;
|
||||
|
||||
//获取菜单信息
|
||||
var request = new HttpRequest(Feng.ctxPath + "/logManager/detail?logId=" + Feng.getUrlParam("logId"), 'get');
|
||||
var sysLogResult = request.start();
|
||||
form.val('sysLogForm', sysLogResult.data);
|
||||
});
|
|
@ -1,40 +1,22 @@
|
|||
layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function () {
|
||||
var $ = layui.$;
|
||||
var table = layui.table;
|
||||
layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest', 'func', 'tree', 'util'], function () {
|
||||
var form = layui.form;
|
||||
var func = layui.func;
|
||||
var table = layui.table;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var func = layui.func;
|
||||
var tree = layui.tree;
|
||||
|
||||
// 职位表管理
|
||||
/**
|
||||
* 系统管理--用户管理
|
||||
*/
|
||||
var Organization = {
|
||||
tableId: "organizationTable"
|
||||
tableId: "userTable", //表格id
|
||||
condition: {
|
||||
orgName: "",
|
||||
orgParentId: "",
|
||||
orgCode: ""
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/* 渲染树形 */
|
||||
function renderTree() {
|
||||
$.get(Feng.ctxPath + '/hrOrganization/treeLayui', function (data) {
|
||||
tree.render({
|
||||
elem: '#organizationTree',
|
||||
onlyIconControl: true,
|
||||
data: data.data,
|
||||
click: function (rest) {
|
||||
$('#organizationTree').find('.ew-tree-click').removeClass('ew-tree-click');
|
||||
$(rest.elem).children('.layui-tree-entry').addClass('ew-tree-click');
|
||||
table.reload(Organization.tableId, {
|
||||
where: {organizationId: rest.data.id},
|
||||
page: {curr: 1}
|
||||
});
|
||||
}
|
||||
});
|
||||
$('#organizationTree').find('.layui-tree-entry:first>.layui-tree-main>.layui-tree-txt').trigger('click');
|
||||
});
|
||||
}
|
||||
|
||||
renderTree();
|
||||
|
||||
// 初始化表格的列
|
||||
Organization.initColumn = function () {
|
||||
return [[
|
||||
|
@ -49,13 +31,22 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
|
|||
]];
|
||||
};
|
||||
|
||||
// 选择部门时
|
||||
Organization.onClickDept = function (obj) {
|
||||
console.log(obj);
|
||||
Organization.condition.orgParentId = obj.data.id;
|
||||
Organization.search();
|
||||
};
|
||||
|
||||
|
||||
// 点击查询按钮
|
||||
Organization.search = function () {
|
||||
var queryData = {};
|
||||
queryData['orgParentId'] = Organization.condition.orgParentId;
|
||||
queryData['orgName'] = $("#orgName").val();
|
||||
queryData['orgCode'] = $("#orgCode").val();
|
||||
table.reload(Organization.tableId, {
|
||||
where: queryData,
|
||||
page: {curr: 1}
|
||||
where: queryData, page: {curr: 1}
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -96,7 +87,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
|
|||
Feng.success("删除成功!");
|
||||
table.reload(Organization.tableId);
|
||||
}, function (data) {
|
||||
Feng.error("删除失败!" + data.responseJSON.message + "!");
|
||||
Feng.error("删除失败!" + data.message + "!");
|
||||
});
|
||||
httpRequest.set(data);
|
||||
httpRequest.start(true);
|
||||
|
@ -111,7 +102,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
|
|||
Feng.success("修改成功!");
|
||||
}, function (data) {
|
||||
table.reload(Organization.tableId);
|
||||
Feng.error("修改失败!" + data.responseJSON.message);
|
||||
Feng.error("修改失败!" + data.message);
|
||||
});
|
||||
httpRequest.set({"orgId": orgId, "statusFlag": checked});
|
||||
httpRequest.start(true);
|
||||
|
@ -122,13 +113,23 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
|
|||
elem: '#' + Organization.tableId,
|
||||
url: Feng.ctxPath + '/hrOrganization/page',
|
||||
page: true,
|
||||
request: {pageName: 'pageNo', limitName: 'pageSize'}, //自定义分页参数
|
||||
height: "full-158",
|
||||
height: "full-98",
|
||||
cellMinWidth: 100,
|
||||
cols: Organization.initColumn(),
|
||||
parseData: Feng.parseData
|
||||
});
|
||||
|
||||
// 初始化部门树
|
||||
var request = new HttpRequest(Feng.ctxPath + '/hrOrganization/treeLayui', 'get', function (data) {
|
||||
tree.render({
|
||||
elem: '#deptTree',
|
||||
data: data.data,
|
||||
click: Organization.onClickDept,
|
||||
onlyIconControl: true
|
||||
});
|
||||
});
|
||||
request.start();
|
||||
|
||||
// 搜索按钮点击事件
|
||||
$('#btnSearch').click(function () {
|
||||
Organization.search();
|
||||
|
@ -161,4 +162,13 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function ()
|
|||
var checked = obj.elem.checked ? 1 : 2;
|
||||
Organization.updateStatus(orgId, checked);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$(function () {
|
||||
var panehHidden = false;
|
||||
if ($(this).width() < 769) {
|
||||
panehHidden = true;
|
||||
}
|
||||
$('#myContiner').layout({initClosed: panehHidden, west__size: 260});
|
||||
});
|
|
@ -4,35 +4,31 @@ layui.use(['form', 'admin', 'HttpRequest', 'xmSelect'], function () {
|
|||
var admin = layui.admin;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var insXmSel;
|
||||
var organizationXmSel;
|
||||
|
||||
/* 渲染树形 */
|
||||
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
|
||||
}
|
||||
});
|
||||
// 初始化组织树
|
||||
new HttpRequest(Feng.ctxPath + "/hrOrganization/treeLayui", 'get', function (data) {
|
||||
organizationXmSel = xmSelect.render({
|
||||
el: '#organization',
|
||||
data: data.data,
|
||||
model: {label: {type: 'text'}},
|
||||
prop: {name: 'title', value: 'id'},
|
||||
radio: true,
|
||||
layVerify: 'required',
|
||||
clickClose: true,
|
||||
tree: {
|
||||
show: true,
|
||||
indent: 15,
|
||||
strict: false,
|
||||
expandedKeys: true
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
renderTree();
|
||||
}).start();
|
||||
|
||||
//表单提交事件
|
||||
form.on('submit(btnSubmit)', function (data) {
|
||||
//获取机构id
|
||||
data.field.orgParentId = insXmSel.getValue('valueStr');
|
||||
data.field.orgParentId = organizationXmSel.getValue('valueStr');
|
||||
var request = new HttpRequest(Feng.ctxPath + "/hrOrganization/add", 'post', function (data) {
|
||||
admin.closeThisDialog();
|
||||
Feng.success("添加成功!");
|
||||
|
|
|
@ -4,41 +4,38 @@ layui.use(['form', 'admin', 'HttpRequest', 'xmSelect'], function () {
|
|||
var admin = layui.admin;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var insXmSel;
|
||||
var organizationXmSel;
|
||||
|
||||
//获取信息详情填充表单
|
||||
var request = new HttpRequest(Feng.ctxPath + "/hrOrganization/detail?orgId=" + Feng.getUrlParam("orgId"), 'get');
|
||||
var result = request.start();
|
||||
|
||||
form.val('organizationForm', result.data);
|
||||
renderTree(result.data.orgParentId);
|
||||
|
||||
/* 渲染树形 */
|
||||
function renderTree(orgParentId) {
|
||||
$.get(Feng.ctxPath + '/hrOrganization/treeLayui', function (data) {
|
||||
insXmSel = xmSelect.render({
|
||||
el: '#organizationEditParentSel',
|
||||
height: '250px',
|
||||
data: data.data,
|
||||
initValue: [orgParentId],
|
||||
model: {label: {type: 'text'}},
|
||||
prop: {name: 'title', value: 'id'},
|
||||
radio: true,
|
||||
clickClose: true,
|
||||
tree: {
|
||||
show: true,
|
||||
indent: 15,
|
||||
strict: false,
|
||||
expandedKeys: true
|
||||
}
|
||||
});
|
||||
// 初始化组织树
|
||||
new HttpRequest(Feng.ctxPath + "/hrOrganization/treeLayui", 'get', function (data) {
|
||||
organizationXmSel = xmSelect.render({
|
||||
el: '#organization',
|
||||
data: data.data,
|
||||
initValue: [result.data.orgId],
|
||||
layVerify: 'required',
|
||||
model: {label: {type: 'text'}},
|
||||
prop: {name: 'title', value: 'id'},
|
||||
radio: true,
|
||||
clickClose: true,
|
||||
tree: {
|
||||
show: true,
|
||||
indent: 15,
|
||||
strict: false,
|
||||
expandedKeys: true
|
||||
}
|
||||
});
|
||||
}
|
||||
}).start();
|
||||
|
||||
//表单提交事件
|
||||
form.on('submit(btnSubmit)', function (data) {
|
||||
//获取机构id
|
||||
data.field.orgParentId = insXmSel.getValue('valueStr');
|
||||
data.field.orgParentId = organizationXmSel.getValue('valueStr');
|
||||
|
||||
var request = new HttpRequest(Feng.ctxPath + "/hrOrganization/edit", 'post', function (data) {
|
||||
admin.closeThisDialog();
|
||||
|
|
|
@ -97,7 +97,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'util'], function () {
|
|||
Feng.success("修改成功!");
|
||||
}, function (data) {
|
||||
table.reload(Position.tableId);
|
||||
Feng.error("修改失败!" + data.responseJSON.message);
|
||||
Feng.error("修改失败!" + data.message);
|
||||
});
|
||||
httpRequest.set({"positionId": positionId, "statusFlag": checked});
|
||||
httpRequest.start(true);
|
||||
|
|
|
@ -13,9 +13,9 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
var MgrUser = {
|
||||
tableId: "userTable", //表格id
|
||||
condition: {
|
||||
name: "",
|
||||
deptId: "",
|
||||
timeLimit: ""
|
||||
realName: "",
|
||||
orgId: "",
|
||||
account: ""
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -25,7 +25,7 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
MgrUser.initColumn = function () {
|
||||
|
||||
//获取多语言
|
||||
var langs = layui.data('system').lang;
|
||||
//var langs = layui.data('system').lang;
|
||||
|
||||
return [[
|
||||
{type: 'checkbox'},
|
||||
|
@ -37,7 +37,7 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
{field: 'phone', align: "center", sort: true, title: '电话'},
|
||||
{field: 'createTime', align: "center", sort: true, title: '创建时间', minWidth: 160},
|
||||
{field: 'status', align: "center", sort: true, templet: '#statusTpl', title: '状态'},
|
||||
{align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 300}
|
||||
{align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 350}
|
||||
]];
|
||||
};
|
||||
|
||||
|
@ -45,7 +45,8 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
* 选择部门时
|
||||
*/
|
||||
MgrUser.onClickDept = function (obj) {
|
||||
MgrUser.condition.deptId = obj.data.id;
|
||||
console.log(obj);
|
||||
MgrUser.condition.orgId = obj.data.id;
|
||||
MgrUser.search();
|
||||
};
|
||||
|
||||
|
@ -54,9 +55,9 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
*/
|
||||
MgrUser.search = function () {
|
||||
var queryData = {};
|
||||
queryData['deptId'] = MgrUser.condition.deptId;
|
||||
queryData['name'] = $("#name").val();
|
||||
queryData['timeLimit'] = $("#timeLimit").val();
|
||||
queryData['orgId'] = MgrUser.condition.orgId;
|
||||
queryData['account'] = $("#account").val();
|
||||
queryData['realName'] = $("#realName").val();
|
||||
table.reload(MgrUser.tableId, {
|
||||
where: queryData, page: {curr: 1}
|
||||
});
|
||||
|
@ -92,88 +93,57 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 点击删除用户按钮
|
||||
*
|
||||
* @param data 点击按钮时候的行数据
|
||||
*/
|
||||
// 删除用户
|
||||
MgrUser.onDeleteUser = function (data) {
|
||||
var operation = function () {
|
||||
var ajax = new $ax(Feng.ctxPath + "/mgr/delete", function () {
|
||||
table.reload(MgrUser.tableId);
|
||||
var httpRequest = new HttpRequest(Feng.ctxPath + "/sysUser/delete", 'post', function (data) {
|
||||
Feng.success("删除成功!");
|
||||
table.reload(MgrUser.tableId);
|
||||
}, function (data) {
|
||||
Feng.error("删除失败!" + data.responseJSON.message + "!");
|
||||
Feng.error("删除失败!" + data.message + "!");
|
||||
});
|
||||
ajax.set("userId", data.userId);
|
||||
ajax.start();
|
||||
httpRequest.set(data);
|
||||
httpRequest.start(true);
|
||||
};
|
||||
Feng.confirm("是否删除用户" + data.account + "?", operation);
|
||||
};
|
||||
|
||||
/**
|
||||
* 分配角色
|
||||
*
|
||||
* @param data 点击按钮时候的行数据
|
||||
*/
|
||||
// 分配角色
|
||||
MgrUser.roleAssign = function (data) {
|
||||
//获取多语言
|
||||
var langs = layui.data('system').lang;
|
||||
|
||||
layer.open({
|
||||
type: 2,
|
||||
title: langs.TITLE_ROLE_ASSIGN,
|
||||
area: ['300px', '400px'],
|
||||
content: Feng.ctxPath + '/mgr/role_assign?userId=' + data.userId,
|
||||
end: function () {
|
||||
table.reload(MgrUser.tableId);
|
||||
}
|
||||
func.open({
|
||||
title: '授权角色',
|
||||
height: 470,
|
||||
content: Feng.ctxPath + '/view/user/roleView?userId=' + data.userId,
|
||||
tableId: MgrUser.tableId
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 重置密码
|
||||
*
|
||||
* @param data 点击按钮时候的行数据
|
||||
*/
|
||||
// 重置密码
|
||||
MgrUser.resetPassword = function (data) {
|
||||
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("重置密码成功!");
|
||||
table.reload(MgrUser.tableId);
|
||||
}, function (data) {
|
||||
Feng.error("重置密码失败!" + data.responseJSON.message + "!");
|
||||
Feng.error("重置密码失败!" + data.message + "!");
|
||||
});
|
||||
ajax.set("userId", data.userId);
|
||||
ajax.start();
|
||||
httpRequest.set(data);
|
||||
httpRequest.start(true);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改用户状态
|
||||
*
|
||||
* @param userId 用户id
|
||||
* @param checked 是否选中(true,false),选中就是解锁用户,未选中就是锁定用户
|
||||
*/
|
||||
// 修改用户状态
|
||||
MgrUser.changeUserStatus = function (userId, checked) {
|
||||
if (checked) {
|
||||
var ajax = new $ax(Feng.ctxPath + "/mgr/unfreeze", function (data) {
|
||||
Feng.success("解除冻结成功!");
|
||||
}, function (data) {
|
||||
Feng.error("解除冻结失败!");
|
||||
table.reload(MgrUser.tableId);
|
||||
});
|
||||
ajax.set("userId", userId);
|
||||
ajax.start();
|
||||
} else {
|
||||
var ajax = new $ax(Feng.ctxPath + "/mgr/freeze", function (data) {
|
||||
Feng.success("冻结成功!");
|
||||
}, function (data) {
|
||||
Feng.error("冻结失败!" + data.responseJSON.message + "!");
|
||||
table.reload(MgrUser.tableId);
|
||||
});
|
||||
ajax.set("userId", userId);
|
||||
ajax.start();
|
||||
}
|
||||
|
||||
var httpRequest = new HttpRequest(Feng.ctxPath + "/sysUser/changeStatus", 'post', function (data) {
|
||||
table.reload(MgrUser.tableId);
|
||||
Feng.success("修改成功!");
|
||||
}, function (data) {
|
||||
table.reload(MgrUser.tableId);
|
||||
Feng.error("修改失败!" + data.message);
|
||||
});
|
||||
httpRequest.set({"userId": userId, "statusFlag": checked});
|
||||
httpRequest.start(true);
|
||||
};
|
||||
|
||||
// 渲染表格
|
||||
|
@ -239,7 +209,7 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest',
|
|||
// 修改user状态
|
||||
form.on('switch(status)', function (obj) {
|
||||
var userId = obj.elem.value;
|
||||
var checked = obj.elem.checked ? true : false;
|
||||
var checked = obj.elem.checked ? 1 : 2;
|
||||
MgrUser.changeUserStatus(userId, checked);
|
||||
});
|
||||
|
||||
|
|
|
@ -1,38 +1,47 @@
|
|||
/**
|
||||
* 用户详情对话框
|
||||
*/
|
||||
var UserInfoDlg = {
|
||||
data: {
|
||||
deptId: "",
|
||||
deptName: ""
|
||||
}
|
||||
};
|
||||
|
||||
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], function () {
|
||||
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'xmSelect'], function () {
|
||||
var $ = layui.jquery;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var form = layui.form;
|
||||
var admin = layui.admin;
|
||||
var laydate = layui.laydate;
|
||||
var layer = layui.layer;
|
||||
var formSelects = layui.formSelects;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var organizationXmSel;
|
||||
var positionXmSel;
|
||||
|
||||
// 点击部门时
|
||||
$('#deptName').click(function () {
|
||||
var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName");
|
||||
var formId = encodeURIComponent("parent.UserInfoDlg.data.deptId");
|
||||
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 () {
|
||||
$("#deptId").val(UserInfoDlg.data.deptId);
|
||||
$("#deptName").val(UserInfoDlg.data.deptName);
|
||||
// 初始化组织树
|
||||
new HttpRequest(Feng.ctxPath + "/hrOrganization/treeLayui", 'get', function (data) {
|
||||
organizationXmSel = xmSelect.render({
|
||||
el: '#organization',
|
||||
data: data.data,
|
||||
model: {label: {type: 'text'}},
|
||||
prop: {name: 'title', value: 'id'},
|
||||
radio: true,
|
||||
layVerify: 'required',
|
||||
clickClose: true,
|
||||
tree: {
|
||||
show: true,
|
||||
indent: 15,
|
||||
strict: false,
|
||||
expandedKeys: true
|
||||
}
|
||||
});
|
||||
}).start();
|
||||
|
||||
// 初始化职位
|
||||
new HttpRequest(Feng.ctxPath + "/hrPosition/list", 'get', function (data) {
|
||||
positionXmSel = xmSelect.render({
|
||||
el: '#position',
|
||||
radio: true,
|
||||
layVerify: 'required',
|
||||
clickClose: true,
|
||||
data: data.data,
|
||||
prop: {name: 'positionName', value: 'positionId'},
|
||||
});
|
||||
}).start();
|
||||
|
||||
// 渲染时间选择框
|
||||
laydate.render({
|
||||
elem: '#birthday'
|
||||
});
|
||||
|
||||
// 添加表单验证方法
|
||||
|
@ -45,36 +54,23 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
|
|||
}
|
||||
});
|
||||
|
||||
// 渲染时间选择框
|
||||
laydate.render({
|
||||
elem: '#birthday'
|
||||
});
|
||||
|
||||
// 表单提交事件
|
||||
form.on('submit(btnSubmit)', function (data) {
|
||||
var ajax = new $ax(Feng.ctxPath + "/mgr/add", function (data) {
|
||||
Feng.success("添加成功!");
|
||||
|
||||
//传给上个页面,刷新table用
|
||||
admin.putTempData('formOk', true);
|
||||
// 获取机构id
|
||||
data.field.orgId = organizationXmSel.getValue('valueStr');
|
||||
// 职位id
|
||||
data.field.positionId = positionXmSel.getValue('valueStr');
|
||||
|
||||
//关掉对话框
|
||||
var request = new HttpRequest(Feng.ctxPath + "/sysUser/add", 'post', function (data) {
|
||||
admin.closeThisDialog();
|
||||
|
||||
Feng.success("添加成功!");
|
||||
admin.putTempData('formOk', true);
|
||||
}, function (data) {
|
||||
Feng.error("添加失败!" + data.responseJSON.message)
|
||||
admin.closeThisDialog();
|
||||
Feng.error("添加失败!" + data.message);
|
||||
});
|
||||
ajax.set(data.field);
|
||||
ajax.start();
|
||||
|
||||
//添加 return false 可成功跳转页面
|
||||
return false;
|
||||
});
|
||||
|
||||
//初始化所有的职位列表
|
||||
formSelects.config('selPosition', {
|
||||
searchUrl: Feng.ctxPath + "/position/listPositions",
|
||||
keyName: 'name',
|
||||
keyVal: 'positionId'
|
||||
request.set(data.field);
|
||||
request.start(true);
|
||||
});
|
||||
});
|
|
@ -1,46 +1,52 @@
|
|||
/**
|
||||
* 用户详情对话框
|
||||
*/
|
||||
var UserInfoDlg = {
|
||||
data: {
|
||||
deptId: "",
|
||||
deptName: ""
|
||||
}
|
||||
};
|
||||
|
||||
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], function () {
|
||||
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'xmSelect'], function () {
|
||||
var $ = layui.jquery;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var form = layui.form;
|
||||
var admin = layui.admin;
|
||||
var laydate = layui.laydate;
|
||||
var layer = layui.layer;
|
||||
var formSelects = layui.formSelects;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var organizationXmSel;
|
||||
var positionXmSel;
|
||||
|
||||
//获取信息详情填充表单
|
||||
var request = new HttpRequest(Feng.ctxPath + "/sysUser/detail?userId=" + Feng.getUrlParam("userId"), 'get');
|
||||
var result = request.start();
|
||||
form.val('userForm', result.data);
|
||||
|
||||
// 初始化职位
|
||||
new HttpRequest(Feng.ctxPath + "/hrPosition/list", 'get', function (data) {
|
||||
positionXmSel = xmSelect.render({
|
||||
el: '#position',
|
||||
radio: true,
|
||||
clickClose: true,
|
||||
layVerify: 'required',
|
||||
data: data.data,
|
||||
initValue: [result.data.positionId],
|
||||
prop: {name: 'positionName', value: 'positionId'},
|
||||
});
|
||||
}).start();
|
||||
|
||||
// 点击部门时
|
||||
$('#deptName').click(function () {
|
||||
var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName");
|
||||
var formId = encodeURIComponent("parent.UserInfoDlg.data.deptId");
|
||||
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);
|
||||
// 初始化组织树
|
||||
new HttpRequest(Feng.ctxPath + "/hrOrganization/treeLayui", 'get', function (data) {
|
||||
organizationXmSel = xmSelect.render({
|
||||
el: '#organization',
|
||||
data: data.data,
|
||||
initValue: [result.data.orgId],
|
||||
layVerify: 'required',
|
||||
model: {label: {type: 'text'}},
|
||||
prop: {name: 'title', value: 'id'},
|
||||
radio: true,
|
||||
clickClose: true,
|
||||
tree: {
|
||||
show: true,
|
||||
indent: 15,
|
||||
strict: false,
|
||||
expandedKeys: true
|
||||
}
|
||||
});
|
||||
});
|
||||
}).start();
|
||||
|
||||
|
||||
// 添加表单验证方法
|
||||
form.verify({
|
||||
|
@ -59,28 +65,22 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], f
|
|||
|
||||
// 表单提交事件
|
||||
form.on('submit(btnSubmit)', function (data) {
|
||||
var ajax = new $ax(Feng.ctxPath + "/mgr/edit", function (data) {
|
||||
Feng.success("修改成功!");
|
||||
// 获取机构id
|
||||
data.field.orgId = organizationXmSel.getValue('valueStr');
|
||||
// 职位id
|
||||
data.field.positionId = positionXmSel.getValue('valueStr');
|
||||
|
||||
//传给上个页面,刷新table用
|
||||
admin.putTempData('formOk', true);
|
||||
|
||||
//关掉对话框
|
||||
var request = new HttpRequest(Feng.ctxPath + "/sysUser/edit", 'post', function (data) {
|
||||
admin.closeThisDialog();
|
||||
|
||||
Feng.success("修改成功!");
|
||||
admin.putTempData('formOk', true);
|
||||
}, function (data) {
|
||||
Feng.error("修改失败!" + data.responseJSON.message)
|
||||
admin.closeThisDialog();
|
||||
Feng.error("修改失败!" + data.message);
|
||||
});
|
||||
ajax.set(data.field);
|
||||
ajax.start();
|
||||
//添加 return false 可成功跳转页面
|
||||
return false;
|
||||
request.set(data.field);
|
||||
request.start(true);
|
||||
});
|
||||
|
||||
//初始化所有的职位列表
|
||||
// formSelects.config('selPosition', {
|
||||
// searchUrl: Feng.ctxPath + "/position/listPositions?userId=" + $("#userId").val(),
|
||||
// keyName: 'name',
|
||||
// keyVal: 'positionId'
|
||||
// });
|
||||
|
||||
});
|
|
@ -0,0 +1,45 @@
|
|||
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'xmSelect'], function () {
|
||||
var $ = layui.jquery;
|
||||
var HttpRequest = layui.HttpRequest;
|
||||
var form = layui.form;
|
||||
var admin = layui.admin;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var roleXmSel;
|
||||
|
||||
//获取信息详情填充表单
|
||||
var request = new HttpRequest(Feng.ctxPath + "/sysUser/detail?userId=" + Feng.getUrlParam("userId"), 'get');
|
||||
var result = request.start();
|
||||
form.val('userForm', result.data);
|
||||
|
||||
console.log(result.data.grantRoleIdList);
|
||||
// 初始化角色
|
||||
new HttpRequest(Feng.ctxPath + "/sysRole/dropDown", 'get', function (data) {
|
||||
roleXmSel = xmSelect.render({
|
||||
el: '#role',
|
||||
toolbar: {show: true},
|
||||
layVerify: 'required',
|
||||
initValue: result.data.grantRoleIdList,
|
||||
data: data.data,
|
||||
prop: {name: 'name', value: 'id'},
|
||||
});
|
||||
}).start();
|
||||
|
||||
// 表单提交事件
|
||||
form.on('submit(btnSubmit)', function (data) {
|
||||
// 角色ids
|
||||
console.log(Feng.getUrlParam("userId"));
|
||||
data.field.grantRoleIdList = roleXmSel.getValue('value');
|
||||
data.field.userId = Feng.getUrlParam("userId");
|
||||
|
||||
var request = new HttpRequest(Feng.ctxPath + "/sysUser/grantRole", 'post', function (data) {
|
||||
admin.closeThisDialog();
|
||||
Feng.success("授权成功!");
|
||||
admin.putTempData('formOk', true);
|
||||
}, function (data) {
|
||||
admin.closeThisDialog();
|
||||
Feng.error("授权失败!" + data.message);
|
||||
});
|
||||
request.set(data.field);
|
||||
request.start(true);
|
||||
});
|
||||
});
|
|
@ -0,0 +1,125 @@
|
|||
@layout("/layout/_container.html",{js:["/assets/modular/system/log/log_deatil.js"]}){
|
||||
|
||||
<div class="layui-body-header">
|
||||
<span class="layui-body-header-title">日志详情</span>
|
||||
</div>
|
||||
<form class="layui-form" id="sysLogForm" lay-filter="sysLogForm">
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-row layui-col-space15">
|
||||
<div class="layui-col-sm12 layui-col-md12 layui-col-lg12">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-form-item layui-row">
|
||||
|
||||
<input name="logId" type="hidden" disabled readonly class="layui-input layui-disabled"/>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">日志名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="logName" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">具体内容</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="logContent" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">服务器名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="appName" placeholder="资源名称" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">请求地址</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="requestUrl" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">请求参数</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="requestParams" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">返回参数</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="requestResult" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">当前服务IP</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="serverIp" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">请求服务器IP</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="clientIp" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">用户ID</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="userId" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">请求Http方式</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="httpMethod" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">浏览器标识</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="clientBrowser" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">客户操作系统</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="clientOs" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">创建时间</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="createTime" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">创建人</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="createUser" type="text" disabled readonly class="layui-input layui-disabled"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="form-group-bottom text-center" style="z-index: 200">
|
||||
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog"> 关闭 </button>
|
||||
</div>
|
||||
@}
|
|
@ -1,49 +1,43 @@
|
|||
@layout("/layout/_container.html",{js:["/assets/modular/system/organization/organization.js"]}){
|
||||
@layout("/layout/_tree_container.html",{plugins:["ztree"],js:["/assets/modular/system/organization/organization.js"]}){
|
||||
|
||||
<div class="layui-body-header">
|
||||
<span class="layui-body-header-title">机构管理</span>
|
||||
</div>
|
||||
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-row layui-col-space15">
|
||||
<div class="layui-col-md3">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body" style="padding: 10px;">
|
||||
<!-- 树工具栏 -->
|
||||
<!-- <div class="layui-form toolbar" id="organizationTreeBar">-->
|
||||
<!-- <button id="organizationAddBtn" class="layui-btn layui-btn-sm icon-btn">-->
|
||||
<!-- <i class="layui-icon"></i>添加-->
|
||||
<!-- </button> -->
|
||||
<!-- <button id="organizationEditBtn" class="layui-btn layui-btn-sm layui-btn-warm icon-btn">-->
|
||||
<!-- <i class="layui-icon"></i>修改-->
|
||||
<!-- </button> -->
|
||||
<!-- <button id="organizationDelBtn"-->
|
||||
<!-- class="layui-btn layui-btn-sm layui-btn-danger icon-btn">-->
|
||||
<!-- <i class="layui-icon"></i>删除-->
|
||||
<!-- </button>-->
|
||||
<!-- </div>-->
|
||||
<!-- 左树 -->
|
||||
<div id="organizationTree"></div>
|
||||
</div>
|
||||
<div id="myContiner" style="height: 100%">
|
||||
<div class="ui-layout-west">
|
||||
<div class="box box-main">
|
||||
<div class="ui-layout-content">
|
||||
<div id="deptTree"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md9">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body" style="padding: 10px;">
|
||||
<div class="layui-form toolbar">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<input id="orgName" class="layui-input" type="text" placeholder="机构名称"/>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon"></i>搜索</button>
|
||||
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon"></i>添加</button>
|
||||
<button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon"></i>导出</button>
|
||||
</div>
|
||||
<div class="ui-layout-center">
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-row">
|
||||
<div class="layui-col-md12">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-form toolbar">
|
||||
|
||||
<input id="defaultPassword" class="layui-input" type="hidden" value="${constants.getDefaultPassWord()}"/>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<input id="orgName" class="layui-input" type="text" placeholder="组织名称"/>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<input id="orgCode" class="layui-input" type="text" placeholder="组织编码"/>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon"></i>搜索</button>
|
||||
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon"></i>添加</button>
|
||||
<button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon"></i>导出</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<table class="layui-table" id="userTable" lay-filter="userTable"></table>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 数据表格 -->
|
||||
<table id="organizationTable" lay-filter="organizationTable"></table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -56,6 +50,6 @@
|
|||
</script>
|
||||
|
||||
<script type="text/html" id="statusTpl">
|
||||
<input type="checkbox" lay-filter="status" value="{{d.orgId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}}/>
|
||||
<input type="checkbox" lay-filter="status" value="{{d.userId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}}/>
|
||||
</script>
|
||||
@}
|
|
@ -11,7 +11,7 @@
|
|||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">上级机构<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<div id="organizationEditParentSel" class="ew-xmselect-tree"></div>
|
||||
<div id="organization" class="ew-xmselect-tree"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">上级机构<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<div id="organizationEditParentSel" class="ew-xmselect-tree"></div>
|
||||
<div id="organization" class="ew-xmselect-tree"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
|
|
|
@ -20,12 +20,13 @@
|
|||
<div class="layui-card-body">
|
||||
<div class="layui-form toolbar">
|
||||
|
||||
<input id="defaultPassword" class="layui-input" type="hidden" value="${constants.getDefaultPassWord()}"/>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<input id="name" class="layui-input" type="text" placeholder=""/>
|
||||
<input id="account" class="layui-input" type="text" placeholder="账号"/>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<input id="timeLimit" class="layui-input" type="text" placeholder=""/>
|
||||
<input id="realName" class="layui-input" type="text" placeholder="姓名"/>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon"></i>搜索</button>
|
||||
|
@ -51,6 +52,6 @@
|
|||
</script>
|
||||
|
||||
<script type="text/html" id="statusTpl">
|
||||
<input type="checkbox" lay-filter="status" value="{{d.userId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}} />
|
||||
<input type="checkbox" lay-filter="status" value="{{d.userId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}}/>
|
||||
</script>
|
||||
@}
|
|
@ -8,23 +8,11 @@
|
|||
<div class="layui-form-item layui-row">
|
||||
<input name="userId" type="hidden"/>
|
||||
<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">
|
||||
<input name="account" placeholder="请输入账号" type="text" class="layui-input" lay-verify="required" required/>
|
||||
</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 name="name" placeholder="请输入姓名" type="text" class="layui-input" lay-verify="required" required/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">生日</label>
|
||||
<div class="layui-input-block">
|
||||
<input id="birthday" name="birthday" placeholder="请输入生日" type="text" class="layui-input date-icon" autocomplete="off"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">密码<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
|
@ -37,12 +25,6 @@
|
|||
<input name="rePassword" placeholder="请输入重复密码" type="password" class="layui-input" autocomplete="new-password" lay-verify="required|repsw" required/>
|
||||
</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 name="email" placeholder="请输入邮箱" type="text" class="layui-input" lay-verify="required|email" autocomplete="off" required/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">性别</label>
|
||||
<div class="layui-input-block">
|
||||
|
@ -50,10 +32,36 @@
|
|||
<input type="radio" name="sex" value="F" title="女"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">电话</label>
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">名称<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<input name="phone" placeholder="请输入电话" type="text" class="layui-input"/>
|
||||
<input name="realName" placeholder="请输入姓名" type="text" class="layui-input" lay-verify="required" required/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">昵称</label>
|
||||
<div class="layui-input-block">
|
||||
<input name="nickName" placeholder="请输入昵称" type="text" class="layui-input" lay-verify="required" required/>
|
||||
</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="birthday" name="birthday" placeholder="请输入生日" type="text" class="layui-input date-icon" autocomplete="off" lay-verify="required" required/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">邮件<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<input name="email" placeholder="请输入邮箱" type="text" class="layui-input" lay-verify="required|email" autocomplete="off" required/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">电话<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<input name="phone" placeholder="请输入电话" type="text" class="layui-input" lay-verify="required" required/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -63,19 +71,23 @@
|
|||
<div class="layui-card-header">职务信息</div>
|
||||
<div class="layui-card-body">
|
||||
<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">
|
||||
<label class="layui-form-label">机构<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<select name="position" xm-select="selPosition">
|
||||
<option value="">请选择职位</option>
|
||||
</select>
|
||||
<div id="organization" 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">
|
||||
<div id="position" class="xm-select-demo"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -7,6 +7,15 @@
|
|||
<div class="layui-card-body">
|
||||
<div class="layui-form-item layui-row">
|
||||
<input name="userId" id="userId" type="hidden"/>
|
||||
|
||||
<input name="account" id="account" type="hidden"/>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">性别</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="radio" name="sex" value="M" title="男" checked/>
|
||||
<input type="radio" name="sex" value="F" title="女"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">名称<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
|
@ -20,28 +29,22 @@
|
|||
</div>
|
||||
</div>
|
||||
<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">
|
||||
<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 class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">邮箱<span style="color: red;">*</span></label>
|
||||
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">邮件<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<input name="email" placeholder="请输入邮箱" type="text" class="layui-input" lay-verify="required|email" required />
|
||||
<input name="email" placeholder="请输入邮箱" type="text" class="layui-input" lay-verify="required|email" autocomplete="off" required/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">性别</label>
|
||||
<div class="layui-inline layui-col-md6">
|
||||
<label class="layui-form-label">电话<span style="color: red;">*</span></label>
|
||||
<div class="layui-input-block">
|
||||
<input type="radio" name="sex" value="M" title="男" checked/>
|
||||
<input type="radio" name="sex" value="F" title="女"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline layui-col-md12">
|
||||
<label class="layui-form-label">电话</label>
|
||||
<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>
|
||||
|
@ -52,17 +55,23 @@
|
|||
<div class="layui-card-body">
|
||||
<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>
|
||||
<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 id="organization" 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 id="demo1" class="xm-select-demo"></div>
|
||||
<div class="layui-input-block">
|
||||
<select name="position" id="position" xm-select="selPosition" lay-verify="required" required>
|
||||
</select>
|
||||
<div id="position" class="xm-select-demo"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
@layout("/layout/_form.html",{js:["/assets/modular/system/user/user_role.js"]}){
|
||||
|
||||
<form class="layui-form" id="userForm" lay-filter="userForm">
|
||||
<div class="layui-fluid" style="padding-bottom: 75px;">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<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 id="demo1" class="xm-select-demo"></div>
|
||||
<div class="layui-input-block">
|
||||
<div id="role" class="xm-select-demo"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group-bottom text-center">
|
||||
<button class="layui-btn" lay-filter="btnSubmit" lay-submit> 提交 </button>
|
||||
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog"> 取消 </button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
@}
|
Loading…
Reference in New Issue