精简framework.js使用$.bc

This commit is contained in:
Argo-Lenovo 2016-11-18 20:49:44 +08:00
parent 1c17bb7362
commit 11326158f2
18 changed files with 413 additions and 418 deletions

View File

@ -47,7 +47,7 @@
if (!$.browser.versions.ios) $("#sidebar").niceScroll({ styler: "fb", cursorcolor: "#e8403f", cursorwidth: '3', cursorborderradius: '10px', background: '#404040', spacebarenabled: false, cursorborder: '', scrollspeed: 60 }); if (!$.browser.versions.ios) $("#sidebar").niceScroll({ styler: "fb", cursorcolor: "#e8403f", cursorwidth: '3', cursorborderradius: '10px', background: '#404040', spacebarenabled: false, cursorborder: '', scrollspeed: 60 });
// load widget data // load widget data
bd({ $.bc({
url: '../api/Notifications/', url: '../api/Notifications/',
swal: false, swal: false,
method: 'GET', method: 'GET',

View File

@ -1,9 +1,4 @@
(function ($) { (function ($) {
var handlerCallback = function (callback, e, data) {
if ($.isFunction(callback)) callback.call(e, data);
if ($.isFunction(this.options.callback)) this.options.callback.call(e, data);
}
BootstrapAdmin = function (options) { BootstrapAdmin = function (options) {
var that = this; var that = this;
options = options || {}; options = options || {};
@ -252,184 +247,118 @@
} }
}; };
var htmlTemplate = '<div class="form-group checkbox col-lg-3 col-xs-4"><label class="tooltips" data-placement="top" data-original-title="{3}" title="{3}"><input type="checkbox" value="{0}" {2}/>{1}</label></div>'; var handlerCallback = function (callback, e, data) {
if ($.isFunction(callback)) callback.call(e, data);
if ($.isFunction(this.options.callback)) this.options.callback.call(e, data);
}
var processData = function (options) {
var data = $.extend({ data: {}, remote: true, method: "POST", Id: "", url: this.url, title: this.title, html: this.html, swal: true }, options);
if (data.remote) { $.extend({
$.ajax({ bc: function (options, callback) {
url: data.url + data.Id, var data = $.extend({
data: data.data, remote: true,
type: data.method, Id: "",
success: function (result) { url: this.url,
success(result); data: {},
}, method: "POST",
error: function (XMLHttpRequest, textStatus, errorThrown) { htmlTemplate: '<div class="form-group checkbox col-lg-3 col-xs-4"><label class="tooltips" data-placement="top" data-original-title="{3}" title="{3}"><input type="checkbox" value="{0}" {2}/>{1}</label></div>',
if ($.isFunction(data.callback)) data.callback(false); title: this.title,
} swal: true,
}); modal: null,
} callback: null
else success() }, options);
function success(result) { if (!data.url || data.url == "") {
if ($.isFunction(data.callback)) { swal('参数错误', '未设置请求地址Url', 'error');
var formatData = result; return;
if ($.isArray(result)) {
if ($.isFunction(data.html)) formatData = data.html(result);
}
data.callback(formatData);
} }
else if ($.isPlainObject(data.callback) && data.callback.modal !== undefined) {
$("#" + data.callback.modal).modal('hide'); if (data.remote && data.url) {
$.ajax({
url: data.url + data.Id,
data: data.data,
type: data.method,
success: function (result) {
success(result);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
if ($.isFunction(data.callback)) data.callback(false);
}
});
} }
if (data.swal) { function success(result) {
if (result) { swal("成功", data.title, "success"); } if ($.isFunction(data.callback)) {
else { swal("失败", data.title, "error"); } data.callback(result);
}
if (data.modal !== null) {
$("#" + data.modal).modal('hide');
}
if (data.swal) {
if (result) { swal("成功", data.title, "success"); }
else { swal("失败", data.title, "error"); }
}
} }
} }
}; });
window.bd = processData;
// Roles // Roles
Role = { Role = {
url: '../api/Roles/', url: '../api/Roles/',
title: "授权角色", title: "授权角色"
html: function (result) {
return $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.RoleName, element.Checked, element.Description);
}).join('');
}
};
Role.getRolesByUserId = function (userId, callback) {
processData.call(this, { Id: userId, callback: callback, data: { type: "user" }, swal: false });
};
Role.getRolesByGroupId = function (groupId, callback) {
processData.call(this, { Id: groupId, callback: callback, data: { type: "group" }, swal: false });
};
Role.getRolesByMenuId = function (menuId, callback) {
processData.call(this, { Id: menuId, callback: callback, data: { type: "menu" }, swal: false });
};
Role.saveRolesByUserId = function (userId, roleIds, callback) {
processData.call(this, { Id: userId, callback: callback, method: "PUT", data: { type: "user", roleIds: roleIds } });
};
Role.saveRolesByGroupId = function (groupId, roleIds, callback) {
processData.call(this, { Id: groupId, callback: callback, method: "PUT", data: { type: "group", roleIds: roleIds } });
};
Role.saveRolesByMenuId = function (menuId, roleIds, callback) {
processData.call(this, { Id: menuId, callback: callback, method: "PUT", data: { type: "menu", roleIds: roleIds } });
}; };
// Users // Users
User = { User = {
url: '../api/Users/', url: '../api/Users/',
title: "授权用户", title: "授权用户"
html: function (result) {
return $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.DisplayName, element.Checked, element.UserName);
}).join('');
}
};
User.getUsersByRoleId = function (roleId, callback) {
processData.call(this, { Id: roleId, callback: callback, data: { type: "role" }, swal: false });
};
User.saveUsersByRoleId = function (roleId, userIds, callback) {
processData.call(this, { Id: roleId, callback: callback, method: "PUT", data: { type: "role", userIds: userIds } });
};
User.getUsersByGroupeId = function (groupId, callback) {
processData.call(this, { Id: groupId, callback: callback, data: { type: "group" }, swal: false });
};
User.saveUsersByGroupId = function (groupId, userIds, callback) {
processData.call(this, { Id: groupId, callback: callback, method: "PUT", data: { type: "group", userIds: userIds } });
};
User.saveUserDisplayName = function (user, callback) {
processData.call(this, { Id: '', callback: callback, method: "PUT", data: user, title: "修改用户显示名称" });
};
User.changePassword = function (user) {
processData.call(this, { Id: '', method: "PUT", data: user });
};
User.processUser = function (id, result, callback) {
processData.call(this, { Id: id, callback: callback, method: "PUT", data: { type: "user", userIds: result }, title: result == "1" ? "授权用户" : "拒绝用户" });
}; };
// Groups // Groups
Group = { Group = {
url: '../api/Groups/', url: '../api/Groups/',
title: "授权部门", title: "授权部门"
html: function (result) {
return $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.GroupName, element.Checked, element.Description);
}).join('');
}
};
Group.getGroupsByUserId = function (userId, callback) {
processData.call(this, { Id: userId, callback: callback, data: { type: "user" }, swal: false });
};
Group.saveGroupsByUserId = function (userId, groupIds, callback) {
processData.call(this, { Id: userId, callback: callback, method: "PUT", data: { type: "user", groupIds: groupIds } });
};
Group.getGroupsByRoleId = function (roleId, callback) {
processData.call(this, { Id: roleId, callback: callback, data: { type: "role" }, swal: false });
};
Group.saveGroupsByRoleId = function (roleId, groupIds, callback) {
processData.call(this, { Id: roleId, callback: callback, method: "PUT", data: { type: "role", groupIds: groupIds } });
}; };
// Menus // Menus
Menu = { Menu = {
url: '../api/Menus/', url: '../api/Menus/',
title: "授权菜单", title: "授权菜单"
html: function (result) {
var htmlString = "";
if ($.isArray(result)) {
htmlString = Menu.cascadeMenu(result)
}
return htmlString;
}
};
Menu.cascadeMenu = function (menus) {
var html = "";
$.each(menus, function (index, menu) {
if (menu.Menus.length == 0) {
html += $.format('<li class="dd-item dd3-item" data-id="{0}" data-category="{3}"><div class="dd-handle dd3-handle"></div><div class="dd3-content"><label><input type="checkbox" value="{0}"><span><i class="{1}"></i>{2}</span></label><label><input type="radio" name="menu" value="{0}"><span><i class="{1}"></i>{2}</span></label></div></li>', menu.ID, menu.Icon, menu.Name, menu.Category);
}
else {
html = $.format('<li class="dd-item dd3-item" data-id="{0}" data-category="{3}"><div class="dd-handle dd3-handle"></div><div class="dd3-content"><label><input type="checkbox" value="{0}"><span><i class="{1}"></i>{2}</span></label><label><input type="radio" name="menu" value="{0}"><span><i class="{1}"></i>{2}</span></label></div></li><ol class="dd-list">{4}</ol>', menu.ID, menu.Icon, menu.Name, menu.Category, Menu.cascadeMenu(menu.Menus));
}
});
return html;
};
Menu.getMenus = function (callback) {
processData.call(this, { Id: 0, callback: callback, data: { type: "user" }, swal: false });
};
Menu.getMenusByRoleId = function (roleId, callback) {
processData.call(this, { Id: roleId, callback: callback, data: { type: "role" }, swal: false, html: null });
};
Menu.saveMenusByRoleId = function (roleId, menuIds, callback) {
processData.call(this, { Id: roleId, callback: callback, method: "PUT", data: { type: "role", menuIds: menuIds } });
}; };
// Exceptions // Exceptions
Exceptions = { Exceptions = {
url: '../api/Exceptions/', url: '../api/Exceptions/',
title: "程序异常日志", title: "程序异常日志"
html: function (result) {
return result.map(function (ele) {
return $.format('<div class="form-group col-lg-3 col-md-3 col-sm-4 col-xs-6"><a class="logfile" href="#"><i class="fa fa-file-text-o"></i><span>{0}</span></a></div>', ele);
}).join('');
}
};
Exceptions.getFiles = function (callback) {
processData.call(this, { Id: "", callback: callback, swal: false });
}
Exceptions.getFileByName = function (fileName, callback) {
processData.call(this, { Id: "", callback: callback, method: "PUT", swal: false, data: { "": fileName } });
}; };
// Dicts // Dicts
Dicts = { Dicts = {
url: '../api/Dicts/' url: '../api/Dicts/'
}; };
Dicts.retrieveCategories = function (callback) {
processData.call(this, { Id: 1, callback: callback, swal: false, data: { type: 'category' } }); // Infos
}; Infos = {
url: '../api/Infos/'
}
// Profiles
Profiles = {
url: '../api/Profiles/',
title: '网站设置'
}
// Messages
Messages = {
url: '../api/Messages/'
}
// Tasks
Tasks = {
url: '../api/Tasks/'
}
// Notifications
Notifications = {
url: '../api/Notifications/'
}
})(jQuery); })(jQuery);

