@using DTO;
|
@{
|
ViewBag.Title = "Search";
|
Layout = "~/Views/Shared/_Layout_Content.cshtml";
|
var listRole = ViewBag.listRole == null ? new List<PltRoleDTO>() : (List<PltRoleDTO>)ViewBag.listRole;//获取所有角色
|
var listType = ViewBag.listType == null ? new List<CodeDataEntity>() : (List<CodeDataEntity>)ViewBag.listType;//获取人员类型
|
var dicTypeUser = ViewBag.dicTypeUser == null ? new Dictionary<string, List<PltUserDTO>>() : (Dictionary<string, List<PltUserDTO>>)ViewBag.dicTypeUser;//获取所有人员类型相关的人员列表
|
var dicUserRole = ViewBag.dicUserRole == null ? new Dictionary<string, List<string>>() : (Dictionary<string, List<string>>)ViewBag.dicUserRole;//获取所有角色相关人员
|
}
|
<link href="~/css/font-awesome.min.css" rel="stylesheet">
|
<link href="~/css/plugins/iCheck/custom.css" rel="stylesheet">
|
<link href="~/css/animate.min.css" rel="stylesheet">
|
<link href="~/css/style.min.css" rel="stylesheet">
|
<style>
|
#add {
|
margin-left: 30%;
|
}
|
|
.ibox-title {
|
margin-top: 0;
|
}
|
</style>
|
<div style="width:20%;height:100%;float:left;">
|
<div id="tree">
|
<ul class="list-group rolesearch" style="margin-bottom:0px;">
|
<li class="list-group-item" style="font-weight: bold;text-align: center;">角色列表</li>
|
<li class="list-group-item">
|
<div class="row">
|
<div class="col-lg-12">
|
<div class="input-group" style="width:100%">
|
<input type="text" class="form-control" placeholder="检索角色名称" id="rolesearch">
|
<!-- /btn-group -->
|
</div>
|
</div>
|
</div>
|
</li>
|
</ul>
|
<ul class="list-group" id="listrole" style="overflow-y:scroll;">
|
@foreach (var item in listRole)
|
{
|
<li class="list-group-item node-tree" data-roleid="@item.Id" data-name="@item.RoleName" style="cursor:pointer;" data-nodeid="0">
|
<span class="icon"><i class="glyphicon glyphicon-globe"></i></span>@item.RoleName
|
</li>
|
}
|
|
</ul>
|
</div>
|
</div>
|
<div style="width:80%;height:100%;float:right;background-color:black;">
|
<div class="ibox-title">
|
<div class="row">
|
<div class="col-sm-3 col-md-3" style="padding-left: 40px; padding-top:6px;">
|
<div class="allchk">
|
<label>
|
<div class="icheckbox_square-green" style="position: relative;">
|
<input style="position: absolute; opacity: 0;" type="checkbox" value="">
|
<ins class="iCheck-helper" style="background: rgb(255, 255, 255); margin: 0px; padding: 0px; border: 0px; border-image: none; left: 0%; top: 0%; width: 100%; height: 100%; display: block; position: absolute; opacity: 0;"></ins>
|
</div> <i></i> 全选
|
</label>
|
</div>
|
</div>
|
<div class="col-sm-9" style="text-align:center;">
|
<div class="col-sm-8">
|
<h3>人员列表</h3>
|
</div>
|
<div class="col-sm-4">
|
<div class="input-group">
|
<input type="text" class="form-control" placeholder="请输入姓名" id="usersearch">
|
<!-- /btn-group -->
|
</div>
|
</div>
|
|
</div>
|
</div>
|
</div>
|
<div id="userlist" class="ibox-content" style="overflow-y:scroll;">
|
<div class="row">
|
@foreach (var item in listType)
|
{
|
<div class="col-sm-12 col-md-12">
|
<div class="checkbox i-checks parentchk" data-pageid="@item.CodeSn">
|
<label style="font-weight:bold;">
|
<div class="icheckbox_square-green" data-pageid="@item.CodeSn" style="position: relative;">
|
<input style="position: absolute; opacity: 0;" type="checkbox" value="">
|
<ins class="iCheck-helper" style="background: rgb(255, 255, 255); margin: 0px; padding: 0px; border: 0px; border-image: none; left: 0%; top: 0%; width: 100%; height: 100%; display: block; position: absolute; opacity: 0;"></ins>
|
</div> <i></i> @item.Comments
|
</label>
|
</div>
|
</div>
|
|
if (dicTypeUser.ContainsKey(item.CodeSn) && dicTypeUser[item.CodeSn].Count > 0)
|
{
|
foreach (var mUser in dicTypeUser[item.CodeSn])
|
{
|
<div class="col-sm-3 col-md-3">
|
<div class="checkbox i-checks user">
|
<label>
|
<div class="icheckbox_square-green" data-pageid="@mUser.Id" data-parentid="@mUser.DeptId" style="position: relative;">
|
<input style="position: absolute; opacity: 0;" type="checkbox" value="">
|
<ins class="iCheck-helper" style="background: rgb(255, 255, 255); margin: 0px; padding: 0px; border: 0px; border-image: none; left: 0%; top: 0%; width: 100%; height: 100%; display: block; position: absolute; opacity: 0;"></ins>
|
</div> <i></i><span class="uname">@mUser.UserName</span>
|
</label>
|
</div>
|
</div>
|
}
|
}
|
}
|
</div>
|
</div>
|
</div>
|
<div class="ibox-content" id="top" style="z-index:100; position:fixed;height:50px;left:0px; width:100%;bottom:0;text-align: right; padding-top:8px;">
|
<div class="" style="float:right;" data-bootstro-width="500px" data-bootstro-content="功能按钮:“停用”,“保存”,“新增”等操作">
|
|
<a style=" " class="btn btn-success" onclick="SaveUserRole()">
|
<i class="glyphicon glyphicon-ok"></i> <span class="bold">保存设置</span>
|
</a>
|
</div>
|
</div>
|
<script>
|
var sJson = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(dicUserRole))';
|
var dicUserRole = eval('(' + sJson + ')');
|
$(function () {
|
$('#userlist').css('height', document.body.clientHeight - 85);
|
$('#listrole').css('height', document.body.clientHeight - $('.rolesearch').height()-50);
|
$('.allchk').bind('click', function () {
|
if ($(this).find('.icheckbox_square-green').hasClass('checked')) {
|
$(this).find('.icheckbox_square-green').removeClass('checked');
|
$('.i-checks .icheckbox_square-green').removeClass('checked');
|
}
|
else {
|
$(this).find('.icheckbox_square-green').addClass('checked');
|
$('.i-checks .icheckbox_square-green').addClass('checked');
|
}
|
return false;
|
});
|
|
|
$('.parentchk').bind('click', function () {
|
$(this).find('.icheckbox_square-green').toggleClass('checked');
|
var nparentid = $(this).attr('data-pageid');
|
if ($(this).find('.icheckbox_square-green').hasClass('checked')) {
|
$('div[data-parentid="' + nparentid + '"]').addClass('checked');
|
}
|
else {
|
$('div[data-parentid="' + nparentid + '"]').removeClass('checked');
|
}
|
return false;
|
});
|
|
$('.user').bind('click', function () {
|
$(this).find('.icheckbox_square-green').toggleClass('checked');
|
var nparentid = $(this).find('.icheckbox_square-green').attr('data-parentid');
|
if (nparentid && $(this).find('.icheckbox_square-green').hasClass('checked')) {
|
$('.parentchk').find('div[data-pageid="' + nparentid + '"]').addClass('checked');
|
}
|
return false;
|
});
|
|
$('#usersearch').bind('keyup', function () {
|
var sname = $.trim($('#usersearch').val());
|
$.each($('.user'), function (i, r) {
|
if (sname == '')
|
{
|
$(this).parent().show();
|
}
|
else
|
{
|
var sn = $.trim($(this).find('.uname').text());
|
if (sn.indexOf(sname) >= 0) {
|
$(this).parent().show();
|
}
|
else {
|
var n = $(this).find('.checked').attr('data-pageid');
|
if (n && n != undefined && n > 0) {
|
$(this).parent().show();
|
}
|
else {
|
$(this).parent().hide();
|
}
|
}
|
}
|
});
|
});
|
|
$('.node-tree').bind('click', function () {
|
var nRoleID = $(this).attr('data-roleid');
|
var aryUserRole = dicUserRole[nRoleID];
|
$('.icheckbox_square-green').removeClass('checked');
|
if (aryUserRole != null && aryUserRole.length > 0) {
|
$.each(aryUserRole, function (i, r) {
|
$('.user').find('.icheckbox_square-green[data-pageid="' + r + '"]').addClass('checked');
|
var nparentid = $('.user').find('.icheckbox_square-green[data-pageid="' + r + '"]').attr('data-parentid');
|
if (nparentid && $('.user').find('.icheckbox_square-green[data-pageid="' + r + '"]').hasClass('checked')) {
|
$('.parentchk').find('div[data-pageid="' + nparentid + '"]').addClass('checked');
|
}
|
});
|
}
|
$('.node-tree').removeClass('text-navy');
|
$(this).addClass('text-navy');
|
});
|
|
$('#rolesearch').bind('keyup', function () {
|
var sRoleName = $.trim($(this).val());
|
if (sRoleName == '') {
|
$('.node-tree').show();
|
}
|
else {
|
$('.node-tree').each(function () {
|
var sName = $(this).attr('data-name');
|
if (sName.indexOf(sRoleName) != -1) {
|
$(this).show();
|
}
|
else {
|
$(this).hide();
|
}
|
});
|
}
|
});
|
});
|
|
var SaveUserRole = function () {
|
var nRoleID = $('#tree .text-navy').attr('data-roleid');
|
var aryUserId = [];
|
$('.user').find('.checked').each(function () {
|
var nPageid = $(this).attr('data-pageid');
|
aryUserId.push(nPageid);
|
});
|
var error = "";
|
if (aryUserId.length == 0) {
|
toastr.warning("请选择人员");
|
return;
|
}
|
if (nRoleID == undefined || parseInt(nRoleID) == 0) {
|
toastr.warning("请选择角色");
|
return;
|
}
|
|
var mUserRole = {
|
roleid: nRoleID,
|
usersid: aryUserId.join(',')
|
};
|
$.ajax({
|
url: "/PltUserRole/Save",
|
data: mUserRole,
|
dataType: 'json',
|
type: 'Post',
|
success: function (data) {
|
if (data.Result) {
|
dicUserRole[nRoleID] = aryUserId;
|
toastr.success("保存成功");
|
}
|
else {
|
toastr.warning(data.Message);
|
}
|
},
|
error: function () {
|
|
},
|
complete: function () {
|
|
}
|
});
|
|
}
|
</script>
|