$(function () { $("#jqGrid").jqGrid({ url: '../mkcentermenu/list', datatype: "json", colModel: [ {label: 'menuStoreRealId', name: 'menuStoreRealId', index: 'menuStoreRealId', key: true, hidden: true}, {label: '菜单名称', name: 'menuName', index: 'menu_name', width: 180, align: 'center'}, {label: '菜单描述', name: 'menuDetail', index: 'menu_detail', width: 280, align: 'center'}, {label: '菜单图片链接', name: 'picUrl', index: 'pic_url', width: 600, align: 'center'}, {label: '菜单跳转url', name: 'menuUrl', index: 'menu_url', width: 380, align: 'center'}, {label: '所属三方商户', name: 'thirdPartyMerchName', index: 'thirdPartyMerchName', width: 180, align: 'center'}, {label: '所属门店', name: 'storeName', index: 'storeName', width: 180, align: 'center'}, {label: '是否有效', name: 'isValid', index: 'is_valid', width: 80, align: 'center', formatter: function (value) { if (value == '0') { return '有效'; } else if (value == '1') { return '无效'; } return ''; }}, {label: '备注', name: 'note', index: 'note', width: 160, align: 'center'}, {label: '创建人编号', name: 'createrSn', index: 'creater_sn', width: 170, align: 'center'}, {label: '创建时间', name: 'createTime', index: 'create_time', width: 160, align: 'center', formatter: function (value) { return transDate(value, 'yyyy-MM-dd hh:mm:ss'); }}, {label: '修改人编号', name: 'moderSn', index: 'moder_sn', width: 170, align: 'center'}, {label: '修改时间', name: 'modTime', index: 'mod_time', width: 160, align: 'center', formatter: function (value) { return transDate(value, 'yyyy-MM-dd hh:mm:ss'); }}, { label: '操作', width: 260, align: 'center', sortable: false, formatter: function (value, col, row) { let htmlStr = ""; htmlStr = "" ; return htmlStr; }} ], viewrecords: true, height: 550, rowNum: 10, rowList: [10, 30, 50], rownumbers: true, rownumWidth: 25, autowidth: true, shrinkToFit: false, autoScroll: true, //开启水平滚动条 width: 1500, multiselect: true, pager: "#jqGridPager", jsonReader: { root: "page.list", page: "page.currPage", total: "page.totalPage", records: "page.totalCount" }, prmNames: { page: "page", rows: "limit", order: "order" }, gridComplete: function () { $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "scroll"}); } }); }); //菜单树 var menu_ztree; var menu_setting = { data: { simpleData: { enable: true, idKey: "centerMenuId", pIdKey: "parentId", rootPId: -1 }, key: { url: "nourl" } }, check: { enable: true, nocheckInherit: true } }; let vm = new Vue({ el: '#rrapp', data: { showList: true, showViewList: false, showInfoList: true, title: null, mkCenterMenu: {}, mkCenterMenuStoreReal:{}, ruleValidate: { name: [ {required: true, message: '名称不能为空', trigger: 'blur'} ] }, q: { menuName: '' }, thirdMerchantBizList: [], storeList:[] }, methods: { query: function () { vm.reload(); }, add: function () { vm.showList = false; vm.showViewList = true; vm.showInfoList = true; vm.title = "新增"; vm.mkCenterMenu = {isValid: 0}; }, update: function (event) { let id = getSelectedRow(); if (id == null) { return; } vm.showList = false; vm.showViewList = true; vm.showInfoList = true; vm.title = "修改"; vm.getThirdMerchantBizList(); vm.getInfo(id) }, saveOrUpdate: function (event) { let url = vm.mkCenterMenu.id == null ? "../mkcentermenu/save" : "../mkcentermenu/update"; $.ajax({ type: "POST", url: url, contentType: "application/json", data: JSON.stringify(vm.mkCenterMenu), success: function (r) { if (r.code === 0) { alert('操作成功', function (index) { vm.reload(); }); } else { alert(r.msg); } } }); }, addMenuStoreReal: function () { vm.showList = true; vm.showViewList = true; vm.showInfoList = false; vm.title = "新增门店营销菜单"; vm.mkCenterMenuStoreReal = {isValid: 0,storeId:'',thirdMerchSn:''}; vm.thirdMerchantBizList = []; vm.storeList = []; vm.getStoreList(); vm.getThirdMerchantBizList(); vm.getMenuTree(null); }, updateMenuStoreReal: function (menuStoreRealId) { if (menuStoreRealId == null) { return; } vm.showList = true; vm.showViewList = true; vm.showInfoList = false; vm.title = "修改门店营销菜单"; vm.getStoreList(); vm.getThirdMerchantBizList(); vm.getMenuTree(menuStoreRealId); }, getCenterMenuStoreReal: function (id) { $.get("../mkcentermenustorereal/info/"+id, function (r) { vm.mkCenterMenuStoreReal = r.mkCenterMenuStoreReal; //勾选角色所拥有的菜单 var menuIds = r.mkCenterMenuStoreReal.centerMenuIdList; if(menuIds.length > 0){ for (var i = 0; i < menuIds.length; i++) { var node = menu_ztree.getNodeByParam("centerMenuId", menuIds[i]); menu_ztree.checkNode(node, true, false); } } }); }, saveOrUpdateMenuStoreReal: function (event) { //获取选择的菜单 var nodes = menu_ztree.getCheckedNodes(true); var menuIdList = new Array(); for (var i = 0; i < nodes.length; i++) { menuIdList.push(nodes[i].centerMenuId); } vm.mkCenterMenuStoreReal.centerMenuIdList = menuIdList; let url = vm.mkCenterMenuStoreReal.id == null ? "../mkcentermenustorereal/save" : "../mkcentermenustorereal/save"; $.ajax({ type: "POST", url: url, contentType: "application/json", data: JSON.stringify(vm.mkCenterMenuStoreReal), success: function (r) { if (r.code === 0) { alert('操作成功', function (index) { vm.reload(); }); } else { alert(r.msg); } } }); }, handleSubmitMenuStoreReal: function (name) { handleSubmitValidate(this, name, function () { vm.saveOrUpdateMenuStoreReal() }); }, handleResetMenuStoreReal: function (name) { handleResetForm(this, name); }, getMenuTree: function (menuStoreRealId) { //加载菜单树 $.get("../mkcentermenu/perms", function (r) { menu_ztree = $.fn.zTree.init($("#menuTree"), menu_setting, r.list); //展开所有节点 menu_ztree.expandAll(true); if (menuStoreRealId != null) { vm.getCenterMenuStoreReal(menuStoreRealId); } }); }, del: function (event) { let ids = getSelectedRows(); if (ids == null){ return; } confirm('确定要删除选中的记录?', function () { $.ajax({ type: "POST", url: "../mkcentermenu/delete", contentType: "application/json", data: JSON.stringify(ids), success: function (r) { if (r.code == 0) { alert('操作成功', function (index) { $("#jqGrid").trigger("reloadGrid"); }); } else { alert(r.msg); } } }); }); }, delMenuStoreReal: function (event) { let ids = getSelectedRows(); if (ids == null){ return; } confirm('确定要删除选中的记录?', function () { $.ajax({ type: "POST", url: "../mkcentermenustorereal/delete", contentType: "application/json", data: JSON.stringify(ids), success: function (r) { if (r.code == 0) { alert('操作成功', function (index) { $("#jqGrid").trigger("reloadGrid"); }); } else { alert(r.msg); } } }); }); }, getThirdMerchantBizList: function() { $.get("../thirdmerchantbiz/queryAll", function (r) { vm.thirdMerchantBizList = r.list; }); }, getStoreList: function(thirdMerchSn){ $.get("../store/queryAll?thirdMerchSn=" + thirdMerchSn, function (r) { vm.storeList = r.list; }); }, changeStore: function (thirdMerchSn) { vm.getStoreList(thirdMerchSn); }, getInfo: function(id){ $.get("../mkcentermenu/info/"+id, function (r) { vm.mkCenterMenu = r.mkCenterMenu; }); }, reloadSearch: function() { vm.q = { menuName: '' } vm.reload(); }, reload: function (event) { vm.showList = true; vm.showViewList = false; vm.showInfoList = true; let page = $("#jqGrid").jqGrid('getGridParam', 'page'); $("#jqGrid").jqGrid('setGridParam', { postData: {'menuName': vm.q.menuName}, page: page }).trigger("reloadGrid"); vm.handleReset('formValidate'); }, handleSubmit: function (name) { handleSubmitValidate(this, name, function () { vm.saveOrUpdate() }); }, handleReset: function (name) { handleResetForm(this, name); } } });