1 line
5.0 KiB
JSON
1 line
5.0 KiB
JSON
{"remainingRequest":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\src\\views\\system\\menu\\dd\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\src\\views\\system\\menu\\dd\\index.vue","mtime":1732871026790},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1732872824662},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1732872825017},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1732872824662},{"path":"D:\\data\\hanguodoushan\\acs2\\nladmin-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1732872825835}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport crudMenu from '@/api/system/menu'\r\nimport IconSelect from '@/components/IconSelect'\r\nimport Treeselect from '@riophae/vue-treeselect'\r\nimport '@riophae/vue-treeselect/dist/vue-treeselect.css'\r\nimport { LOAD_CHILDREN_OPTIONS } from '@riophae/vue-treeselect'\r\nimport CRUD, { presenter, header, form, crud } from '@crud/crud'\r\nimport rrOperation from '@crud/RR.operation'\r\nimport crudOperation from '@crud/CRUD.operation'\r\nimport udOperation from '@crud/UD.operation'\r\n\r\n// crud交由presenter持有\r\nconst defaultForm = {\r\n menu_id: null,\r\n title: null,\r\n menu_sort: 999,\r\n path: null,\r\n system_type: null,\r\n category: null,\r\n component: null,\r\n componentName: null,\r\n iframe: 0,\r\n roles: [],\r\n pid: 0,\r\n icon: null,\r\n cache: 0,\r\n hidden: 0,\r\n type: 0,\r\n permission: null\r\n}\r\nexport default {\r\n name: 'Menu',\r\n components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation },\r\n cruds() {\r\n return CRUD({ title: '菜单', idField: 'menu_id', url: 'api/sysMenu', crudMethod: { ...crudMenu }, sort: 'menu_sort,asc'})\r\n },\r\n mixins: [presenter(), header(), form(defaultForm), crud()],\r\n data() {\r\n return {\r\n menus: [],\r\n permission: {\r\n add: ['admin', 'menu:add'],\r\n edit: ['admin', 'menu:edit'],\r\n del: ['admin', 'menu:del']\r\n },\r\n normalizer(node) {\r\n return {\r\n id: node.menu_id,\r\n label: node.title,\r\n children: node.children\r\n }\r\n },\r\n rules: {\r\n title: [\r\n { required: true, message: '请输入标题', trigger: 'blur' }\r\n ],\r\n path: [\r\n { required: true, message: '请输入地址', trigger: 'blur' }\r\n ]\r\n }\r\n }\r\n },\r\n methods: {\r\n // 新增与编辑前做的操作\r\n [CRUD.HOOK.afterToCU](crud, form) {\r\n this.menus = []\r\n if (form.menu_id) { // 修改\r\n if (!form.pid) { // 一级菜单,一级的父级菜单的pid为0.\r\n form.pid = 0\r\n }\r\n this.getSupDepts(form.menu_id)\r\n } else { // 新增\r\n this.menus.push({ menu_id: 0, title: '顶级类目', children: null })\r\n }\r\n },\r\n getMenus(tree, treeNode, resolve) {\r\n const params = { pid: tree.menu_id }\r\n setTimeout(() => {\r\n crudMenu.getMenus(params).then(res => {\r\n resolve(res.content)\r\n })\r\n }, 100)\r\n },\r\n getSupDepts(menu_id) {\r\n crudMenu.getMenuSuperior(menu_id).then(res => {\r\n const children = res.map(function(obj) {\r\n if (!obj.leaf && !obj.children) {\r\n obj.children = null\r\n }\r\n return obj\r\n })\r\n this.menus = [{ menu_id: 0, title: '顶级类目', children: children }]\r\n })\r\n },\r\n loadMenus({ action, parentNode, callback }) {\r\n if (action === LOAD_CHILDREN_OPTIONS) {\r\n crudMenu.getMenusTree(parentNode.menu_id).then(res => {\r\n parentNode.children = res.map(function(obj) {\r\n if (!obj.leaf) {\r\n obj.children = null\r\n }\r\n return obj\r\n })\r\n setTimeout(() => {\r\n callback()\r\n }, 100)\r\n })\r\n }\r\n },\r\n // 选中图标\r\n selected(name) {\r\n this.form.icon = name\r\n }\r\n }\r\n}\r\n",null]} |