{"remainingRequest":"D:\\HTC\\program\\善行少年\\security-enterprise-admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\HTC\\program\\善行少年\\security-enterprise-admin\\src\\views\\modules\\sys\\menu-add-or-update.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\HTC\\program\\善行少年\\security-enterprise-admin\\src\\views\\modules\\sys\\menu-add-or-update.vue","mtime":1581948666000},{"path":"D:\\HTC\\program\\善行少年\\security-enterprise-admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\HTC\\program\\善行少年\\security-enterprise-admin\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\HTC\\program\\善行少年\\security-enterprise-admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\HTC\\program\\善行少年\\security-enterprise-admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["\r\nimport debounce from 'lodash/debounce'\r\nimport { getIconList } from '@/utils'\r\nexport default {\r\n data () {\r\n return {\r\n visible: false,\r\n menuList: [],\r\n menuListVisible: false,\r\n iconList: [],\r\n iconListVisible: false,\r\n dataForm: {\r\n id: '',\r\n type: 0,\r\n name: '',\r\n pid: '0',\r\n parentName: '',\r\n url: '',\r\n permissions: '',\r\n sort: 0,\r\n icon: ''\r\n }\r\n }\r\n },\r\n computed: {\r\n dataRule () {\r\n return {\r\n name: [\r\n { required: true, message: this.$t('validate.required'), trigger: 'blur' }\r\n ],\r\n parentName: [\r\n { required: true, message: this.$t('validate.required'), trigger: 'change' }\r\n ]\r\n }\r\n }\r\n },\r\n watch: {\r\n 'dataForm.type' (val) {\r\n this.$refs['dataForm'].clearValidate()\r\n }\r\n },\r\n methods: {\r\n init () {\r\n this.visible = true\r\n this.$nextTick(() => {\r\n this.$refs['dataForm'].resetFields()\r\n this.iconList = getIconList()\r\n this.dataForm.parentName = this.$t('menu.parentNameDefault')\r\n this.getMenuList().then(() => {\r\n if (this.dataForm.id) {\r\n this.getInfo()\r\n }\r\n })\r\n })\r\n },\r\n // 获取菜单列表\r\n getMenuList () {\r\n return this.$http.get('/sys/menu/list?type=0').then(({ data: res }) => {\r\n if (res.code !== 0) {\r\n return this.$message.error(res.msg)\r\n }\r\n this.menuList = res.data\r\n }).catch(() => {})\r\n },\r\n // 获取信息\r\n getInfo () {\r\n this.$http.get(`/sys/menu/${this.dataForm.id}`).then(({ data: res }) => {\r\n if (res.code !== 0) {\r\n return this.$message.error(res.msg)\r\n }\r\n this.dataForm = {\r\n ...this.dataForm,\r\n ...res.data\r\n }\r\n if (this.dataForm.pid === '0') {\r\n return this.deptListTreeSetDefaultHandle()\r\n }\r\n this.$refs.menuListTree.setCurrentKey(this.dataForm.pid)\r\n }).catch(() => {})\r\n },\r\n // 上级菜单树, 设置默认值\r\n deptListTreeSetDefaultHandle () {\r\n this.dataForm.pid = '0'\r\n this.dataForm.parentName = this.$t('menu.parentNameDefault')\r\n },\r\n // 上级菜单树, 选中\r\n menuListTreeCurrentChangeHandle (data) {\r\n this.dataForm.pid = data.id\r\n this.dataForm.parentName = data.name\r\n this.menuListVisible = false\r\n },\r\n // 图标, 选中\r\n iconListCurrentChangeHandle (icon) {\r\n this.dataForm.icon = icon\r\n this.iconListVisible = false\r\n },\r\n // 表单提交\r\n dataFormSubmitHandle: debounce(function () {\r\n this.$refs['dataForm'].validate((valid) => {\r\n if (!valid) {\r\n return false\r\n }\r\n this.$http[!this.dataForm.id ? 'post' : 'put']('/sys/menu', this.dataForm).then(({ data: res }) => {\r\n if (res.code !== 0) {\r\n return this.$message.error(res.msg)\r\n }\r\n this.$message({\r\n message: this.$t('prompt.success'),\r\n type: 'success',\r\n duration: 500,\r\n onClose: () => {\r\n this.visible = false\r\n this.$emit('refreshDataList')\r\n }\r\n })\r\n }).catch(() => {})\r\n })\r\n }, 1000, { 'leading': true, 'trailing': false })\r\n }\r\n}\r\n",{"version":3,"sources":["menu-add-or-update.vue"],"names":[],"mappings":";AA+DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"menu-add-or-update.vue","sourceRoot":"src/views/modules/sys","sourcesContent":["\r\n\r\n\r\n\r\n\r\n"]}]}