View File

@ -1,27 +1,15 @@
using Bootstrap.DataAccess; using Bootstrap.DataAccess;
using System.Collections.Generic; using System.Collections.Generic;
using System.Web.Http; using System.Web.Http;
using System.Linq;
namespace Bootstrap.Admin.Controllers namespace Bootstrap.Admin.Controllers
{ {
public class TasksController : ApiController public class TasksController : ApiController
{ {
[HttpGet] [HttpGet]
public Tasks Get() public IEnumerable<Task> Get()
{ {
var tasks = new Tasks(); return TaskHelper.RetrieveTasks();
TaskHelper.RetrieveTasks().AsParallel().ForAll(n => tasks.Users.Add(n));
return tasks;
}
public class Tasks
{
public Tasks()
{
Users = new List<Task>();
}
public List<Task> Users { get; set; }
} }
} }
} }

View File

@ -1,7 +1,7 @@
$(function () { $(function () {
$('#panelResultHeader').html('查询结果<span class="hidden-400 text-danger">(仅 Administrators 角色成员可删除数据)<span>'); $('#panelResultHeader').html('查询结果<span class="hidden-400 text-danger">(仅 Administrators 角色成员可删除数据)<span>');
var bsa = new BootstrapAdmin({ var bsa = new BootstrapAdmin({
url: '../api/Dicts', url: Dicts.url,
dataEntity: new DataEntity({ dataEntity: new DataEntity({
map: { map: {
ID: "dictID", ID: "dictID",
@ -14,7 +14,7 @@
}); });
$('table').smartTable({ $('table').smartTable({
url: '../api/Dicts', url: Dicts.url,
sortName: 'Category', sortName: 'Category',
queryParams: function (params) { return $.extend(params, { category: $('#txt_dict_cate').val(), name: $("#txt_dict_name").val(), define: $("#txt_dict_define").val() }); }, queryParams: function (params) { return $.extend(params, { category: $('#txt_dict_cate').val(), name: $("#txt_dict_name").val(), define: $("#txt_dict_define").val() }); },
columns: [{ checkbox: true }, columns: [{ checkbox: true },
@ -49,10 +49,13 @@
$('select').selectpicker(); $('select').selectpicker();
// autocomplete // autocomplete
Dicts.retrieveCategories(function (result) { $.bc({
$('#txt_dict_cate').typeahead({ Id: 1, url: Dicts.url, data: { type: 'category' }, swal: false,
source: result, callback: function (result) {
autoSelect: true $('#txt_dict_cate').typeahead({
}); source: result,
autoSelect: true
});
}
}); });
}); });

View File

@ -32,8 +32,14 @@
}); });
$('#btn_view').on('click', function (row) { $('#btn_view').on('click', function (row) {
Exceptions.getFiles(function (data) { $.bc({
$dataForm.children('div').html(data); Id: "", url: Exceptions.url, swal: false,
callback: function (result) {
var html = result.map(function (ele) {
return $.format('<div class="form-group col-lg-3 col-md-3 col-sm-4 col-xs-6"><a class="logfile" href="#"><i class="fa fa-file-text-o"></i><span>{0}</span></a></div>', ele);
}).join('');
$dataForm.children('div').html(html);
}
}); });
$dialog.modal('show'); $dialog.modal('show');
}); });
@ -44,8 +50,11 @@
$errorList.hide(); $errorList.hide();
$errorDetail.show(); $errorDetail.show();
$dataFormDetail.html('<div class="text-center"><i class="fa fa-spinner fa-pulse fa-3x fa-fw"></i></div>'); $dataFormDetail.html('<div class="text-center"><i class="fa fa-spinner fa-pulse fa-3x fa-fw"></i></div>');
Exceptions.getFileByName(fileName, function (data) { $.bc({
$dataFormDetail.html(data); Id: "", url: Exceptions.url, method: "PUT", swal: false, data: { "": fileName },
callback: function (result) {
$dataFormDetail.html(result);
}
}); });
}); });

View File

@ -1,6 +1,13 @@
$(function () { $(function () {
var $dialogUser = $("#dialogUser");
var $dialogUserHeader = $('#myUserModalLabel');
var $dialogUserForm = $('#userForm');
var $dialogRole = $('#dialogRole');
var $dialogRoleHeader = $('#myRoleModalLabel');
var $dialogRoleForm = $('#roleForm');
var bsa = new BootstrapAdmin({ var bsa = new BootstrapAdmin({
url: '../api/Groups', url: Group.url,
dataEntity: new DataEntity({ dataEntity: new DataEntity({
map: { map: {
ID: "groupID", ID: "groupID",
@ -12,45 +19,59 @@
assign: [{ assign: [{
id: 'btn_assignRole', id: 'btn_assignRole',
click: function (row) { click: function (row) {
Role.getRolesByGroupId(row.ID, function (data) { $.bc({
$("#dialogRole .modal-title").text($.format('{0}-角色授权窗口', row.GroupName)); Id: row.ID, url: Role.url, data: { type: "group" }, swal: false,
$('#dialogRole form').html(data); callback: function (result) {
$('#dialogRole').modal('show'); var htmlTemplate = this.htmlTemplate;
var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.RoleName, element.Checked, element.Description);
}).join('')
$dialogRoleHeader.text($.format('{0}-角色授权窗口', row.GroupName));
$dialogRoleForm.html(html);
$dialogRole.modal('show');
}
}); });
} }
}, { }, {
id: 'btn_assignUser', id: 'btn_assignUser',
click: function (row) { click: function (row) {
User.getUsersByGroupeId(row.ID, function (data) { $.bc({
$("#dialogUser .modal-title").text($.format('{0}-用户授权窗口', row.GroupName)); Id: row.ID, url: User.url, data: { type: "group" }, swal: false,
$('#dialogUser form').html(data); callback: function (result) {
$('#dialogUser').modal('show'); var htmlTemplate = this.htmlTemplate;
var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.DisplayName, element.Checked, element.UserName);
}).join('');
$dialogUserHeader.text($.format('{0}-用户授权窗口', row.GroupName));
$dialogUserForm.html(html);
$dialogUser.modal('show');
}
}); });
} }
}, { }, {
id: 'btnSubmitRole', id: 'btnSubmitRole',
click: function (row) { click: function (row) {
var groupId = row.ID; var groupId = row.ID;
var roleIds = $('#dialogRole :checked').map(function (index, element) { var roleIds = $dialogRole.find('input:checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
Role.saveRolesByGroupId(groupId, roleIds, { modal: 'dialogRole' }); $.bc({ Id: groupId, url: Role.url, method: "PUT", data: { type: "group", roleIds: roleIds }, title: Role.title, modal: 'dialogRole' });
} }
}, { }, {
id: 'btnSubmitUser', id: 'btnSubmitUser',
click: function (row) { click: function (row) {
var groupId = row.ID; var groupId = row.ID;
var userIds = $('#dialogUser :checked').map(function (index, element) { var userIds = $dialogUser.find(':checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
User.saveUsersByGroupId(groupId, userIds, { modal: 'dialogUser' }); $.bc({ Id: groupId, url: User.url, method: "PUT", data: { type: "group", userIds: userIds }, title: User.title, modal: 'dialogUser' });
} }
}] }]
} }
}); });
$('table').smartTable({ $('table').smartTable({
url: '../api/Groups', //请求后台的URL* url: Group.url, //请求后台的URL*
sortName: 'GroupName', sortName: 'GroupName',
queryParams: function (params) { return $.extend(params, { groupName: $("#txt_search_name").val(), description: $("#txt_group_desc").val() }); }, //传递参数(* queryParams: function (params) { return $.extend(params, { groupName: $("#txt_search_name").val(), description: $("#txt_group_desc").val() }); }, //传递参数(*
columns: [{ checkbox: true }, columns: [{ checkbox: true },

View File

@ -2,7 +2,7 @@
var $headerIcon = $('#headerIcon'); var $headerIcon = $('#headerIcon');
var preIcon = $headerIcon.attr('src'); var preIcon = $headerIcon.attr('src');
$('#fileIcon').fileinput({ $('#fileIcon').fileinput({
uploadUrl: '../api/Infos', uploadUrl: Infos.url,
language: 'zh', language: 'zh',
allowedFileExtensions: ['jpg'], allowedFileExtensions: ['jpg'],
initialPreview: [ initialPreview: [
@ -62,7 +62,7 @@
click: function (row, data) { click: function (row, data) {
if ($(this).attr('data-valid') == "true") { if ($(this).attr('data-valid') == "true") {
data.UserStatus = 2; data.UserStatus = 2;
User.changePassword(data); $.bc({ url: User.url, method: "PUT", data: data, title: "更改密码" });
} }
} }
}, { }, {
@ -70,9 +70,12 @@
click: function (row, data) { click: function (row, data) {
if ($(this).attr('data-valid') == "true") { if ($(this).attr('data-valid') == "true") {
data.UserStatus = 1; data.UserStatus = 1;
User.saveUserDisplayName(data, function (result) { $.bc({
if (result) { url: User.url, method: "PUT", data: data, title: "修改用户显示名称",
$('#userDisplayName').text(data.DisplayName); callback: function (result) {
if (result) {
$('#userDisplayName').text(data.DisplayName);
}
} }
}); });
} }

View File

@ -1,4 +1,22 @@
$(function () { $(function () {
var $dialog = $('#dialogNew');
var $pickIcon = $('#pickIcon');
var $iconList = $('#iconTab').find('div.fontawesome-icon-list');
var $dialogNew = $dialog.find('div.modal-dialog');
var $dialogIcon = $('#dialogIcon');
var $dialogMenu = $('#dialogSubMenu').find('.modal-content');
var $dialogRole = $('#dialogRole');
var $dialogRoleHeader = $('#myRoleModalLabel');
var $dialogRoleForm = $('#roleForm');
var $btnSubmitMenu = $('#btnSubmitMenu');
var $btnPickIcon = $('#btnIcon');
var $inputIcon = $('#icon');
var $nestMenu = $('#nestable_menu');
var $nestMenuInput = $nestMenu.find('div.dd3-content');
var $parentMenuID = $('#parentId');
var $parentMenuName = $('#parentName');
$nestMenuInput.find('label:first').hide();
var bsa = new BootstrapAdmin({ var bsa = new BootstrapAdmin({
url: '../api/Menus', url: '../api/Menus',
dataEntity: new DataEntity({ dataEntity: new DataEntity({
@ -17,39 +35,62 @@
assign: [{ assign: [{
id: 'btn_assignRole', id: 'btn_assignRole',
click: function (row) { click: function (row) {
Role.getRolesByMenuId(row.ID, function (data) { $.bc({
var dialog = $('#dialogRole'); Id: row.ID, url: Role.url, data: { type: "menu" }, swal: false,
dialog.find('.modal-title').text($.format('{0}-角色授权窗口', row.Name)); callback: function (result) {
dialog.find('form').html(data); var htmlTemplate = this.htmlTemplate;
dialog.modal('show'); var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.RoleName, element.Checked, element.Description);
}).join('')
$dialogRoleHeader.text($.format('{0}-角色授权窗口', row.Name));
$dialogRoleForm.html(html);
$dialogRole.modal('show');
}
}); });
} }
}, { }, {
id: 'btnSubmitRole', id: 'btnSubmitRole',
click: function (row) { click: function (row) {
var menuId = row.ID; var menuId = row.ID;
var dialog = $('#dialogRole'); var roleIds = $dialogRole.find('input:checked').map(function (index, element) {
var roleIds = dialog.find('input:checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
Role.saveRolesByMenuId(menuId, roleIds, { modal: 'dialogRole' }); $.bc({ Id: menuId, url: Role.url, method: "PUT", data: { type: "menu", roleIds: roleIds }, title: Role.title, modal: 'dialogRole' });
} }
}] }]
}, },
callback: function (result) { callback: function (result) {
if (!result.success) return; if (!result.success) return;
if ((result.oper == "save") || result.oper == "del") { if ((result.oper == "save") || result.oper == "del") {
Menu.getMenus(function (data) { $.bc({
$nestMenu.find('ol:first').html(data); Id: 0, url: Menu.url, data: { type: "user" }, swal: false,
$nestMenuInput = $nestMenu.find('div.dd3-content'); callback: function (result) {
$nestMenuInput.find('label:first').hide(); var html = "";
if ($.isArray(result)) html = cascadeMenu(result);
$nestMenu.find('ol:first').html(html);
$nestMenuInput = $nestMenu.find('div.dd3-content');
$nestMenuInput.find('label:first').hide();
}
}); });
} }
} }
}); });
var cascadeMenu = function (menus) {
var html = "";
$.each(menus, function (index, menu) {
if (menu.Menus.length == 0) {
html += $.format('<li class="dd-item dd3-item" data-id="{0}" data-category="{3}"><div class="dd-handle dd3-handle"></div><div class="dd3-content"><label><input type="checkbox" value="{0}"><span><i class="{1}"></i>{2}</span></label><label><input type="radio" name="menu" value="{0}"><span><i class="{1}"></i>{2}</span></label></div></li>', menu.ID, menu.Icon, menu.Name, menu.Category);
}
else {
html = $.format('<li class="dd-item dd3-item" data-id="{0}" data-category="{3}"><div class="dd-handle dd3-handle"></div><div class="dd3-content"><label><input type="checkbox" value="{0}"><span><i class="{1}"></i>{2}</span></label><label><input type="radio" name="menu" value="{0}"><span><i class="{1}"></i>{2}</span></label></div></li><ol class="dd-list">{4}</ol>', menu.ID, menu.Icon, menu.Name, menu.Category, cascadeMenu(menu.Menus));
}
});
return html;
};
$('table').smartTable({ $('table').smartTable({
url: '../api/Menus', //请求后台的URL* url: Menu.url, //请求后台的URL*
sortName: 'Order', sortName: 'Order',
queryParams: function (params) { return $.extend(params, { parentName: $('#txt_parent_menus_name').val(), name: $("#txt_menus_name").val(), category: $('#sel_menus_category').val() }); }, //传递参数(* queryParams: function (params) { return $.extend(params, { parentName: $('#txt_parent_menus_name').val(), name: $("#txt_menus_name").val(), category: $('#sel_menus_category').val() }); }, //传递参数(*
columns: [{ checkbox: true }, columns: [{ checkbox: true },
@ -82,21 +123,6 @@
} }
}); });
var $dialog = $('#dialogNew');
var $pickIcon = $('#pickIcon');
var $iconList = $('#iconTab').find('div.fontawesome-icon-list');
var $dialogNew = $dialog.find('div.modal-dialog');
var $dialogIcon = $('#dialogIcon');
var $dialogMenu = $('#dialogSubMenu').find('.modal-content');
var $btnSubmitMenu = $('#btnSubmitMenu');
var $btnPickIcon = $('#btnIcon');
var $inputIcon = $('#icon');
var $nestMenu = $('#nestable_menu');
var $nestMenuInput = $nestMenu.find('div.dd3-content');
var $parentMenuID = $('#parentId');
var $parentMenuName = $('#parentName');
$nestMenuInput.find('label:first').hide();
$iconList.find('ul li').addClass('col-md-3 col-sm-4 col-sm-6'); $iconList.find('ul li').addClass('col-md-3 col-sm-4 col-sm-6');
$iconList.on('click', 'div.fa-hover a, ul li', function () { $iconList.on('click', 'div.fa-hover a, ul li', function () {
$pickIcon.attr('class', $(this).find('i, span:first').attr('class')); $pickIcon.attr('class', $(this).find('i, span:first').attr('class'));
@ -182,9 +208,7 @@
if (icon == "") icon = "fa fa-dashboard"; if (icon == "") icon = "fa fa-dashboard";
$btnPickIcon.find('i').attr('class', icon); $btnPickIcon.find('i').attr('class', icon);
}); });
$nestMenu.nestable(); $nestMenu.nestable();
// select // select
$('select').selectpicker(); $('select').selectpicker();
}); });

View File

@ -17,10 +17,8 @@
button: ['footSave'] button: ['footSave']
}); });
var options = { url: '../api/Profiles', title: '网站设置' };
var bsa = new BootstrapAdmin({ var bsa = new BootstrapAdmin({
url: options.url, url: Profiles.url,
bootstrapTable: null, bootstrapTable: null,
validateForm: null, validateForm: null,
modal: null, modal: null,
@ -35,26 +33,24 @@
id: 'sysSave', id: 'sysSave',
click: function (row, data) { click: function (row, data) {
if ($(this).attr('data-valid') == "true") { if ($(this).attr('data-valid') == "true") {
var op = $.extend({ $.bc({
data: { name: '网站标题', code: data.Title, category: '网站设置' }, url: Profiles.url, data: { name: '网站标题', code: data.Title, category: Profiles.title }, title: Profiles.title,
callback: function (result) { callback: function (result) {
$('#websiteTitle').text(data.Title); if (result) $('#websiteTitle').text(data.Title);
} }
}, options) });
bd(op);
} }
} }
}, { }, {
id: 'footSave', id: 'footSave',
click: function (row, data) { click: function (row, data) {
if ($(this).attr('data-valid') == "true") { if ($(this).attr('data-valid') == "true") {
var op = $.extend({ $.bc({
data: { name: '网站页脚', code: data.Footer, category: '网站设置' }, url: Profiles.url, data: { name: '网站页脚', code: data.Footer, category: Profiles.title }, title: Profiles.title,
callback: function (result) { callback: function (result) {
$('#websiteFooter').text(data.Footer); if (result) $('#websiteFooter').text(data.Footer);
} }
}, options) });
bd(op);
} }
} }
}] }]
@ -63,7 +59,7 @@
function listCache(options) { function listCache(options) {
options = $.extend({ url: '../../CacheList.axd' }, options); options = $.extend({ url: '../../CacheList.axd' }, options);
bd({ $.bc({
url: options.url, url: options.url,
swal: false, swal: false,
callback: function (result) { callback: function (result) {

View File

@ -1,7 +1,12 @@
$(function () { $(function () {
var $dialogUser = $("#dialogUser"); var $dialogUser = $("#dialogUser");
var $dialogUserHeader = $('#myUserModalLabel');
var $dialogUserForm = $('#userForm');
var $dialogGroup = $("#dialogGroup"); var $dialogGroup = $("#dialogGroup");
var $dialogGroupHeader = $('#myGroupModalLabel');
var $dialogGroupForm = $('#groupForm');
var $dialogMenu = $('#dialogMenu'); var $dialogMenu = $('#dialogMenu');
var $dialogMenuHeader = $('#myMenuModalLabel');
var $dialogSubMenu = $('#dialogSubMenu').find('.modal-content'); var $dialogSubMenu = $('#dialogSubMenu').find('.modal-content');
var $btnSubmitMenu = $('#btnSubmitMenu'); var $btnSubmitMenu = $('#btnSubmitMenu');
var $nestMenu = $('#nestable_menu'); var $nestMenu = $('#nestable_menu');
@ -9,7 +14,7 @@
$nestMenuInput.find('label:last').hide(); $nestMenuInput.find('label:last').hide();
var bsa = new BootstrapAdmin({ var bsa = new BootstrapAdmin({
url: '../api/Roles', url: Role.url,
dataEntity: new DataEntity({ dataEntity: new DataEntity({
map: { map: {
ID: "roleID", ID: "roleID",
@ -21,20 +26,54 @@
assign: [{ assign: [{
id: 'btn_assignUser', id: 'btn_assignUser',
click: function (row) { click: function (row) {
User.getUsersByRoleId(row.ID, function (data) { $.bc({
$dialogUser.find("div.modal-header").find('h4').text($.format('{0}-用户授权窗口', row.RoleName)); Id: row.ID, url: User.url, data: { type: "role" }, swal: false,
$dialogUser.find('form').html(data); callback: function (result) {
$dialogUser.modal('show'); var htmlTemplate = this.htmlTemplate;
}) var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.DisplayName, element.Checked, element.UserName);
}).join('');
$dialogUserHeader.text($.format('{0}-用户授权窗口', row.RoleName));
$dialogUserForm.html(html);
$dialogUser.modal('show');
}
});
} }
}, { }, {
id: 'btn_assignGroup', id: 'btn_assignGroup',
click: function (row) { click: function (row) {
Group.getGroupsByRoleId(row.ID, function (data) { $.bc({
$dialogGroup.find("div.modal-header").find("h4").text($.format('{0}-部门授权窗口', row.RoleName)); Id: row.ID, url: Group.url, data: { type: "role" }, swal: false,
$dialogGroup.find('form').html(data); callback: function (result) {
$dialogGroup.modal('show'); var htmlTemplate = this.htmlTemplate;
}) var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.GroupName, element.Checked, element.Description);
}).join('');
$dialogGroupHeader.text($.format('{0}-部门授权窗口', row.RoleName));
$dialogGroupForm.html(html);
$dialogGroup.modal('show');
}
});
}
}, {
id: 'btn_assignMenu',
click: function (row) {
$.bc({
Id: row.ID, url: Menu.url, data: { type: "role" }, swal: false,
callback: function (result) {
$dialogMenuHeader.text($.format('{0}-菜单授权窗口', row.RoleName));
$btnSubmitMenu.data('type', 'menu');
// set checkbox status
var menus = $nestMenu.find('input:checkbox');
menus.removeProp('checked');
$.each(result, function (index, item) {
var selector = $.format('[value={0}]', item.ID);
menus.filter(selector).prop('checked', 'checked');
});
$dialogSubMenu.show();
$dialogMenu.modal('show');
}
});
} }
}, { }, {
id: 'btnSubmitUser', id: 'btnSubmitUser',
@ -43,38 +82,18 @@
var userIds = $dialogUser.find(':checked').map(function (index, element) { var userIds = $dialogUser.find(':checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
User.saveUsersByRoleId(roleId, userIds, { modal: 'dialogUser' }); $.bc({ Id: roleId, url: User.url, method: "PUT", data: { type: "role", userIds: userIds }, modal: 'dialogUser', title: User.title });
} }
}, }, {
{
id: 'btnSubmitGroup', id: 'btnSubmitGroup',
click: function (row) { click: function (row) {
var roleId = row.ID; var roleId = row.ID;
var groupIds = $dialogGroup.find(':checked').map(function (index, element) { var groupIds = $dialogGroup.find(':checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
Group.saveGroupsByRoleId(roleId, groupIds, { modal: 'dialogGroup' }); $.bc({ Id: roleId, url: Group.url, method: "PUT", data: { type: "role", groupIds: groupIds }, modal: 'dialogGroup', title: Group.title });
} }
}, }, {
{
id: 'btn_assignMenu',
click: function (row) {
Menu.getMenusByRoleId(row.ID, function (data) {
$dialogSubMenu.find("div.modal-header").find('h4').text($.format('{0}-菜单授权窗口', row.RoleName));
$btnSubmitMenu.data('type', 'menu');
// set checkbox status
var menus = $nestMenu.find('input:checkbox');
menus.removeProp('checked');
$.each(data, function (index, item) {
var selector = $.format('[value={0}]', item.ID);
menus.filter(selector).prop('checked', 'checked');
});
$dialogSubMenu.show();
$dialogMenu.modal('show');
})
}
},
{
id: 'btnSubmitMenu', id: 'btnSubmitMenu',
click: function (row) { click: function (row) {
var roleId = row.ID; var roleId = row.ID;
@ -88,7 +107,7 @@
default: default:
break; break;
} }
Menu.saveMenusByRoleId(roleId, menuIds, { modal: 'dialogMenu' }); $.bc({ Id: roleId, url: Menu.url, method: "PUT", data: { type: "role", menuIds: menuIds }, modal: 'dialogMenu', title: Menu.title });
} }
}] }]
} }
@ -97,7 +116,7 @@
$nestMenu.nestable(); $nestMenu.nestable();
$('table').smartTable({ $('table').smartTable({
url: '../api/Roles', //请求后台的URL* url: Role.url, //请求后台的URL*
sortName: 'RoleName', sortName: 'RoleName',
queryParams: function (params) { return $.extend(params, { roleName: $("#txt_search_name").val(), description: $("#txt_role_desc").val() }); }, //传递参数(* queryParams: function (params) { return $.extend(params, { roleName: $("#txt_search_name").val(), description: $("#txt_role_desc").val() }); }, //传递参数(*
columns: [{ checkbox: true }, columns: [{ checkbox: true },

View File

@ -1,6 +1,13 @@
$(function () { $(function () {
var $dialogRole = $('#dialogRole');
var $dialogRoleHeader = $('#myRoleModalLabel');
var $dialogRoleForm = $('#roleForm');
var $dialogGroup = $("#dialogGroup");
var $dialogGroupHeader = $('#myGroupModalLabel');
var $dialogGroupForm = $('#groupForm');
var bsa = new BootstrapAdmin({ var bsa = new BootstrapAdmin({
url: '../api/Users', url: User.url,
dataEntity: new DataEntity({ dataEntity: new DataEntity({
map: { map: {
ID: "userID", ID: "userID",
@ -14,38 +21,52 @@
assign: [{ assign: [{
id: 'btn_assignRole', id: 'btn_assignRole',
click: function (row) { click: function (row) {
Role.getRolesByUserId(row.ID, function (data) { $.bc({
$("#dialogRole .modal-title").text($.format('{0}-角色授权窗口', row.DisplayName)); Id: row.ID, url: Role.url, data: { type: "user" }, swal: false,
$('#dialogRole form').html(data); callback: function (result) {
$('#dialogRole').modal('show'); var htmlTemplate = this.htmlTemplate;
var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.RoleName, element.Checked, element.Description);
}).join('')
$dialogRoleHeader.text($.format('{0}-角色授权窗口', row.DisplayName));
$dialogRoleForm.html(html);
$dialogRole.modal('show');
}
}); });
} }
}, { }, {
id: 'btn_assignGroup', id: 'btn_assignGroup',
click: function (row) { click: function (row) {
Group.getGroupsByUserId(row.ID, function (data) { $.bc({
$("#dialogGroup .modal-title").text($.format('{0}-部门授权窗口', row.DisplayName)); Id: row.ID, url: Group.url, data: { type: "user" }, swal: false,
$('#dialogGroup form').html(data); callback: function (result) {
$('#dialogGroup').modal('show'); var htmlTemplate = this.htmlTemplate;
var html = $.map(result, function (element, index) {
return $.format(htmlTemplate, element.ID, element.GroupName, element.Checked, element.Description);
}).join('');
$dialogGroupHeader.text($.format('{0}-部门授权窗口', row.DisplayName));
$dialogGroupForm.html(html);
$dialogGroup.modal('show');
}
}); });
} }
}, { }, {
id: 'btnSubmitRole', id: 'btnSubmitRole',
click: function (row) { click: function (row) {
var userId = row.ID; var userId = row.ID;
var roleIds = $('#dialogRole :checked').map(function (index, element) { var roleIds = $dialogRole.find(':checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
Role.saveRolesByUserId(userId, roleIds, { modal: 'dialogRole' }); $.bc({ Id: userId, url: Role.url, method: 'PUT', data: { type: "user", roleIds: roleIds }, title: Role.title, modal: 'dialogRole' });
} }
}, { }, {
id: 'btnSubmitGroup', id: 'btnSubmitGroup',
click: function (row) { click: function (row) {
var userId = row.ID; var userId = row.ID;
var groupIds = $('#dialogGroup :checked').map(function (index, element) { var groupIds = $dialogGroup.find(':checked').map(function (index, element) {
return $(element).val(); return $(element).val();
}).toArray().join(','); }).toArray().join(',');
Group.saveGroupsByUserId(userId, groupIds, { modal: 'dialogGroup' }); $.bc({ Id: userId, url: Group.url, method: 'PUT', data: { type: "user", groupIds: groupIds }, title: Group.title, modal: 'dialogGroup' });
} }
}] }]
}, },
@ -57,13 +78,13 @@
}); });
$('table').smartTable({ $('table').smartTable({
url: '../api/Users', //请求后台的URL* url: User.url, //请求后台的URL*
sortName: 'UserName', sortName: 'DisplayName',
queryParams: function (params) { return $.extend(params, { name: $("#txt_search_name").val(), displayName: $('#txt_display_name').val() }); }, //传递参数(* queryParams: function (params) { return $.extend(params, { name: $("#txt_search_name").val(), displayName: $('#txt_display_name').val() }); }, //传递参数(*
columns: [{ checkbox: true }, columns: [{ checkbox: true },
{ title: "Id", field: "ID", events: bsa.idEvents(), formatter: BootstrapAdmin.idFormatter }, { title: "Id", field: "ID", events: bsa.idEvents(), formatter: BootstrapAdmin.idFormatter },
{ title: "登陆名称", field: "UserName", sortable: true }, { title: "登陆名称", field: "UserName", sortable: true },
{ title: "显示名称", field: "DisplayName", sortable: false } { title: "显示名称", field: "DisplayName", sortable: true }
] ]
}); });

View File

@ -2,11 +2,8 @@
var html = '<tr><td class="inbox-small-cells"><input type="checkbox" class="mail-checkbox"></td><td class="inbox-small-cells"><i class="fa fa-star"></i></td><td class="view-message dont-show">{0}</td><td class="view-message dont-show">{1}</td><td class="view-message ">{2}</td><td class="view-message text-right">{3}</td></tr>'; var html = '<tr><td class="inbox-small-cells"><input type="checkbox" class="mail-checkbox"></td><td class="inbox-small-cells"><i class="fa fa-star"></i></td><td class="view-message dont-show">{0}</td><td class="view-message dont-show">{1}</td><td class="view-message ">{2}</td><td class="view-message text-right">{3}</td></tr>';
function listData() { function listData() {
bd({ $.bc({
Id: 'inbox', Id: 'inbox', url: Messages.url, method: 'GET', swal: false,
url: '../api/Messages/',
method: 'GET',
swal: false,
callback: function (result) { callback: function (result) {
if (result) { if (result) {
var content = result.map(function (mail) { var content = result.map(function (mail) {
@ -14,7 +11,6 @@
}).join(''); }).join('');
$('#tbMsg').html(content); $('#tbMsg').html(content);
} }
console.log(result);
} }
}); });
} }

View File

@ -1,14 +1,11 @@
$(function () { $(function () {
var $btnRefreshUser = $('#refreshUsers');
var htmlNewUsers = '<li class="list-primary"><i class="fa fa-ellipsis-v"></i><div class="task-title notifi"><span class="task-title-sp">{0}</span><span class="task-value">{1}</span><span class="task-time">{2}</span><div class="pull-right hidden-phone"><button class="btn btn-success btn-xs fa fa-check" data-id="{3}" data-result="1"></button><button class="btn btn-danger btn-xs fa fa-remove" data-id="{3}" data-result="0" data-placement="left" data-original-title="拒绝授权"></button></div></div></li>'; var htmlNewUsers = '<li class="list-primary"><i class="fa fa-ellipsis-v"></i><div class="task-title notifi"><span class="task-title-sp">{0}</span><span class="task-value">{1}</span><span class="task-time">{2}</span><div class="pull-right hidden-phone"><button class="btn btn-success btn-xs fa fa-check" data-id="{3}" data-result="1"></button><button class="btn btn-danger btn-xs fa fa-remove" data-id="{3}" data-result="0" data-placement="left" data-original-title="拒绝授权"></button></div></div></li>';
function listData(options) { function listData() {
options = $.extend({ animation: true, ctl: $('a.fa-refresh') }, options); $btnRefreshUser.toggleClass('fa-spin');
if (options.animation) options.ctl.toggleClass('fa-spin'); $.bc({
bd({ Id: 'newusers', url: Notifications.url, method: 'GET', swal: false,
Id: 'newusers',
url: '../api/Notifications/',
method: 'GET',
swal: false,
callback: function (result) { callback: function (result) {
if (result) { if (result) {
var content = result.Users.map(function (noti) { var content = result.Users.map(function (noti) {
@ -16,21 +13,24 @@
}).join(''); }).join('');
$('#tasks-users').html(content); $('#tasks-users').html(content);
} }
if (options.animation) options.ctl.toggleClass('fa-spin'); $btnRefreshUser.toggleClass('fa-spin');
} }
}); });
} }
listData(); listData();
$('a.fa-refresh').on('click', function () { $btnRefreshUser.on('click', function () {
listData({ ctl: $(this) }); listData();
}); });
$('#tasks-users').on('click', 'button', function () { $('#tasks-users').on('click', 'button', function () {
var id = $(this).attr('data-id'); var id = $(this).attr('data-id');
var result = $(this).attr('data-result'); var result = $(this).attr('data-result');
User.processUser(id, result, function (result) { $.bc({
listData({ ctl: $('#refreshUsers') }); Id: id, url: User.url, method: "PUT", data: { type: "user", userIds: result }, title: result == "1" ? "授权用户" : "拒绝用户",
callback: function (result) {
listData({ ctl: $('#refreshUsers') });
}
}); });
}); });
}); });

View File

@ -1,33 +1,26 @@
$(function () { $(function () {
var url = '../api/Tasks/'; var $btnRefresh = $('#refreshTask');
var htmlTask = '<li class="list-primary"><i class="fa fa-ellipsis-v"></i><div class="task-title notifi"><span class="task-title-sp">{0}</span><span class="task-value">{1}</span><span class="task-time">{2}</span>'; var htmlTask = '<li class="list-primary"><i class="fa fa-ellipsis-v"></i><div class="task-title notifi"><span class="task-title-sp">{0}</span><span class="task-value">{1}</span><span class="task-time">{2}</span><div class="pull-right hidden-phone"><button class="btn btn-success btn-xs fa fa-check" data-id="{3}" data-result="1"></button><button class="btn btn-danger btn-xs fa fa-remove" data-id="{3}" data-result="0" data-placement="left" data-original-title="拒绝授权"></button></div></div></li>';
htmlTask += '<div class="pull-right hidden-phone"><button class="btn btn-success btn-xs fa fa-check" data-id="{3}" data-result="1"></button><button class="btn btn-danger btn-xs fa fa-remove" data-id="{3}" data-result="0" data-placement="left" data-original-title="拒绝授权"></button></div></div></li>';
function listData() {
function listData(options) { $btnRefresh.toggleClass('fa-spin');
options = $.extend({ url: url, animation: true, ctl: $('a.fa-refresh') }, options); $.bc({
if (options.animation) options.ctl.toggleClass('fa-spin'); url: Tasks.url, method: 'GET', swal: false,
$.ajax({ callback: function (result) {
url: options.url, if (result) {
type: 'GET', var content = result.map(function (task) {
success: function (result) { return $.format(htmlTask, task.TaskName, task.UserName, task.AssignTime, task.ID);
if (result) { }).join('');
var content = result.Users.map(function (task) { $('#list-task').html(content);
var t = new Date(task.AssignTime).format('yyyy-MM-dd HH:mm:ss'); }
return $.format(htmlTask, task.TaskName, task.UserName, t, task.ID); $btnRefresh.toggleClass('fa-spin');
}).join(''); }
$('#list-task').html(content); });
} }
if (options.animation) options.ctl.toggleClass('fa-spin'); listData();
},
error: function (XMLHttpRequest, textStatus, errorThrown) { $btnRefresh.on('click', function () {
if (options.animation) options.ctl.toggleClass('fa-spin'); listData();
} });
});
}
listData();
$('a.fa-refresh').on('click', function () {
listData({ ctl: $(this) });
});
}) })

View File

@ -1,40 +1,33 @@
@model NavigatorBarModel @model NavigatorBarModel
@{ @{
ViewBag.Title = "任务消息"; ViewBag.Title = "任务消息";
Layout = "~/Views/Shared/_Admin.cshtml"; Layout = "~/Views/Shared/_Admin.cshtml";
} }
@section Javascript { @section Javascript {
<script src="~/Content/js/sweetalert.js"></script> <script src="~/Content/js/sweetalert.js"></script>
<script src="~/Scripts/tasks.js"></script> <script src="~/Scripts/tasks.js"></script>
} }
@section css { @section css {
<link href="~/Content/css/sweetalert.css" rel="stylesheet" /> <link href="~/Content/css/sweetalert.css" rel="stylesheet" />
<link href="~/Content/css/tasks.css" rel="stylesheet" /> <link href="~/Content/css/tasks.css" rel="stylesheet" />
} }
@section header { @section header {
@Html.Partial("Header", Model) @Html.Partial("Header", Model)
} }
@section navigator { @section navigator {
@Html.Partial("Navigator", Model) @Html.Partial("Navigator", Model)
} }
<div class="panel panel-default"> <div class="panel panel-default">
<div class="panel-heading">任务消息<span class="pull-right"><a href="javascript:;" class="tooltips fa fa-refresh" data-category="0" data-placement="left" data-original-title="点击刷新"></a></span></div> <div class="panel-heading">任务消息<span class="pull-right"><a id="refreshTask" href="javascript:;" class="fa fa-refresh"></a></span></div>
<div class="panel-body"> <div class="panel-body">
<div class="tasks-widget"> <div class="tasks-widget">
<ul id="list-task" class="task-list ui-sortable"> <ul id="list-task" class="task-list ui-sortable">
<li class="list-primary"> <li class="list-primary">
<i class="fa fa-ellipsis-v"></i> <i class="fa fa-ellipsis-v"></i>
<div class="task-title notifi"> <div class="task-title notifi">
@*<span class="task-title-sp">Title</span> </div>
<span class="task-value">Content</span> </li>
<span class="task-time">@System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")</span> </ul>
<div class="pull-right hidden-phone"> </div>
<button class="btn btn-success btn-xs fa fa-check tooltips" data-placement="left" data-original-title="同意授权"></button> </div>
<button class="btn btn-danger btn-xs fa fa-remove tooltips" data-placement="left" data-original-title="拒绝授权"></button> </div>
</div>*@
</div>
</li>
</ul>
</div>
</div>
</div>

View File

@ -1,17 +1,17 @@
<div class="modal fade" id="dialogGroup" tabindex="-1" role="dialog" data-backdrop="static" aria-labelledby="myGroupModalLabel" aria-hidden="true"> <div class="modal fade" id="dialogGroup" tabindex="-1" role="dialog" data-backdrop="static" aria-labelledby="myGroupModalLabel" aria-hidden="true">
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myGroupModalLabel">部门授权窗口</h4> <h4 class="modal-title" id="myGroupModalLabel">部门授权窗口</h4>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form class="form-inline" role="form"></form> <form id="groupForm" class="form-inline" role="form"></form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" id="btnSubmitGroup">保存</button> <button type="button" class="btn btn-primary" id="btnSubmitGroup">保存</button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -6,7 +6,7 @@
<h4 class="modal-title" id="myRoleModalLabel">角色授权窗口</h4> <h4 class="modal-title" id="myRoleModalLabel">角色授权窗口</h4>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form class="form-inline" role="form"> <form id="roleForm" class="form-inline" role="form">
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">

View File

@ -1,17 +1,17 @@
<div class="modal fade" id="dialogUser" tabindex="-1" role="dialog" data-backdrop="static" aria-labelledby="myUserModalLabel" aria-hidden="true"> <div class="modal fade" id="dialogUser" tabindex="-1" role="dialog" data-backdrop="static" aria-labelledby="myUserModalLabel" aria-hidden="true">
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title" id="myUserModalLabel">用户授权窗口</h4> <h4 class="modal-title" id="myUserModalLabel">用户授权窗口</h4>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form class="form-inline" role="form"></form> <form id="userForm" class="form-inline" role="form"></form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" id="btnSubmitUser">保存</button> <button type="button" class="btn btn-primary" id="btnSubmitUser">保存</button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>