{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\selector\\EipPlaceSelector.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\selector\\EipPlaceSelector.vue","mtime":1667327529653},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"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//\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\nexport default {\r\n name: 'EipPleceSelector',\r\n props: {\r\n value: {\r\n type: String,\r\n default: '',\r\n },\r\n placeholder: {\r\n type: String,\r\n default: '请选择',\r\n },\r\n single: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n placeList_: {\r\n type: Array,\r\n default: () => [],\r\n },\r\n },\r\n data() {\r\n return {\r\n place: null,\r\n dialogVisible: false,\r\n filterText: '', //树型搜索内容\r\n isIeExplorer: false,\r\n isExpand: false,\r\n isShowAside: true, //左侧菜单默认显示\r\n loading: false,\r\n props: {\r\n label: 'name',\r\n code: 'code',\r\n id: 'id',\r\n children: 'children',\r\n pcode: 'pcode',\r\n isLeaf: 'leaf', // 指定节点是否为叶子节点,仅在指定了 lazy 属性的情况下生效\r\n },\r\n treeData: [{name: '分组管理', code: 'root', id: '1', children: []}],\r\n defaultCheckedKeys: [], //默认选中节点\r\n defaultExpandedKeys: ['1'], //默认展开节点\r\n node: '',\r\n resolve: '',\r\n searchForm: {\r\n name: '',\r\n uri: '',\r\n }, //顶部搜索参数\r\n data: [],\r\n pageResult: {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0,\r\n },\r\n selectedId: '', // 单选时选中的id\r\n placeList: [], //会场列表\r\n }\r\n },\r\n // 超级牛\r\n model: {\r\n prop: 'value',\r\n event: 'change',\r\n },\r\n watch: {\r\n value: {\r\n immediate: true, // 立即执行 :当刷新页面时会立即执行一次handler函数\r\n handler(val) {\r\n this.place = val\r\n },\r\n },\r\n filterText(val) {\r\n this.$refs.tree.filter(val)\r\n },\r\n single: {\r\n immediate: true,\r\n handler(val) {\r\n this.single = val\r\n },\r\n },\r\n placeList_: {\r\n immediate: true,\r\n handler(val) {\r\n this.placeList = val\r\n },\r\n },\r\n },\r\n mounted() {\r\n this.getTreeData()\r\n },\r\n methods: {\r\n unique(arr) {\r\n const res = new Map()\r\n return arr.filter((arr) => !res.has(arr.id) && res.set(arr.id, 1))\r\n },\r\n changeInput() {\r\n this.placeList = this.unique(this.placeList)\r\n this.$emit('change', this.place)\r\n this.$emit('showTag', this.placeList)\r\n },\r\n changeFoucs() {\r\n this.placeList = []\r\n this.selectedId = ''\r\n this.dialogVisible = true\r\n this.$nextTick(() => {\r\n this.$refs.AtTable.clearSelection()\r\n })\r\n },\r\n handleClose() {\r\n this.dialogVisible = false\r\n },\r\n handleSure() {\r\n this.dialogVisible = false\r\n this.changeInput()\r\n },\r\n //初始节点\r\n getTreeData() {\r\n let params = {\r\n pageBean: {\r\n pageSize: -1,\r\n },\r\n }\r\n this.$http\r\n .post('${xqhk}/bizMeetingPlaceName/v1/getJson', params)\r\n .then((res) => {\r\n let resp = res.data.value\r\n this.treeData[0].children = resp\r\n })\r\n },\r\n //点击节点\r\n handleNodeClick(data) {\r\n this.searchForm = {\r\n name: '',\r\n uri: '',\r\n }\r\n this.form = {}\r\n if (data.name != '分组管理') {\r\n this.searchForm.name = data.name\r\n }\r\n //根组件查询全部节点数据\r\n this.$refs.AtTable.load()\r\n },\r\n filterNode(value, data) {\r\n if (!value) return true\r\n return data[this.props.label].indexOf(value) !== -1\r\n },\r\n loadNode(node, resolve) {},\r\n // 树状菜单的全部展开和收起\r\n handleExpandCollapse() {\r\n let elTree = this.$refs.tree\r\n for (var i = 0; i < elTree.store._getAllNodes().length; i++) {\r\n elTree.store._getAllNodes()[i].expanded = this.isExpand\r\n }\r\n this.isExpand = !this.isExpand\r\n },\r\n //树状刷新\r\n refresh() {\r\n this.loading = true\r\n this.$emit('refresh', () => {\r\n this.loading = false\r\n this.filterText = ''\r\n this.getTreeData()\r\n })\r\n setTimeout(() => {\r\n this.loading = false\r\n this.filterText = ''\r\n }, 2000)\r\n },\r\n closeBefore() {\r\n setTimeout(() => {\r\n this.dialogVisible2 = false\r\n this.getTreeData()\r\n }, 500)\r\n },\r\n //隐藏目录\r\n handleHideMenu() {\r\n this.isShowAside = !this.isShowAside\r\n },\r\n loadData(param, cb) {\r\n let query = []\r\n let search = {\r\n alias: this.searchForm.alias,\r\n name: this.searchForm.name,\r\n }\r\n for (let i in search) {\r\n if (search[i]) {\r\n query.push({\r\n group: 'advance',\r\n operation: 'LIKE',\r\n property: i,\r\n relation: 'AND',\r\n value: search[i],\r\n })\r\n }\r\n }\r\n if (param.querys && param.querys.length) {\r\n param.querys.push(...query)\r\n } else {\r\n param.querys = query\r\n }\r\n\r\n this.$http\r\n .post('${xqhk}/bizSiteParamEx/v1/query', param)\r\n .then(\r\n (resp) => {\r\n let response = resp.data\r\n this.data = response.rows\r\n this.pageResult = {\r\n page: response.page,\r\n pageSize: response.pageSize,\r\n total: response.total,\r\n }\r\n },\r\n (error) => {\r\n reject(error)\r\n }\r\n )\r\n .finally(() => {\r\n if (cb) {\r\n cb()\r\n }\r\n })\r\n },\r\n handleSelect(selection) {\r\n this.placeList = [...selection, ...this.placeList]\r\n this.place = this.placeList.map((item) => item.name).join(',')\r\n },\r\n handleRowClick(data) {\r\n this.selectedId = data.id\r\n this.$refs.AtTable.toggleRowSelection(data)\r\n let rows = this.$refs.AtTable.getSelection()\r\n if (!this.single) {\r\n this.placeList = [...rows, ...this.placeList]\r\n this.place = this.placeList.map((item) => item.name).join(',')\r\n } else {\r\n this.placeList = [rows[rows.length-1]] || []\r\n this.place = this.placeList[0].name\r\n }\r\n },\r\n changeRadio(val) {\r\n this.selectedId = val\r\n let data = this.data.filter((item) => item.id == val)\r\n this.place = data[0].name\r\n this.placeList = data\r\n },\r\n handleTagClose(id) {\r\n this.placeList = this.placeList.filter((item) => item.id != id)\r\n this.place = this.placeList.map((item) => item.name).join(',')\r\n this.$emit('closeTag', this.placeList)\r\n },\r\n //查询\r\n handleSearch() {\r\n this.pageResult = {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0,\r\n }\r\n this.$nextTick(() => {\r\n this.$refs.AtTable.load()\r\n })\r\n },\r\n handleReset() {\r\n this.searchForm = {\r\n name: '',\r\n uri: '',\r\n }\r\n this.$refs['searchForm'].resetFields()\r\n this.pageResult = {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0,\r\n }\r\n this.$nextTick(() => {\r\n this.$refs.AtTable.load()\r\n })\r\n },\r\n // 防抖(在单位时间内时间再次触发则重新计时)\r\n debounce(func,wait) {\r\n let timer = null\r\n return function(...args) {\r\n if(timer) clearTimeout(timer)\r\n timer = setTimeout(() => {\r\n func.apply(this,args)\r\n }, wait)\r\n }\r\n },\r\n // 节流(单位时间内不管时间触发多少次,只有一次生效)\r\n throttle(func, wait){\r\n let last = 0\r\n return function(...args) {\r\n const now = new Date()\r\n if(now - last > wait) {\r\n func.apply(this,args)\r\n last = now\r\n }\r\n }\r\n }\r\n },\r\n}\r\n",null]}