Merge remote-tracking branch 'origin/group2-user'

pull/65/head
fengshuonan 2021-01-09 12:37:09 +08:00
commit faf00cf394
17 changed files with 278 additions and 177 deletions

View File

@ -13,7 +13,7 @@ import org.springframework.stereotype.Controller;
*/
@Controller
@Slf4j
@ApiResource(name = "职位管理相关的界面渲染", path = "organization")
@ApiResource(name = "职位管理相关的界面渲染", path = "/view/organization")
public class OrganizationViewController {
private String PREFIX = "/modular/system/organization";
@ -24,7 +24,7 @@ public class OrganizationViewController {
* @author chenjinlong
* @date 2020/11/04 11:07
*/
@GetResource(name = "机构管理-首页-视图", path = "", requiredPermission = false, requiredLogin = false)
@GetResource(name = "机构管理-首页-视图", path = "")
public String indexView() {
return PREFIX + "/organization.html";
}
@ -35,7 +35,7 @@ public class OrganizationViewController {
* @author chenjinlong
* @date 2020/11/04 11:07
*/
@GetResource(name = "机构管理—新增-视图", path = "/addView", requiredPermission = false, requiredLogin = false)
@GetResource(name = "机构管理—新增-视图", path = "/addView")
public String addView() {
return PREFIX + "/organization_add.html";
}
@ -46,7 +46,7 @@ public class OrganizationViewController {
* @author chenjinlong
* @date 2020/11/04 11:07
*/
@GetResource(name = "机构管理-修改-视图", path = "editView", requiredPermission = false, requiredLogin = false)
@GetResource(name = "机构管理-修改-视图", path = "editView")
public String editView() {
return PREFIX + "/organization_edit.html";
}

View File

@ -13,7 +13,7 @@ import org.springframework.stereotype.Controller;
*/
@Controller
@Slf4j
@ApiResource(name = "职位管理相关的界面渲染", path = "position")
@ApiResource(name = "职位管理相关的界面渲染", path = "/view/position")
public class PositionViewController {
private String PREFIX = "/modular/system/position";
@ -24,7 +24,7 @@ public class PositionViewController {
* @author chenjinlong
* @date 2020/11/04 11:07
*/
@GetResource(name = "职位管理-首页-视图", path = "", requiredPermission = false, requiredLogin = false)
@GetResource(name = "职位管理-首页-视图", path = "")
public String indexView() {
return PREFIX + "/position.html";
}
@ -35,7 +35,7 @@ public class PositionViewController {
* @author chenjinlong
* @date 2020/11/04 11:07
*/
@GetResource(name = "职位管理-首页-视图", path = "/addView", requiredPermission = false, requiredLogin = false)
@GetResource(name = "职位管理-首页-视图", path = "/addView")
public String addView() {
return PREFIX + "/position_add.html";
}
@ -46,7 +46,7 @@ public class PositionViewController {
* @author chenjinlong
* @date 2020/11/04 11:07
*/
@GetResource(name = "职位管理-首页-视图", path = "editView", requiredPermission = false, requiredLogin = false)
@GetResource(name = "职位管理-首页-视图", path = "editView")
public String editView() {
return PREFIX + "/position_edit.html";
}

View File

@ -0,0 +1,53 @@
package cn.stylefeng.guns.modular.user;
import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.resource.api.annotation.GetResource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
/**
*
*
* @author chenjinlong
* @date 2021/1/7 19:09
*/
@Controller
@Slf4j
@ApiResource(name = "用户管理界面渲染", path = "/view/user")
public class UserViewController {
private String PREFIX = "/modular/system/user";
/**
* --
*
* @author chenjinlong
* @date 2021/1/7 19:09
*/
@GetResource(name = "用户管理-首页-视图", path = "")
public String indexView() {
return PREFIX + "/user.html";
}
/**
* -
*
* @author chenjinlong
* @date 2021/1/7 19:09
*/
@GetResource(name = "用户管理—新增-视图", path = "/addView")
public String addView() {
return PREFIX + "/user_add.html";
}
/**
* __
*
* @author chenjinlong
* @date 2021/1/7 19:09
*/
@GetResource(name = "用户管理-修改-视图", path = "editView")
public String editView() {
return PREFIX + "/user_edit.html";
}
}

View File

@ -1,16 +1,40 @@
layui.use(['table', 'form', 'func', 'HttpRequest', 'xmSelect', 'util'], function () {
layui.use(['table', 'form', 'func', 'HttpRequest', 'tree', 'util'], function () {
var $ = layui.$;
var table = layui.table;
var form = layui.form;
var func = layui.func;
var HttpRequest = layui.HttpRequest;
var xmSelect = layui.xmSelect;
var tree = layui.tree;
// 职位表管理
var Organization = {
tableId: "organizationTable"
};
/* 渲染树形 */
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 [[
@ -40,7 +64,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'xmSelect', 'util'], function
func.open({
height: 800,
title: '添加机构',
content: Feng.ctxPath + '/hrOrganization/addView',
content: Feng.ctxPath + '/view/organization/addView',
tableId: Organization.tableId
});
};
@ -50,7 +74,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'xmSelect', 'util'], function
func.open({
height: 800,
title: '修改机构',
content: Feng.ctxPath + '/organization/editView?orgId=' + data.orgId,
content: Feng.ctxPath + '/view/organization/editView?orgId=' + data.orgId,
tableId: Organization.tableId
});
};
@ -68,24 +92,29 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'xmSelect', 'util'], function
// 点击删除
Organization.delete = function (data) {
var operation = function () {
ajaxUtil.post(Feng.ctxPath + "/hrOrganization/delete", {"orgId":data.positionId},function (data) {
var httpRequest = new HttpRequest(Feng.ctxPath + "/hrOrganization/delete", 'post', function (data) {
Feng.success("删除成功!");
table.reload(Organization.tableId);
},function (data) {
}, function (data) {
Feng.error("删除失败!" + data.responseJSON.message + "!");
});
httpRequest.set(data);
httpRequest.start(true);
};
Feng.confirm("是否删除?", operation);
};
// 修改职位状态
Organization.updateStatus = function (positionId, checked) {
ajaxUtil.post(Feng.ctxPath + "/hrOrganization/updateStatus", {"orgId":positionId,"statusFlag":checked},function (data) {
Feng.success("修改成功!");
},function (data) {
Feng.error("修改失败!" + data.responseJSON.message);
Organization.updateStatus = function (orgId, checked) {
var httpRequest = new HttpRequest(Feng.ctxPath + "/hrOrganization/updateStatus", 'post', function (data) {
table.reload(Organization.tableId);
Feng.success("修改成功!");
}, function (data) {
table.reload(Organization.tableId);
Feng.error("修改失败!" + data.responseJSON.message);
});
httpRequest.set({"orgId": orgId, "statusFlag": checked});
httpRequest.start(true);
};
// 渲染表格
@ -128,8 +157,8 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'xmSelect', 'util'], function
// 修改状态
form.on('switch(status)', function (obj) {
var positionId = obj.elem.value;
var orgId = obj.elem.value;
var checked = obj.elem.checked ? 1 : 2;
Organization.updateStatus(positionId, checked);
Organization.updateStatus(orgId, checked);
});
});

View File

@ -1,10 +1,38 @@
layui.use(['form', 'admin', 'HttpRequest'], function () {
layui.use(['form', 'admin', 'HttpRequest', 'xmSelect'], function () {
var $ = layui.$;
var form = layui.form;
var admin = layui.admin;
var HttpRequest = layui.HttpRequest;
var xmSelect = layui.xmSelect;
var insXmSel;
/* 渲染树形 */
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.on('submit(btnSubmit)', function (data) {
//获取机构id
data.field.orgParentId = insXmSel.getValue('valueStr');
var request = new HttpRequest(Feng.ctxPath + "/hrOrganization/add", 'post', function (data) {
admin.closeThisDialog();
Feng.success("添加成功!");

View File

@ -1,16 +1,45 @@
layui.use(['form', 'admin', 'HttpRequest'], function () {
layui.use(['form', 'admin', 'HttpRequest', 'xmSelect'], function () {
var $ = layui.$;
var form = layui.form;
var admin = layui.admin;
var HttpRequest = layui.HttpRequest;
var xmSelect = layui.xmSelect;
var insXmSel;
//获取信息详情填充表单
var request = new HttpRequest(Feng.ctxPath + "/hrOrganization/detail?orgId=" + Feng.getUrlParam("orgId"), 'get');
var result = request.start();
console.log(result);
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
}
});
});
}
//表单提交事件
form.on('submit(btnSubmit)', function (data) {
//获取机构id
data.field.orgParentId = insXmSel.getValue('valueStr');
var request = new HttpRequest(Feng.ctxPath + "/hrOrganization/edit", 'post', function (data) {
admin.closeThisDialog();
Feng.success("修改成功!");

View File

@ -50,7 +50,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'util'], function () {
func.open({
height: 800,
title: '添加职位',
content: Feng.ctxPath + '/position/addView',
content: Feng.ctxPath + '/view/position/addView',
tableId: Position.tableId
});
};
@ -60,7 +60,7 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'util'], function () {
func.open({
height: 800,
title: '修改职位',
content: Feng.ctxPath + '/position/editView?positionId=' + data.positionId,
content: Feng.ctxPath + '/view/position/editView?positionId=' + data.positionId,
tableId: Position.tableId
});
};
@ -93,10 +93,11 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'util'], function () {
// 修改职位状态
Position.updateStatus = function (positionId, checked) {
var httpRequest = new HttpRequest(Feng.ctxPath + "/hrPosition/updateStatus", 'post', function (data) {
table.reload(Position.tableId);
Feng.success("修改成功!");
}, function (data) {
Feng.error("修改失败!" + data.responseJSON.message);
table.reload(Position.tableId);
Feng.error("修改失败!" + data.responseJSON.message);
});
httpRequest.set({"positionId": positionId, "statusFlag": checked});
httpRequest.start(true);
@ -138,7 +139,6 @@ layui.use(['table', 'form', 'func', 'HttpRequest', 'util'], function () {
} else if (event === 'delete') {
Position.delete(data);
}
dropdown.hideAll();
});
// 修改状态

View File

@ -1,14 +1,11 @@
layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func', 'tree', 'util'], function () {
layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'HttpRequest', 'func', 'tree', 'util'], function () {
var layer = layui.layer;
var form = layui.form;
var table = layui.table;
var $ZTree = layui.ztree;
var $ax = layui.ax;
var HttpRequest = layui.HttpRequest;
var laydate = layui.laydate;
var admin = layui.admin;
var func = layui.func;
var tree = layui.tree;
var util = layui.util;
/**
* 系统管理--用户管理
@ -33,14 +30,14 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func',
return [[
{type: 'checkbox'},
{field: 'userId', hide: true, sort: true, title: '用户id'},
{field: 'account', align: "center", sort: true, title: langs.FIELD_ACCOUNT},
{field: 'name', align: "center", sort: true, title: langs.FIELD_NAME},
{field: 'deptName', align: "center", sort: true, title: langs.FIELD_DEPT},
{field: 'positionName', align: "center", sort: true, title: langs.FIELD_POST},
{field: 'phone', align: "center", sort: true, title: langs.FIELD_PHONE, minWidth: 117},
{field: 'createTime', align: "center", sort: true, title: langs.FIELD_CREATE_TIME, minWidth: 160},
{field: 'status', align: "center", sort: true, templet: '#statusTpl', title: langs.FIELD_STATUS},
{align: 'center', toolbar: '#tableBar', title: langs.FIELD_OPERATION, minWidth: 480}
{field: 'account', align: "center", sort: true, title: '账号'},
{field: 'realName', align: "center", sort: true, title: '姓名'},
{field: 'orgId', align: "center", sort: true, title: '机构'},
{field: 'positionId', align: "center", sort: true, title: '职务'},
{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}
]];
};
@ -65,34 +62,20 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func',
});
};
/**
* 弹出添加用户对话框
*/
// 添加按钮
MgrUser.openAddUser = function () {
//获取多语言
var langs = layui.data('system').lang;
func.open({
title: langs.TITLE_ADD_USER,
content: Feng.ctxPath + '/mgr/user_add',
title: '添加用户',
content: Feng.ctxPath + '/view/user/addView',
tableId: MgrUser.tableId
});
};
/**
* 点击编辑用户按钮时
*
* @param data 点击按钮时候的行数据
*/
// 修改按钮
MgrUser.onEditUser = function (data) {
//获取多语言
var langs = layui.data('system').lang;
func.open({
title: langs.TITLE_EDIT_USER,
content: Feng.ctxPath + '/mgr/user_edit?userId=' + data.userId,
title: '修改用户',
content: Feng.ctxPath + '/view/user/editView?userId=' + data.userId,
tableId: MgrUser.tableId
});
};
@ -134,7 +117,6 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func',
* @param data 点击按钮时候的行数据
*/
MgrUser.roleAssign = function (data) {
//获取多语言
var langs = layui.data('system').lang;
@ -197,11 +179,12 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func',
// 渲染表格
var tableResult = table.render({
elem: '#' + MgrUser.tableId,
url: Feng.ctxPath + '/mgr/list',
url: Feng.ctxPath + '/sysUser/page',
page: true,
height: "full-98",
cellMinWidth: 100,
cols: MgrUser.initColumn()
cols: MgrUser.initColumn(),
parseData: Feng.parseData
});
//渲染时间选择框
@ -212,16 +195,15 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func',
});
// 初始化部门树
var ajax = new $ax(Feng.ctxPath + "/dept/layuiTree", function (data) {
var request = new HttpRequest(Feng.ctxPath + '/hrOrganization/treeLayui', 'get', function (data) {
tree.render({
elem: '#deptTree',
data: data,
data: data.data,
click: MgrUser.onClickDept,
onlyIconControl: true
});
}, function (data) {
});
ajax.start();
request.start();
// 搜索按钮点击事件
$('#btnSearch').click(function () {
@ -256,10 +238,8 @@ layui.use(['layer', 'form', 'table', 'ztree', 'laydate', 'admin', 'ax', 'func',
// 修改user状态
form.on('switch(status)', function (obj) {
var userId = obj.elem.value;
var checked = obj.elem.checked ? true : false;
MgrUser.changeUserStatus(userId, checked);
});

View File

@ -8,9 +8,9 @@ var UserInfoDlg = {
}
};
layui.use(['layer', 'form', 'admin', 'laydate', 'ax', 'formSelects'], function () {
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], function () {
var $ = layui.jquery;
var $ax = layui.ax;
var HttpRequest = layui.HttpRequest;
var form = layui.form;
var admin = layui.admin;
var laydate = layui.laydate;

View File

@ -8,20 +8,21 @@ var UserInfoDlg = {
}
};
layui.use(['layer', 'form', 'admin', 'laydate', 'ax', 'formSelects'], function () {
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest', 'formSelects'], function () {
var $ = layui.jquery;
var $ax = layui.ax;
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 ajax = new $ax(Feng.ctxPath + "/mgr/getUserInfo?userId=" + Feng.getUrlParam("userId"));
var result = ajax.start();
//获取信息详情填充表单
var request = new HttpRequest(Feng.ctxPath + "/sysUser/detail?userId=" + Feng.getUrlParam("userId"), 'get');
var result = request.start();
form.val('userForm', result.data);
// 点击部门时
$('#deptName').click(function () {
var formName = encodeURIComponent("parent.UserInfoDlg.data.deptName");
@ -77,9 +78,9 @@ layui.use(['layer', 'form', 'admin', 'laydate', 'ax', 'formSelects'], function (
});
//初始化所有的职位列表
formSelects.config('selPosition', {
searchUrl: Feng.ctxPath + "/position/listPositions?userId=" + $("#userId").val(),
keyName: 'name',
keyVal: 'positionId'
});
// formSelects.config('selPosition', {
// searchUrl: Feng.ctxPath + "/position/listPositions?userId=" + $("#userId").val(),
// keyName: 'name',
// keyVal: 'positionId'
// });
});

View File

@ -1,7 +1,7 @@
@layout("/layout/_container.html",{js:["/assets/modular/system/organization/organization.js"]}){
<div class="layui-body-header">
<span class="layui-body-header-title">职位表管理</span>
<span class="layui-body-header-title">机构管理</span>
</div>
<div class="layui-fluid">
@ -10,18 +10,18 @@
<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">&#xe654;</i>添加-->
<!-- </button>&nbsp;-->
<!-- <button id="organizationEditBtn" class="layui-btn layui-btn-sm layui-btn-warm icon-btn">-->
<!-- <i class="layui-icon">&#xe642;</i>修改-->
<!-- </button>&nbsp;-->
<!-- <button id="organizationDelBtn"-->
<!-- class="layui-btn layui-btn-sm layui-btn-danger icon-btn">-->
<!-- <i class="layui-icon">&#xe640;</i>删除-->
<!-- </button>-->
<!-- </div>-->
<!-- <div class="layui-form toolbar" id="organizationTreeBar">-->
<!-- <button id="organizationAddBtn" class="layui-btn layui-btn-sm icon-btn">-->
<!-- <i class="layui-icon">&#xe654;</i>添加-->
<!-- </button>&nbsp;-->
<!-- <button id="organizationEditBtn" class="layui-btn layui-btn-sm layui-btn-warm icon-btn">-->
<!-- <i class="layui-icon">&#xe642;</i>修改-->
<!-- </button>&nbsp;-->
<!-- <button id="organizationDelBtn"-->
<!-- class="layui-btn layui-btn-sm layui-btn-danger icon-btn">-->
<!-- <i class="layui-icon">&#xe640;</i>删除-->
<!-- </button>-->
<!-- </div>-->
<!-- 左树 -->
<div id="organizationTree"></div>
</div>
@ -56,6 +56,6 @@
</script>
<script type="text/html" id="statusTpl">
<input type="checkbox" lay-filter="status" value="{{d.positionId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}} />
<input type="checkbox" lay-filter="status" value="{{d.orgId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}}/>
</script>
@}

View File

@ -6,8 +6,14 @@
<div class="layui-card-header">基本信息</div>
<div class="layui-card-body">
<div class="layui-form-item layui-row">
<input name="positionId" type="hidden"/>
<input name="orgId" type="hidden"/>
<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>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">机构名称<span style="color: red;">*</span></label>
<div class="layui-input-block">
@ -27,9 +33,9 @@
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">备注<span style="color: red;">*</span></label>
<label class="layui-form-label">备注</label>
<div class="layui-input-block">
<textarea id="orgRemark" name="orgRemark" placeholder="请输入备注" class="layui-textarea" lay-verify="required" required></textarea>
<textarea id="orgRemark" name="orgRemark" placeholder="请输入备注" class="layui-textarea"></textarea>
</div>
</div>
</div>

View File

@ -6,8 +6,14 @@
<div class="layui-card-header">基本信息</div>
<div class="layui-card-body">
<div class="layui-form-item layui-row">
<input name="positionId" type="hidden"/>
<input name="orgId" type="hidden"/>
<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>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">机构名称<span style="color: red;">*</span></label>
<div class="layui-input-block">
@ -27,9 +33,9 @@
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">备注<span style="color: red;">*</span></label>
<label class="layui-form-label">备注</label>
<div class="layui-input-block">
<textarea id="orgRemark" name="orgRemark" placeholder="请输入备注" class="layui-textarea" lay-verify="required" required></textarea>
<textarea id="orgRemark" name="orgRemark" placeholder="请输入备注" class="layui-textarea"></textarea>
</div>
</div>
</div>

View File

@ -1,7 +1,7 @@
@layout("/layout/_container.html",{js:["/assets/modular/system/position/position.js"]}){
<div class="layui-body-header">
<span class="layui-body-header-title">职位管理</span>
<span class="layui-body-header-title">职位管理</span>
</div>
<div class="layui-fluid">
@ -14,23 +14,10 @@
<div class="layui-inline">
<input id="positionName" class="layui-input" type="text" placeholder="职位名称"/>
</div>
<!-- <div class="layui-inline">-->
<!-- <input id="positionCode" class="layui-input" type="text" placeholder="职位编码"/>-->
<!-- </div>-->
<div class="layui-inline">
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
<button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>导出</button>
<!-- 下拉按钮 -->
<!-- <div class="dropdown-menu dropdown-hover">-->
<!-- <button class="layui-btn icon-btn" type="button">-->
<!-- &nbsp;更多 <i class="layui-icon layui-icon-drop"></i></button>-->
<!-- <ul class="dropdown-menu-nav">-->
<!-- <li><a><i class="layui-icon layui-icon-edit"></i>test1</a></li>-->
<!-- <li><a><i class="layui-icon layui-icon-delete"></i>test2</a></li>-->
<!-- <li><a><i class="layui-icon layui-icon-password"></i>test3</a></li>-->
<!-- </ul>-->
<!-- </div>-->
</div>
</div>
</div>
@ -44,20 +31,6 @@
<script type="text/html" id="tableBar">
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
<!-- <a class="layui-btn layui-btn-xs" data-dropdown="#userTbDrop{{d.LAY_INDEX}}" no-shade="true">更多<i class="layui-icon layui-icon-drop" style="font-size: 12px;margin-right: 0;"></i></a>-->
<!-- &lt;!&ndash; 下拉菜单 &ndash;&gt;-->
<!-- <ul class="dropdown-menu-nav dropdown-bottom-right layui-hide" id="userTbDrop{{d.LAY_INDEX}}">-->
<!-- <div class="dropdown-anchor"></div>-->
<!-- <li><a lay-event="lock"><i class="layui-icon layui-icon-password"></i>锁定用户</a></li>-->
<!-- <li><a lay-event="reset"><i class="layui-icon layui-icon-key"></i>重置密码</a></li>-->
<!-- <li class="have-more show-left">-->
<!-- <a><i class="layui-icon layui-icon-upload-drag"></i>上传资料&nbsp;&nbsp;</a>-->
<!-- <ul class="dropdown-menu-nav-child">-->
<!-- <li><a><i class="layui-icon layui-icon-camera"></i>上传头像</a></li>-->
<!-- <li><a><i class="layui-icon layui-icon-picture-fine"></i>上传照片</a></li>-->
<!-- </ul>-->
<!-- </li>-->
<!-- </ul>-->
</script>
<script type="text/html" id="statusTpl">

View File

@ -19,20 +19,18 @@
<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="name" class="layui-input" type="text" placeholder="${lang.get("TIPS_NAME_PHONE","//")}"/>
<input id="name" class="layui-input" type="text" placeholder=""/>
</div>
<div class="layui-inline">
<input id="timeLimit" class="layui-input" type="text" placeholder="${lang.get("TIPS_REG_TIME","")}"/>
<input id="timeLimit" class="layui-input" type="text" placeholder=""/>
</div>
<div class="layui-inline">
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>${lang.get("BTN_SEARCH","搜索")}</button>
@if(shiro.hasPermission("/mgr/add")){
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>${lang.get("BTN_ADD","添加")}</button>
@}
<button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>${lang.get("BTN_EXPORT","导出")}</button>
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
<button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>导出</button>
</div>
</div>
</div>
@ -46,21 +44,13 @@
</div>
<script type="text/html" id="tableBar">
@if(shiro.hasPermission("/mgr/edit")){
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">${lang.get("BTN_EDIT","编辑")}</a>
@}
@if(shiro.hasPermission("/mgr/delete")){
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">${lang.get("BTN_DELETE","删除")}</a>
@}
@if(shiro.hasPermission("/mgr/setRole")){
<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="roleAssign">${lang.get("BTN_ASSIGN_ROLES","分配角色")}</a>
@}
@if(shiro.hasPermission("/mgr/reset")){
<a class="layui-btn layui-btn-xs" lay-event="reset">${lang.get("BTN_RESET_PASSWORD","重置密码")}</a>
@}
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="roleAssign">分配角色</a>
<a class="layui-btn layui-btn-xs" lay-event="reset">重置密码</a>
</script>
<script type="text/html" id="statusTpl">
<input type="checkbox" lay-filter="status" value="{{d.userId}}" lay-skin="switch" lay-text="${lang.get("BTN_ACTIVE","")}|${lang.get("BTN_DISABLE","")}" {{d.status=='ENABLE'?'checked':''}} />
<input type="checkbox" lay-filter="status" value="{{d.userId}}" lay-skin="switch" lay-text="正常|锁定" {{d.statusFlag=='1'?'checked':''}} />
</script>
@}

View File

@ -3,55 +3,55 @@
<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-header">${lang.get("TITLE_BASE_INFO","基本信息")}</div>
<div class="layui-card-header">基本信息</div>
<div class="layui-card-body">
<div class="layui-form-item layui-row">
<input name="userId" type="hidden"/>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">${lang.get("FIELD_ACCOUNT","基本信息")}<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">${lang.get("FIELD_NAME","姓名")}<span style="color: red;">*</span></label>
<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">${lang.get("FIELD_BIRTHDAY","生日")}</label>
<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">${lang.get("FIELD_PASSWORD","密码")}<span style="color: red;">*</span></label>
<label class="layui-form-label">密码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input name="password" placeholder="请输入密码" type="password" class="layui-input" lay-verify="required|psw" autocomplete="new-password" required/>
</div>
</div>
<div class="layui-inline layui-col-md6">
<label class="layui-form-label">${lang.get("FIELD_REPEAT_PASSWORD","重复密码")}<span style="color: red;">*</span></label>
<label class="layui-form-label">重复密码<span style="color: red;">*</span></label>
<div class="layui-input-block">
<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">${lang.get("FIELD_EMAIL","邮件")}<span style="color: red;">*</span></label>
<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">${lang.get("FIELD_SEX","性别")}</label>
<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-md12">
<label class="layui-form-label">${lang.get("FIELD_PHONE","电话")}</label>
<label class="layui-form-label">电话</label>
<div class="layui-input-block">
<input name="phone" placeholder="请输入电话" type="text" class="layui-input"/>
</div>
@ -60,18 +60,18 @@
</div>
</div>
<div class="layui-card">
<div class="layui-card-header">${lang.get("TITLE_DUTY_INFO","职务信息")}</div>
<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">${lang.get("FIELD_DEPT","部门")}<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>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">${lang.get("FIELD_POST","职位")}<span style="color: red;">*</span></label>
<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>
@ -83,8 +83,8 @@
</div>
</div>
<div class="form-group-bottom text-center">
<button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;${lang.get("BTN_SUBMIT","提交")}&emsp;</button>
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;${lang.get("BTN_CANCEL","取消")}&emsp;</button>
<button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;取消&emsp;</button>
</div>
</form>

View File

@ -3,37 +3,43 @@
<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-header">${lang.get("TITLE_BASE_INFO","基本信息")}</div>
<div class="layui-card-header">基本信息</div>
<div class="layui-card-body">
<div class="layui-form-item layui-row">
<input name="userId" id="userId" type="hidden"/>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">${lang.get("FIELD_NAME","名称")}<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="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 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">${lang.get("FIELD_BIRTHDAY","出生日期")}</label>
<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-md12">
<label class="layui-form-label">${lang.get("FIELD_EMAIL","邮箱")}<span style="color: red;">*</span></label>
<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 />
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">${lang.get("FIELD_SEX","性别")}</label>
<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-md12">
<label class="layui-form-label">${lang.get("FIELD_PHONE","电话")}</label>
<label class="layui-form-label">电话</label>
<div class="layui-input-block">
<input name="phone" placeholder="请输入电话" type="text" class="layui-input"/>
</div>
@ -42,18 +48,18 @@
</div>
</div>
<div class="layui-card">
<div class="layui-card-header">${lang.get("TITLE_DUTY_INFO","职务信息")}</div>
<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">${lang.get("FIELD_DEPT","部门")}<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>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">${lang.get("FIELD_POST","职位")}<span style="color: red;">*</span></label>
<label class="layui-form-label">职位<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select name="position" id="position" xm-select="selPosition" lay-verify="required" required>
</select>
@ -64,8 +70,8 @@
</div>
</div>
<div class="form-group-bottom text-center">
<button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;${lang.get("BTN_SUBMIT","提交")}&emsp;</button>
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;${lang.get("BTN_CANCEL","取消")}&emsp;</button>
<button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
<button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;取消&emsp;</button>
</div>
</form>