<div class="clear-float height_100p">
|
<div class="float_l left_tree_wrap">
|
<ul id="resource_tree_wrap"></ul>
|
</div>
|
<div class="float_l folding_partition_line">
|
<img src="image/hide_left_tree.png" width="19" class="operation_left_tree_img">
|
</div>
|
<div class="float_l form_and_table_wrap">
|
<form class="layui-form">
|
<div class="layui-form-item">
|
<div class="layui-inline">
|
<label class="layui-form-label">资源编号:</label>
|
<div class="layui-input-inline">
|
<input type="text" name="resourceCode" autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label">资源名称:</label>
|
<div class="layui-input-inline">
|
<input type="text" name="resourceName" autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label">系统名称:</label>
|
<div class="layui-input-inline">
|
<select name="clientCode" id="clientCode_select" lay-search>
|
<option value="">请选择</option>
|
</select>
|
</div>
|
</div>
|
<div class="layui-inline hide form_toggle_search_field_unit">
|
<label class="layui-form-label">状态:</label>
|
<div class="layui-input-inline">
|
<select name="state">
|
<option value="">请选择</option>
|
<option value="0">显示</option>
|
<option value="1">隐藏</option>
|
</select>
|
</div>
|
</div>
|
<div class="layui-inline hide form_toggle_search_field_unit">
|
<label class="layui-form-label">资源类型:</label>
|
<div class="layui-input-inline">
|
<select name="resourceType">
|
<option value="">请选择</option>
|
<option value="0">菜单</option>
|
<option value="1">功能</option>
|
</select>
|
</div>
|
</div>
|
<div class="layui-inline">
|
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
|
<button class="layui-btn" lay-submit lay-filter="resource_search" id="resource_mgt_trigger_search_btn">搜索</button>
|
<span class="search_field_spread_toggle_btn">
|
<span class="spread__toggle_inner_text">展开</span>
|
<i class="layui-icon search_field_spread_toggle_icon1"></i>
|
<i class="layui-icon search_field_spread_toggle_icon2 hide"></i>
|
</span>
|
</div>
|
</div>
|
</form>
|
<button class="layui-btn page_add_btn" id="add_resource" style="margin-bottom: 20px;"><i class="layui-icon"></i>新增资源</button>
|
<table id="resource_management_table" lay-filter="resource_management_table"></table>
|
</div>
|
</div>
|
|
<script>
|
window.g_resource_parentCode = "";
|
|
function resource_tree_render(){
|
$("#resource_tree_wrap").empty();
|
layui.use('tree', function(){
|
$.ajax({
|
type : 'POST',
|
url : base_url+"/sso-manage/resource/resourceTree",
|
dataType : 'json',
|
contentType: "application/json",
|
success : function(res){
|
|
if(res.resultCode == 1){
|
layui.tree({
|
elem: '#resource_tree_wrap' //传入元素选择器
|
,nodes: res.data.list
|
,click: function(node){
|
$("#resource_tree_wrap a").click(function () {
|
$("#resource_tree_wrap a").removeClass("text_red");
|
$(this).addClass("text_red");
|
});
|
// console.log('节点数据',node) //node即为当前点击的节点数据
|
window.g_resource_parentCode = node.resourceCode;
|
$("#resource_mgt_trigger_search_btn").trigger("click");
|
}
|
});
|
}else{
|
layer.msg(res.errorDesc);
|
}
|
}
|
});
|
});
|
}
|
resource_tree_render();
|
</script>
|
|
<script>
|
layui.use(['table', 'element', 'form'], function () {
|
var index = layer.load(0, {time: 5 * 1000});
|
var table = layui.table;
|
var form = layui.form;
|
|
//系统枚举
|
$.ajax({
|
type: 'POST',
|
url: base_url+"/sso-manage/ssoClient/selectByName",
|
dataType: 'json',
|
contentType: "application/json",
|
data:JSON.stringify({
|
|
}),
|
success: function (res) {
|
|
if(res.resultCode == 1){
|
$("#clientCode_select").append(template('resource_type_select_tpl', res.data));
|
form.render();
|
}else{
|
layer.msg(res.errorDesc);
|
}
|
}
|
});
|
|
|
//table渲染
|
var resource_mgt_table = table.render({
|
elem: '#resource_management_table'
|
, id: 'resource_management_table'
|
, url: base_url+'/sso-manage/resource/search' //数据接口
|
, method: 'post'
|
,contentType: 'application/json'
|
,request: {
|
pageName: 'pageNum' //页码的参数名称,默认:page
|
,limitName: 'pageSize' //每页数据量的参数名,默认:limit
|
}
|
, page: true //开启分页
|
, limit: 10
|
, done: function (res, curr, count) {
|
var element = layui.element;
|
element.init();
|
form.render();
|
layer.close(index);
|
|
}
|
,parseData: function(res){ //res 即为原始返回的数据
|
return {
|
"code": res.resultCode, //解析接口状态
|
"msg": res.errorDesc, //解析提示文本
|
"count": res.total, //解析数据长度
|
"data": res.data.list //解析数据列表
|
};
|
}
|
, response: {
|
statusName: 'code' //数据状态的字段名称,默认:code
|
, statusCode: '1' //成功的状态码,默认:0
|
, msgName: 'msg' //状态信息的字段名称,默认:msg
|
, countName: 'count' //数据总数的字段名称,默认:count
|
, dataName: 'data' //数据列表的字段名称,默认:data
|
}
|
, cols: [[
|
{type: 'numbers', title: '序号', width: 60}
|
, {title: '资源编码',templet: '#resource_view_tpl', width: 150}
|
, {field: 'resourceName', title: '资源名称', width: 150}
|
, {field: 'clientName', title: '系统名称', width: 120}
|
, {field: 'resourceUrl', title: '资源URL地址',minWidth:300}
|
, {field: 'parentName', title: '父资源', width: 100}
|
, { title: '资源类型',templet: '#resource_type_tpl', width: 100}
|
, { title: '状态', templet: '#resource_state_tpl', width: 80}
|
, {title: '资源管理', templet: '#resource_operation_tpl', width: 150}
|
]]
|
});
|
|
// 搜索
|
form.on('submit(resource_search)',function (data) {
|
data.field.parentCode = window.g_resource_parentCode;
|
var index = layer.load(0,{time:5*1000});
|
resource_mgt_table.reload({
|
where:{params:data.field},
|
done: function (res, curr, count) {
|
layer.close(index);
|
|
}
|
});
|
return false;
|
});
|
|
// 新增
|
$("#add_resource").click(function () {
|
$.get('views/jurisdiction/resource_add_modal.html', function(str){
|
window.resource_add_modal_index = layer.open({
|
type: 1
|
,title :'新增资源'
|
,content: str //注意,如果str是object,那么需要字符拼接。
|
,area: '700px'
|
});
|
});
|
});
|
|
table.on('tool(resource_management_table)',function (obj) {
|
var data = obj.data;
|
var event = obj.event;
|
if(event == 'show'){
|
// 显示
|
$.ajax({
|
type : 'POST',
|
url : base_url+"/sso-manage/resource/modifyState",
|
dataType : 'json',
|
contentType: "application/json",
|
data:JSON.stringify({
|
params:{
|
"id":data.id,
|
"state":0
|
}
|
}),
|
success : function(res){
|
|
if(res.resultCode == 1){
|
layer.msg("显示成功");
|
$("#resource_mgt_trigger_search_btn").trigger("click");
|
}else{
|
layer.msg(res.errorDesc);
|
}
|
}
|
});
|
}else if(event == 'hide'){
|
// 隐藏
|
$.ajax({
|
type : 'POST',
|
url : base_url+"/sso-manage/resource/modifyState",
|
dataType : 'json',
|
contentType: "application/json",
|
data:JSON.stringify({
|
params:{
|
"id":data.id,
|
"state":1
|
}
|
}),
|
success : function(res){
|
|
if(res.resultCode == 1){
|
layer.msg("隐藏成功");
|
$("#resource_mgt_trigger_search_btn").trigger("click");
|
}else{
|
layer.msg(res.errorDesc);
|
}
|
}
|
});
|
}else if(event == 'edit'){
|
// 修改
|
window._resource_edit_id = data.id;
|
$.get('views/jurisdiction/resource_edit_modal.html', function(str){
|
window.resource_edit_modal_index = layer.open({
|
type: 1
|
,title :'资源修改'
|
,content: str //注意,如果str是object,那么需要字符拼接。
|
,area: '700px'
|
});
|
});
|
}else if(event == 'resource_view'){
|
// 查看
|
window._resource_view_id = data.id;
|
$.get('views/jurisdiction/resource_view_modal.html', function(str){
|
window.resource_view_modal_index = layer.open({
|
type: 1
|
,title :'查看'
|
,content: str //注意,如果str是object,那么需要字符拼接。
|
,area: '700px'
|
});
|
});
|
}
|
});
|
|
});
|
</script>
|
|
<script type="text/html" id="resource_type_tpl">
|
{{# if(d.resourceType == 0){ }}
|
菜单
|
{{# } else if(d.resourceType == 1){ }}
|
功能
|
{{# } }}
|
</script>
|
|
<script type="text/html" id="resource_state_tpl">
|
{{# if(d.state == 0){ }}
|
显示
|
{{# } else if(d.state == 1){ }}
|
隐藏
|
{{# } }}
|
</script>
|
|
<script type="text/html" id="resource_operation_tpl">
|
{{# if(d.state == 1){ }}
|
<a class="tool_event_textbtn" lay-event="show">显示</a>
|
{{# } else if(d.state == 0){ }}
|
<a class="tool_event_textbtn" lay-event="hide">隐藏</a>
|
{{# } }}
|
<a class="tool_event_textbtn" lay-event="edit">修改</a>
|
</script>
|
|
<script type="text/html" id="resource_view_tpl">
|
<span class="tool_event_textbtn" lay-event="resource_view">{{d.resourceCode}}</span>
|
</script>
|
|
<script id="resource_type_select_tpl" type="text/html">
|
{{each list value index}}
|
<option value="{{value.clientCode}}">{{value.clientName}}</option>
|
{{/each}}
|
</script>
|
|
<script id="resource_parentCode_select_tpl" type="text/html">
|
{{each list value index}}
|
<option value="{{value.resourceCode}}">{{value.resourceName}}</option>
|
{{/each}}
|
</script>
|