add.html 3.9 KB
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
	<th:block th:include="include :: header('新增前端用户角色')" />
	<th:block th:include="include :: ztree-css" />
</head>
<body class="white-bg">
    <div class="wrapper wrapper-content animated fadeInRight ibox-content">
        <form class="form-horizontal m" id="form-frontRole-add">
			<div class="form-group">	
				<label class="col-sm-3 control-label">角色名称:</label>
				<div class="col-sm-8">
					<input id="roleName" name="roleName" class="form-control" type="text">
				</div>
			</div>
			<div class="form-group">	
				<label class="col-sm-3 control-label">角色权限字符串:</label>
				<div class="col-sm-8">
					<input id="roleKey" name="roleKey" class="form-control" type="text">
				</div>
			</div>
			<div class="form-group">	
				<label class="col-sm-3 control-label">显示顺序:</label>
				<div class="col-sm-8">
					<input id="roleSort" name="roleSort" class="form-control" type="text">
				</div>
			</div>

			<div class="form-group">	
				<label class="col-sm-3 control-label">角色状态:</label>
				<div class="col-sm-8">
					<label class="toggle-switch switch-solid">
						<input type="checkbox" id="status" checked>
						<span></span>
					</label>
				</div>
			</div>
			<div class="form-group">	
				<label class="col-sm-3 control-label">备注:</label>
				<div class="col-sm-8">
					<input id="remark" name="remark" class="form-control" type="text">
				</div>
			</div>
			<div class="form-group">
				<label class="col-sm-3 control-label">菜单权限:</label>
				<div class="col-sm-8">
					<div id="menuTrees" class="ztree"></div>
				</div>
			</div>
		</form>
	</div>
    <div th:include="include::footer"></div>
	<th:block th:include="include :: ztree-js" />
    <script type="text/javascript">
		var prefix = ctx + "business/frontRole";

		$(function() {
			var url = ctx + "business/frontMenu/roleMenuTreeData";
			var options = {
				id: "menuTrees",
				url: url,
				check: { enable: true },
				expandLevel: 0
			};
			$.tree.init(options);
		});

		$("#form-role-add").validate({
			rules:{
				onkeyup: false,
				roleName:{
					remote: {
						url: ctx + "business/frontRole/checkRoleNameUnique",
						type: "post",
						dataType: "json",
						data: {
							"roleName" : function() {
								return $.common.trim($("#roleName").val());
							}
						},
						dataFilter: function(data, type) {
							return $.validate.unique(data);
						}
					}
				},
				roleKey:{
					remote: {
						url: ctx + "business/frontRole/checkRoleKeyUnique",
						type: "post",
						dataType: "json",
						data: {
							"roleName" : function() {
								return $.common.trim($("#roleName").val());
							}
						},
						dataFilter: function(data, type) {
							return $.validate.unique(data);
						}
					}
				},
				roleSort:{
					digits:true
				},
			},
			messages: {
				"roleName": {
					remote: "角色名称已经存在"
				},
				"roleKey": {
					remote: "角色权限已经存在"
				}
			},
			focusCleanup: true
		});

		function submitHandler() {
			if ($.validate.form()) {
				add();
			}
		}

		function add() {
			var roleName = $("input[name='roleName']").val();
			var roleKey = $("input[name='roleKey']").val();
			var roleSort = $("input[name='roleSort']").val();
			var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
			var remark = $("input[name='remark']").val();
			var menuIds = $.tree.getCheckedNodes();
			$.ajax({
				cache : true,
				type : "POST",
				url : ctx + "business/frontRole/add",
				data : {
					"roleName": roleName,
					"roleKey": roleKey,
					"roleSort": roleSort,
					"status": status,
					"remark": remark,
					"menuIds": menuIds
				},
				async : false,
				error : function(request) {
					$.modal.alertError("系统错误");
				},
				success : function(data) {
					$.operate.successCallback(data);
				}
			});
		}
	</script>
</body>
</html>