242 lines
8.7 KiB
HTML
Raw Normal View History

2018-07-09 08:44:52 +08:00
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-user-add">
<input name="deptId" type="hidden" id="treeId"/>
<div class="form-group">
<label class="col-sm-3 control-label ">登录名称:</label>
<div class="col-sm-8">
<input class="form-control" type="text" id="loginName" name="loginName"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">部门名称:</label>
<div class="col-sm-8">
<input class="form-control" type="text" name="deptName" onclick="selectDeptTree()" readonly="true" id="treeName">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">用户名称:</label>
<div class="col-sm-8">
<input class="form-control" type="text" name="userName" id="userName">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">密码:</label>
<div class="col-sm-8">
2018-07-22 23:05:50 +08:00
<input class="form-control" type="password" name="password" id="password" th:value="${@config.getKey('sys.user.initPassword')}">
2018-07-09 08:44:52 +08:00
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">邮箱:</label>
<div class="col-sm-8">
<input class="form-control" type="text" name="email" id="email">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">手机:</label>
<div class="col-sm-8">
<input class="form-control" type="text" name="phonenumber" id="phonenumber">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">性别:</label>
<div class="col-sm-8">
2018-07-22 23:05:50 +08:00
<select id="sex" class="form-control m-b" th:with="type=${@dict.getType('sys_user_sex')}">
2018-08-23 17:06:31 +08:00
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
2018-07-09 08:44:52 +08:00
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">状态:</label>
<div class="col-sm-8">
<div class="onoffswitch">
<input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="status" name="status">
<label class="onoffswitch-label" for="status">
<span class="onoffswitch-inner"></span>
<span class="onoffswitch-switch"></span>
</label>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">岗位:</label>
<div class="col-sm-8">
<select id="post" name="post" class="form-control select2-hidden-accessible" multiple="">
2018-07-30 10:31:40 +08:00
<option th:each="post:${posts}" th:value="${post.postId}" th:text="${post.postName}" th:disabled="${post.status == '1'}"></option>
2018-07-09 08:44:52 +08:00
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">角色:</label>
<div class="col-sm-8">
2018-09-03 08:45:08 +08:00
<label th:each="role:${roles}" class="check-box">
2018-07-30 10:29:02 +08:00
<input name="role" type="checkbox" th:value="${role.roleId}" th:text="${role.roleName}" th:disabled="${role.status == '1'}">
2018-07-09 08:44:52 +08:00
</label>
</div>
</div>
<div class="form-group">
<div class="form-control-static col-sm-offset-9">
<button type="submit" class="btn btn-primary">提交</button>
<button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
</div>
</div>
</form>
</div>
<div th:include="include::footer"></div>
<script th:src="@{/ajax/libs/select/select2.js}"></script>
<script>
$("#form-user-add").validate({
rules:{
loginName:{
required:true,
minlength: 2,
maxlength: 20,
remote: {
url: ctx + "system/user/checkLoginNameUnique",
type: "post",
dataType: "json",
data: {
name : function() {
2018-08-23 17:06:31 +08:00
return $.common.trim($("#loginName").val());
2018-07-09 08:44:52 +08:00
}
},
dataFilter: function(data, type) {
2018-08-23 17:06:31 +08:00
return $.validate.unique(data);
2018-07-09 08:44:52 +08:00
}
}
},
userName:{
required:true,
},
deptName:{
required:true,
},
password:{
required:true,
minlength: 5,
maxlength: 20
},
email:{
required:true,
email:true,
remote: {
url: ctx + "system/user/checkEmailUnique",
type: "post",
dataType: "json",
data: {
name: function () {
2018-08-23 17:06:31 +08:00
return $.common.trim($("#email").val());
2018-07-09 08:44:52 +08:00
}
},
dataFilter: function (data, type) {
2018-08-23 17:06:31 +08:00
return $.validate.unique(data);
2018-07-09 08:44:52 +08:00
}
}
},
phonenumber:{
required:true,
isPhone:true,
remote: {
url: ctx + "system/user/checkPhoneUnique",
type: "post",
dataType: "json",
data: {
name: function () {
2018-08-23 17:06:31 +08:00
return $.common.trim($("#phonenumber").val());
2018-07-09 08:44:52 +08:00
}
},
dataFilter: function (data, type) {
2018-08-23 17:06:31 +08:00
return $.validate.unique(data);
2018-07-09 08:44:52 +08:00
}
}
},
},
messages: {
"loginName": {
remote: "用户已经存在"
},
"email": {
remote: "Email已经存在"
},
"phonenumber":{
remote: "手机号码已经存在"
}
},
submitHandler:function(form){
add();
}
});
function add() {
var userId = $("input[name='userId']").val();
var deptId = $("input[name='deptId']").val();
var loginName = $("input[name='loginName']").val();
var userName = $("input[name='userName']").val();
var password = $("input[name='password']").val();
var email = $("input[name='email']").val();
var phonenumber = $("input[name='phonenumber']").val();
var sex = $("#sex option:selected").val();
var status = $("input[name='status']").is(':checked') == true ? 0 : 1;
var roleIds = $.form.selectCheckeds("role");
var postIds = $.form.selectSelects("post");
$.ajax({
cache : true,
type : "POST",
2018-07-22 23:05:50 +08:00
url : ctx + "system/user/add",
2018-07-09 08:44:52 +08:00
data : {
"userId": userId,
"deptId": deptId,
"loginName": loginName,
"userName": userName,
"password": password,
"email": email,
"phonenumber": phonenumber,
"sex": sex,
"status": status,
"roleIds": roleIds,
"postIds": postIds
},
async : false,
error : function(request) {
$.modal.alertError("系统错误");
},
success : function(data) {
$.operate.saveSuccess(data);
}
});
}
/*用户管理-新增-选择部门树*/
function selectDeptTree() {
var treeId = $("#treeId").val();
2018-09-03 08:45:08 +08:00
var deptId = $.common.isEmpty(treeId) ? "100" : $("#treeId").val();
2018-07-09 08:44:52 +08:00
var url = ctx + "system/dept/selectDeptTree/" + deptId;
2018-09-03 08:45:08 +08:00
var options = {
title: '选择部门',
width: "380",
height: "380",
url: ctx + "system/dept/selectDeptTree/" + deptId,
callBack: doSubmit
};
$.modal.openOptions(options);
}
function doSubmit(index, layero){
var tree = layero.find("iframe")[0].contentWindow.$._tree;
if ($.tree.notAllowParents(tree)) {
var body = layer.getChildFrame('body', index);
$("#treeId").val(body.find('#treeId').val());
$("#treeName").val(body.find('#treeName').val());
layer.close(index);
}
}
2018-07-09 08:44:52 +08:00
</script>
</body>
</html>