Commit 91bd3531 by fengshuonan

完善添加和删除菜单

parent 026bc46d
@layout("/common/_container.html"){ @layout("/common/_dialog.html",{plugins:["laydate","sweet-alert","layer"],js:["/assets/modular/system/menu/menu_add.js"]}){
<div class="ibox float-e-margins"> <div class="container-fluid">
<div class="ibox-content"> <form id="menuForm" \@submit="submitForm">
<div class="form-horizontal" id="menuInfoForm">
<input type="hidden" id="id" value="">
<div class="row"> <div class="row">
<div class="col-sm-6 b-r"> <div class="col-6">
<#input id="name" name="名称" underline="true" /> <div class="form-group">
<#input id="code" name="菜单编号" underline="true" /> <h5>名称 <span class="text-danger">*</span></h5>
<#input id="pcodeName" name="父级编号" underline="true" <div class="controls">
hidden="pcode" readonly="readonly" <input v-model="name" type="text" class="form-control">
clickFun="MenuInfoDlg.showMenuSelectTree(); return false;"
style="background-color: #ffffff !important;"
selectFlag="true" selectId="pcodeTreeDiv" selectTreeId="pcodeTree" selectStyle="width:244px !important;"/>
<#select id="ismenu" name="是否是菜单">
<option value="1"></option>
<option value="0">不是</option>
</#select>
</div> </div>
<div class="col-sm-6">
<#input id="url" name="请求地址" underline="true" />
<#input id="num" name="排序" underline="true" />
<#input id="icon" name="图标" underline="false" />
</div> </div>
<div class="form-group">
<h5>菜单编号 <span class="text-danger">*</span></h5>
<div class="controls">
<input v-model="code" type="text" class="form-control">
</div> </div>
<div class="row btn-group-m-t">
<div class="col-sm-10">
<#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="MenuInfoDlg.addSubmit()"/>
<#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="MenuInfoDlg.close()"/>
</div> </div>
<div class="form-group">
<h5>父级编号 <span class="text-danger">*</span></h5>
<div class="controls">
<input v-model="pcodeName" id="detpName" \@click="showMenuSelectTree" type="text" class="form-control" autocomplete="off">
<input v-model="pcode" type="hidden" class="form-control">
</div> </div>
</div> </div>
<div class="form-group">
<h5>是否是菜单 <span class="text-danger">*</span></h5>
<div class="controls">
<select v-model="ismenu" class="form-control">
<option value="">请选择</option>
<option value="Y"></option>
<option value="N">不是</option>
</select>
</div> </div>
</div>
</div>
<div class="col-6">
<div class="form-group">
<h5>请求地址 <span class="text-danger">*</span></h5>
<div class="controls">
<input v-model="url" type="text" class="form-control">
</div>
</div>
<div class="form-group">
<h5>排序</h5>
<div class="controls">
<input v-model="num" type="text" class="form-control">
</div>
</div>
<div class="form-group">
<h5>图标</h5>
<div class="controls">
<input v-model="icon" type="text" class="form-control">
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-6">
<div class="text-xs-right">
<button class="btn btn-info normal-button-width" \@click="ensure">提交</button>
<button class="btn btn-inverse normal-button-width m-l-10" \@click="close">取消</button>
</div>
</div>
</div>
</form>
</div> </div>
<script src="${ctxPath}/static/modular/system/menu/menu_info.js"></script>
@} @}
...@@ -51,7 +51,7 @@ Menu.openAddMenu = function () { ...@@ -51,7 +51,7 @@ Menu.openAddMenu = function () {
this.layerIndex = layer.open({ this.layerIndex = layer.open({
type: 2, type: 2,
title: '添加菜单', title: '添加菜单',
area: ['830px', '450px'], //宽高 area: ['830px', '500px'], //宽高
fix: false, //不固定 fix: false, //不固定
maxmin: true, maxmin: true,
content: Feng.ctxPath + '/menu/menu_add' content: Feng.ctxPath + '/menu/menu_add'
...@@ -66,7 +66,7 @@ Menu.openChangeMenu = function () { ...@@ -66,7 +66,7 @@ Menu.openChangeMenu = function () {
this.layerIndex = layer.open({ this.layerIndex = layer.open({
type: 2, type: 2,
title: '修改菜单', title: '修改菜单',
area: ['800px', '450px'], //宽高 area: ['800px', '500px'], //宽高
fix: false, //不固定 fix: false, //不固定
maxmin: true, maxmin: true,
content: Feng.ctxPath + '/menu/menu_edit/' + this.seItem.id content: Feng.ctxPath + '/menu/menu_edit/' + this.seItem.id
...@@ -87,7 +87,7 @@ Menu.delMenu = function () { ...@@ -87,7 +87,7 @@ Menu.delMenu = function () {
}, function (data) { }, function (data) {
Feng.error("删除失败!" + data.responseJSON.message + "!"); Feng.error("删除失败!" + data.responseJSON.message + "!");
}); });
ajax.set("menuId", Menu.seItem.id); ajax.set("menuId", Menu.seItem.menuId);
ajax.start(); ajax.start();
}; };
......
/**
* 菜单详情对话框
*/
var MenuInfoDlg = {
data: {
menuId: "",
name: "",
code: "",
pcode: "",
pcodeName: "",
url: "",
num: "",
levels: "",
icon: "",
ismenu: ""
}
};
/**
* 关闭此对话框
*/
MenuInfoDlg.close = function () {
parent.layer.close(window.parent.Menu.layerIndex);
};
/**
* 验证数据是否为空
*/
MenuInfoDlg.validateForm = function () {
var data = MenuInfoDlg.data;
if (!data.name) {
return "请输入菜单名称";
}
if (!data.code) {
return "请输入菜单编号";
}
if (!data.pcode) {
return "请输入菜单上级";
}
if (!data.ismenu) {
return "请输入是否是菜单";
}
if (!data.url) {
return "请输入url地址";
}
return true;
};
/**
* 提交添加菜单
*/
MenuInfoDlg.addSubmit = function () {
var ajax = new $ax(Feng.ctxPath + "/menu/add", function (data) {
parent.Feng.success("添加成功!");
window.parent.Menu.table.refresh();
MenuInfoDlg.close();
}, function (data) {
parent.Feng.error("添加失败!" + data.responseJSON.message + "!");
});
ajax.set(this.data);
ajax.start();
};
$(function () {
MenuInfoDlg.app = new Vue({
el: '#menuForm',
data: MenuInfoDlg.data,
methods: {
submitForm: function (e) {
e.preventDefault();
},
showMenuSelectTree: function () {
var formName = encodeURIComponent("parent.MenuInfoDlg.app.pcodeName");
var formId = encodeURIComponent("parent.MenuInfoDlg.app.pcode");
var treeUrl = encodeURIComponent(Feng.ctxPath + "/menu/selectMenuTreeList");
layer.open({
type: 2,
title: '部门选择',
area: ['300px', '400px'],
content: Feng.ctxPath + '/system/commonTree?formName=' + formName + "&formId=" + formId + "&treeUrl=" + treeUrl
});
},
ensure: function () {
var result = MenuInfoDlg.validateForm();
if (result === true) {
MenuInfoDlg.addSubmit();
} else {
Feng.alert(result);
}
},
close: function () {
MenuInfoDlg.close();
}
}
});
});
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment