layui.use(['laytpl', 'table', 'jquery', 'form', 'miniTab', 'tree', 'xmSelect', 'laydate'], function () { let $ = layui.jquery, form = layui.form, table = layui.table, layer = layui.layer, laydate = layui.laydate, xmSelect = layui.xmSelect, miniTab = layui.miniTab; /**** index begin ***/ //index页面 if ($('.location-index-page').length > 0) { miniTab.listen(); laydate.render({ elem: '#publish-date', }); // 渲染表格 let listUrl = $('#table-container').data('url'); let insTb = table.render({ elem: '#table-container', toolbar: '#toolbar-tpl', defaultToolbar: ['filter', 'exports', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可 title: '搜索' , layEvent: 'search' , icon: 'layui-icon-search' }], url: listUrl, method: 'post', even: true, limits: [10,20,50,100,200,500,1000], request: { pageName: 'page', limitName: 'size', }, parseData: function (res) { return { "code": res.code, //解析接口状态 "msg": res.msg, //解析提示文本 "count": res.data.total, //解析数据长度 "data": res.data.list //解析数据列表 }; }, page: true, cols: [[ {type: 'checkbox'}, {field: 'id', minWidth: 80, title: '编号ID'}, {field: 'title', minWidth: 200, title: '标题'}, {field: 'category', minWidth: 100, title: '栏目'}, {field: 'published_at', minWidth: 200, title: '发布时间'}, {field: 'sort', minWidth: 60, title: '排序', edit: 'text'}, {templet: '#row-hot', field: 'hot', minWidth: 120,align: 'center', title: '热门'}, {templet: '#row-top', field: 'top', minWidth: 120,align: 'center', title: '置顶'}, {templet: '#row-operate', minWidth: 250, field: 'right', align: 'center', title: '操作', fixed: 'right'} ]], done: function () { Tools.setInsTb(insTb); } }); let modifyUrl = $('#row-modify').data('url'); // switch变更 function changeSwitch(filter) { form.on('switch(' + filter + ')', function (obj) { let val = obj.elem.checked ? 1 : 0; $.post(modifyUrl, {id: this.value, field: this.name, value: val}, function (res) { layer.msg(res.msg) if (res.code !== 0) { //操作不成功则刷新页面 insTb.reload(); } }) }); } // 监听搜索操作 form.on('submit(data-search-btn)', function (data) { let categoryIds = []; let checkData = $('#ids-data').val(); categoryIds = checkData.split(','); data.field.category_id = categoryIds; //执行搜索重载 table.reload('table-container', { page: {curr: 1} , where: {searchParams: data.field} }, 'data'); return false; }); //监听行工具条 table.on('tool(table-container)', function (obj) { let data = obj.data; let layEvent = obj.event; let url = $($(this).context).data('href'); let title = $($(this).context).data('title'); let width = $($(this).context).data('width') ? $($(this).context).data('width') : '100%'; let height = $($(this).context).data('height') ? $($(this).context).data('height') : '100%'; let insTb = Tools.getInsTb(); switch (layEvent) { // 行 删除 case 'del': let ids = [data.id]; delRow(url, ids, insTb); return false; //其他 默认为打开弹出层 default: openLayer(url, title, width, height); return false; } }); changeSwitch('changeRecommend');//监听推荐改变 changeSwitch('changeTop');//监听置顶 changeSwitch('changeHot');//监听热门 } /*** index end ***/ // add和edit页面 if ($('.location-operate-page').length > 0) { let parentMenu = $('#parent-menu'); let menuList = parentMenu.data('menu') ? parentMenu.data('menu') : []; let showList = parentMenu.data('show') ? parentMenu.data('show') : [];//各栏目 可展示字段列表 let xmSelectDisabled = parentMenu.data('disabled') ? parentMenu.data('disabled') : false;//是否禁止选中 xmSelect.render({ el: '#parent-menu', paging: false, autoRow: true, radio: true, clickClose: true, name: 'category_id', tips: '请选择栏目', direction: 'auto', height: 'auto', disabled:xmSelectDisabled, model: { icon: 'hidden', }, prop: { name: 'title', value: 'id', }, tree: { show: true, strict: false, clickCheck: true, expandedKeys: true, clickExpand: false }, theme: { color: '#1e84ff', }, data: menuList, on: function (data) { //arr: 当前多选已选中的数据 let arr = data.arr; //change, 此次选择变化的数据,数组 let change = data.change; //isAdd, 此次操作是新增还是删除 // let isAdd = data.isAdd; // console.log(arr, 'arr') // console.log(change, 'change') // console.log('已有: '+arr.length+' 变化: '+change.length+', 状态: ' + isAdd, 'desc') if (arr.length > 0 && change.length > 0) { //切换 $('.field-div').hide();//全部隐藏 let currentCateId = arr[0].id;//当前栏目ID // if(archiveCoverSize[currentCateId]!=undefined&&archiveCoverSize[currentCateId].archive_cover_size){ // $('#archive_cover_size').text(archiveCoverSize[currentCateId].archive_cover_size) // }else{ // $('#archive_cover_size').text('请上传合适尺寸的图片') // } let showFields = showList[currentCateId] ? showList[currentCateId] : []; // console.log(showFields, 'show current') // 显示选择栏目的字段 $.each(showFields, function (index, val) { $('.current-field-' + val).show(); }) } }, }); } });