{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xypm-web\\src\\views\\projectManagent\\ProjectFlowChart.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web\\src\\views\\projectManagent\\ProjectFlowChart.vue","mtime":1723543352528},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xypm-web\\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\r\nimport moduleRouter from '@/module_components.js'\r\nimport menuApi from '@/api/menu.js'\r\nexport default {\r\n  name: 'ProjectFlowChart',\r\n  components: {\r\n    ...moduleRouter,\r\n  },\r\n  data() {\r\n    return {\r\n      isShow: false,\r\n      currentComponent: '',\r\n      menuTabsStyle: null,\r\n      filterText: '', //树型搜索内容\r\n      isIeExplorer: false, //\r\n      isExpand: false,\r\n      loading: false,\r\n      treeData: [],\r\n      defaultProps: {\r\n        label: 'name',\r\n        code: 'code',\r\n        id: 'id',\r\n        children: 'children',\r\n        isLeaf: 'leaf', // 指定节点是否为叶子节点，仅在指定了 lazy 属性的情况下生效\r\n      },\r\n      defaultCheckedKeys: [],\r\n      defaultExpandedKeys: [],\r\n      node: '',\r\n      resolve: '',\r\n      isShowAside: true, //左侧菜单默认显示\r\n    }\r\n  },\r\n  mounted() {\r\n    if (this.$route.params && this.$route.params.alias) {\r\n      this.getInitMenus(this.$route.params)\r\n    } else {\r\n      this.getInitMenus()\r\n    }\r\n    // this.getInitMenus()\r\n  },\r\n  computed: {\r\n    projectId() {\r\n      return this.$route.params.id\r\n    },\r\n  },\r\n  watch: {\r\n    filterText(val) {\r\n      this.$refs.tree.filter(val)\r\n    },\r\n  },\r\n  defaultCheckedKeys(val) {\r\n    this.$refs.tree.setCheckedKeys(val)\r\n  },\r\n  methods: {\r\n    //点击节点\r\n    handleNodeClick(data) {\r\n      if (data.alias && data.children.length == 0) {\r\n        // console.log(data)\r\n        this.currentComponent = data.alias\r\n        sessionStorage.setItem('activeAlias', JSON.stringify(data))\r\n      }\r\n    },\r\n    filterNode(value, data) {\r\n      if (!value) return true\r\n      return data[this.defaultProps.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.getInitMenus()\r\n      })\r\n      setTimeout(() => {\r\n        this.loading = false\r\n        this.filterText = ''\r\n        this.getInitMenus()\r\n      }, 2000)\r\n    },\r\n    //初始获取树状的菜单目录\r\n    getInitMenus(params) {\r\n      // debugger\r\n      // console.log(params)\r\n      this.$http\r\n        .post(\r\n          '${cqxy}/biz/projectManagement/projectPersonnelMenu/v1/getCurrentUserMenuByProjectId?projectId=' +\r\n            this.projectId\r\n        )\r\n        .then((res) => {\r\n          if (res.data.state) {\r\n            console.log(res.data.value, '555555555555555555')\r\n            // let menus = JSON.parse(sessionStorage.getItem('currentFrontMenus'))\r\n            let menus = res.data.value\r\n            //将菜单统计报表下的项目台账隐藏并将统计报表更名为项目台账\r\n            menus.forEach((item, index) => {\r\n              // console.log(item.alias, item.name)\r\n              //隐藏菜单中的项目管理菜单\r\n              if (item.alias == 'projectManagentSub') {\r\n                delete menus[index]\r\n              }\r\n              //隐藏菜单中的年度计划菜单\r\n              if (\r\n                item.alias == 'AnnualPlan' ||\r\n                item.alias == 'planningEIA' ||\r\n                item.alias == 'fileLibrary' ||\r\n                item.alias == 'DirectoryManagement'|| item.alias == \"projectAccount\"|| item.alias == \"projectApprovalAccount\"|| item.alias == \"biddingAccount\"|| item.alias == \"contractAccount\"|| item.alias == \"investmentProgressAccount\"|| item.alias == \"paymentAccount\"|| item.alias == \"contractChangeAccount\"|| item.alias == \"projectInformationStatistics\"|| item.alias == \"userDefinedLedger\"\r\n              ) {\r\n                delete menus[index]\r\n              }\r\n            })\r\n            menus.forEach((item) => {\r\n              if (item.alias == 'statisticalReport') {\r\n                item.children.forEach((item1, index) => {\r\n                  if (item1.alias == 'projectInformationStatistics') {\r\n                    item.children.splice(index, 1)\r\n                  }\r\n                })\r\n              }\r\n            })\r\n            let tree = menus.filter((item) => {\r\n              return item.alias !== 'projectManagement'\r\n            })\r\n            let arrPcode = [\r\n              {\r\n                name: '项目管理',\r\n                code: 'root',\r\n                children: [],\r\n                id: '0',\r\n                isLeaf: true,\r\n                alias: 'root',\r\n              },\r\n            ]\r\n            arrPcode[0].children.push(...tree)\r\n            this.treeData = arrPcode\r\n            let defaultKey = this.treeData[0].children\r\n            let cureentAlias = JSON.parse(sessionStorage.getItem('activeAlias'))\r\n            if (cureentAlias) {\r\n              this.defaultTable(cureentAlias)\r\n            } else if (params) {\r\n             let al=defaultKey.filter(item=>{\r\n                  if(item.children.length>0){\r\n                      item.children.forEach(item2=>{\r\n                        if(item2.alias==params.alias){\r\n                          return item\r\n                        }\r\n                      })\r\n                  }else{\r\n                    if(item.alias==params.alias){\r\n                      return item\r\n                    }\r\n                  }\r\n             })\r\n             this.defaultTable(al[0])\r\n            } else {\r\n              for (let i in defaultKey) {\r\n                if (i == 0) {\r\n                  if (defaultKey[i].children.length > 0) {\r\n                    this.defaultTable(defaultKey[i].children[i])\r\n                  } else {\r\n                    this.defaultTable(defaultKey[i])\r\n                  }\r\n                }\r\n              }\r\n            }\r\n          }\r\n        })\r\n    },\r\n    defaultTable(data) {\r\n      console.log(data)\r\n      this.defaultCheckedKeys.push(data.id)\r\n      this.defaultExpandedKeys.push(data.id)\r\n      this.currentComponent = data.alias\r\n      this.$nextTick(() => {\r\n        this.$refs.tree.setCurrentKey(data.id)\r\n      })\r\n    },\r\n    //隐藏目录\r\n    handleHideMenu() {\r\n      this.isShowAside = !this.isShowAside\r\n    },\r\n  },\r\n  destroyed() {\r\n    delete sessionStorage.removeItem('activeAlias')\r\n  },\r\n}\r\n",null]}