📖 File Reader
<?php /*a:3:{s:55:"D:\XiangMu\hecheng\app\admin\view\config\menu_list.html";i:1739781263;s:49:"D:\XiangMu\hecheng\app\admin\view\public\top.html";i:1723193413;s:49:"D:\XiangMu\hecheng\app\admin\view\public\vue.html";i:1677287072;}*/ ?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link href="/public/layui-v2.9.14/layui/css/layui.css" rel="stylesheet">
<style>
element.style {
height: 1020px!important;
}
.demoTable {
padding:1rem 1rem 0rem 1rem;
}
</style>
</head>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="renderer" content="webkit" />
<title><?php echo htmlentities($config['name']); ?></title>
<meta name="keywords" content="" />
<meta name="description" content=""/>
<!--[if lt IE 9]>
<meta http-equiv="refresh" content="0;ie.html" />
<![endif]-->
<link rel="shortcut icon" href="favicon.ico" />
<link href="/public/admin/css/jquery.contextMenu.min.css" rel="stylesheet"/>
<link href="/public/admin/css/font-awesome.css?v=4.4.0" rel="stylesheet">
<link href="/public/admin/css/plugins/jsTree/style.min.css" rel="stylesheet">
<link rel="shortcut icon" href="favicon.ico">
<link href="/public/admin/css/plugins/iCheck/custom.css" rel="stylesheet">
<link href="/public/admin/css/plugins/summernote/summernote.css" rel="stylesheet" />
<link href="/public/admin/css/plugins/summernote/summernote-bs3.css" rel="stylesheet" />
<link href="/public/admin/css/bootstrap.min.css?v=3.3.7" rel="stylesheet">
<link href="/public/admin/css/font-awesome.css?v=4.4.0" rel="stylesheet">
<link href="/public/admin/css/style.css?v=4.1.0" rel="stylesheet">
<script src="/public/layui-v2.9.14/layui/layui.js"></script>
<script src="/public/admin/js/jquery-2.2.0.min.js"></script>
<script>
layui.use('upload', function(){
var $ = layui.jquery,upload = layui.upload;
});
</script>
<style>
/*分页样式*/
.pagination{width: 100%;display: flex;align-items: center;justify-content: flex-end;}
</style>
</head>
<script src="/public/admin/js/jquery-2.2.0.min.js"></script>
<script src="/public/vue/vue.js"></script>
<script src="/public/vue/axios.min.js"></script>
<script src="/public/vue/vue-resource.min.js"></script>
<script src="/public/vue/request_admin.js"></script>
<body>
<!--搜索栏-->
<div class="demoTable">
</div>
<!--表格处理-->
<div style="margin-left:1.1rem!important;margin-right:1.1rem!important;">
<table class="layui-hide" id="demo" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="add" style="width: 100px;">创建</button>
</div>
</script>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
<script type="text/html" id="switchTpl">
<input type="checkbox" name="is_show" value="{{d.id}}" lay-skin="switch" lay-text="是|否" lay-filter="is_show_Demo" {{d.is_show == 1 ? 'checked' : '' }}>
</script>
<script src="/public/layui-v2.9.14/layui/layui.js"></script>
<script>
layui.use(function(){
//定义全局变量
window.check_reload = function () {
table.reload('demo');
return true;
};
// 得到需要的内置组件
var treeTable = layui.treeTable;
var table = layui.table
,form = layui.form; //表格
var dropdown = layui.dropdown; //下拉菜单
// 执行一个 table 实例
treeTable.render({
elem: '#demo'
,height: 700
,url: "<?php echo Url('Config/menu_list_ajax'); ?>" //数据接口(此处为静态数据,仅作演示)
,tree: {
//异步加载子节点
async: {
enable: true,
format: function (trData, options, callback) {
var id = trData.id;
req_post('/admin/Config/menu_list_ajax',{'superior_id':id,'type_yibu':1}).then(res=>{
if (res.code == 200){
callback(res.data);
}
});
}
},
view: {
'showIcon':false,
'icon':'',
'iconLeaf':'<i class="layui-icon layui-icon-search"></i>'
},
customName:{
'name':'name',//在那个字段上显示展开折叠图标
},
}
,page: true //开启分页
,limit:20
//,toolbar: 'default' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
,toolbar: '#toolbarDemo' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
,defaultToolbar: ['filter']//自定义右侧
,totalRow: false //开启合计行
,cols: [[ //表头
{type: 'checkbox', fixed: 'left'}
,{field: 'id', title: 'ID', width:80, sort: true}
,{field: 'name', title: '名称', width:350}
,{field: 'url', title: '连接', width:290,edit:'url'}
,{field: 'is_sold', title:'显示', width:100,align: 'center', templet: '#switchTpl', unresize: true}
,{field: 'sort', title: '排序', width:100,edit:'text',align:'center',sort: true}
,{field: 'is_left', title: '类型', width:90,align: "center",templet:is_left}
,{field: 'role_type', title: '展示权限', width:100,align: "center",templet:role_type}
,{field: 'add_time', title: '创建时间', width: 155,align: "center",sort: true}
,{field: 'describe', title: '描述', width:230,edit:'describe',fixed: 'right',templet:describe}
,{fixed: 'right', title: '操作', width: 150, align:'center', toolbar: '#barDemo'}
]],response: {
statusCode: 200 //重新规定成功的状态码为 200,table 组件默认为 0
}
});
/*搜索处理*/
var $ = layui.$, active = {
reload: function(){
//执行重载
table.reload('demo', {
page: {
curr: 1 //重新从第 1 页开始
}
,where: {
keyword:$('#keyword').val(),
}
});
}
};
$('.demoTable .layui-btn').on('click', function(){
var type = $(this).data('type');
active[type] ? active[type].call(this) : '';
});
/*设置字段*/
function is_left(data){
var is_left = data.is_left;
if (is_left == 0){
return "<span style='color:red;'>操作权限</span>"
}else{
return "<span style='color:#009688;'>菜单栏</span>"
}
}
function role_type(data){
if (data.role_type == 0){
return '<button type="button" class="layui-btn layui-btn-xs layui-btn-radius" style="width: 60px;font-size:11px;height: 20px;line-height: 19px;">全部角色</button>';
}else if(data.role_type == 1){
return '<button type="button" class="layui-btn layui-btn-xs layui-btn-radius" style="width: 60px;font-size:11px;height: 20px;line-height: 19px;background-color: #5fb878;">平台管理员</button>';
}else if(data.role_type == 2){
return '<button type="button" class="layui-btn layui-btn-xs layui-btn-radius" style="width: 70px;font-size:11px;height: 20px;line-height: 19px;background-color: #1e9fff;">店铺管理员</button>';
}
}
function describe(data){
if (data.describe != ''){
return "<a style='color:red;'>"+data.describe+"</a>"
}else{
return "<a></a>"
}
}
/*是否显示*/
form.on('switch(is_show_Demo)', function(obj){
console.log(obj.elem.checked);
if (obj.elem.checked == true){
var value = 1;
}else{
var value = 0;
}
req_post("<?php echo Url('Config/config_menu_field_update'); ?>",{'id':this.value,'field_name':'is_show','value':value}).then(res=>{
});
});
/*单元格编辑监听事件*/
table.on('edit(test)',function(obj){
var field_name = obj.field;
var value = '';
if (field_name == 'sort'){
value = obj.data.sort;
if (value != 0){
var reg = /(^-?\d+$)/;
if(!reg.test(value)){
parent.layer.msg('排序格式错误', {shift: 2});
return false;
}
}
}else if(field_name == 'describe'){
value = obj.data.describe;
}else if(field_name == 'url'){
value = obj.data.url;
}
req_post("<?php echo Url('Config/config_menu_field_update'); ?>",{'id':obj.data.id,'field_name':field_name,'value':value}).then(res=>{
if (res.code == 200){
layer.msg(res.msg, {
icon: 1,
time: 1800,
end: function () {
}
})
}
});
})
/*头工具栏事件*/
table.on('toolbar(test)', function(obj){
var checkStatus = table.checkStatus(obj.config.id)
,data = checkStatus.data; //获取选中的数据
switch(obj.event){
case 'add':
window.location.href="/admin/Config/menu_update";
break;
};
});
/*表格工具事件*/
table.on('tool(test)', function(obj){ //注:tool 是工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值"
var data = obj.data //获得当前行数据
,layEvent = obj.event; //获得 lay-event 对应的值
if(layEvent === 'edit'){
window.location.href="/admin/Config/menu_update?id="+data.id;
}else if(layEvent === 'del'){
parent.layer.confirm('您确定删除么?删除成功不可恢复!', {
btn: ['确定', '取消'], //按钮
shade: 0.5 //不显示遮罩
}, function () {
//执行关闭
var index = parent.layer.confirm();
parent.layer.close(index);
req_post("<?php echo Url('Config/menu_del'); ?>",{'id':data.id}).then(res=>{
if (res.code == 200){
layer.msg(res.msg, {
icon: 1,
time: 1800,
end: function () {
//table.reload('demo');
}
})
}
});
}, function () {
parent.layer.msg('已取消', {shift: 2});
});
}
});
});
/*表单提交成功*/
function Fromsucceed(){
check_reload();
}
</script>
</body>
</html>