{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xypm-web\\src\\views\\projectManagent\\DirectoryManagement.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web\\src\\views\\projectManagent\\DirectoryManagement.vue","mtime":1675214578105},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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 projectArr from '@/assets/data.json'\r\nexport default {\r\n  data() {\r\n    return {\r\n      filterText: '',\r\n      isIeExplorer: false,\r\n      defaultExpandAll: true,\r\n      isExpand: false,\r\n      loading: false,\r\n      treeData: [],\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      editMenuFormVisible: false,\r\n      searchForm: {\r\n        name: '',\r\n      }, //顶部搜索参数\r\n      data: [], //表格数据\r\n      pageResult: {\r\n        page: 1,\r\n        pageSize: 20,\r\n        total: 0,\r\n      },\r\n      form: {\r\n        name: '',\r\n        code: '',\r\n        pname: '',\r\n        pcode: '',\r\n      },\r\n      dialogVisible: false,\r\n      dialogTitle: '添加',\r\n      indexArr: [],\r\n      node: '',\r\n      resolve: '',\r\n      treeData: [],\r\n      nodeKey: false,\r\n      pCode: 'root',\r\n      loading: false,\r\n      arrPcode: [{name: '目录管理', code: 'root'}],\r\n      options: [],\r\n      defaultCheckedKeys: [],\r\n      rules: {\r\n        name: {\r\n          required: true,\r\n          message: '请输入名称',\r\n          trigger: 'blur',\r\n        },\r\n        code: {\r\n          required: true,\r\n          message: '请输入编码',\r\n          trigger: 'blur',\r\n        },\r\n        finishStatus: {\r\n          required: true,\r\n          message: '请选择状态',\r\n          trigger: 'blur',\r\n        },\r\n        groupType: {\r\n          required: true,\r\n          message: '请选择分组类型',\r\n          trigger: 'blur',\r\n        },\r\n        pname: {\r\n          required: true,\r\n          message: '请选择父级名称',\r\n          trigger: 'blur',\r\n        },\r\n        pcode: {\r\n          required: true,\r\n          message: '请输入父级编码',\r\n          trigger: 'blur',\r\n        },\r\n        target: {\r\n          required: true,\r\n          message: '请输入前置路由地址',\r\n          trigger: 'blur',\r\n        },\r\n        ptarget: {\r\n          required: true,\r\n          message: '请输入后置节点',\r\n          trigger: 'blur',\r\n        },\r\n        targetUrl: {\r\n          required: true,\r\n          message: '请输入后置节点路由地址',\r\n          trigger: 'blur',\r\n        },\r\n      },\r\n    }\r\n  },\r\n  watch: {\r\n    filterText(val) {\r\n      this.$refs.tree.filter(val)\r\n    },\r\n    defaultCheckedKeys(val) {\r\n      this.$refs.tree.setCheckedKeys(val)\r\n    },\r\n  },\r\n  mounted() {\r\n    if (!!window.ActiveXObject || 'ActiveXObject' in window) {\r\n      this.isIeExplorer = true\r\n    }\r\n  },\r\n  computed: {\r\n    deleteUrl: function () {\r\n      return (\r\n        window.context.yhxt +\r\n        '/biz/projectManagement/directoryManagement/v1/delete'\r\n      )\r\n    },\r\n  },\r\n  created() {\r\n    this.getOptions()\r\n  },\r\n  methods: {\r\n    handleReset() {\r\n      this.searchForm.name = ''\r\n      this.$refs['searchForm'].resetFields()\r\n      this.$refs.AtTable.load()\r\n    },\r\n    getOptions() {\r\n      let param = {\r\n        pageBean: {\r\n          page: -1,\r\n          pageSize: 10,\r\n          showTotal: true,\r\n        },\r\n        querys: [\r\n          {\r\n            property: 'bdm.PCODE_',\r\n            value: this.pCode,\r\n          },\r\n        ],\r\n      }\r\n      this.$http\r\n        .post(\r\n          '${cqxy}/biz/projectManagement/directoryManagement/v1/queryChildNodeByPage',\r\n          param\r\n        )\r\n        .then((resp) => {\r\n          let response = resp.data.value\r\n          this.options = response.rows\r\n        })\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    // 树状菜单的全部展开和收起\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    refresh() {\r\n      this.loading = true\r\n      this.$emit('refresh', () => {\r\n        this.loading = false\r\n        this.isExpand = this.defaultExpandAll\r\n      })\r\n      setTimeout(() => {\r\n        this.loading = false\r\n        this.isExpand = this.defaultExpandAll\r\n      }, 5000)\r\n    },\r\n    loadNode(node, resolve) {\r\n      //暂存\r\n      if (node.level === 0) {\r\n        this.node = node\r\n        this.resolve = resolve\r\n        return resolve(this.arrPcode)\r\n      } else {\r\n        //获取子节点\r\n        this.getPcode(node.data.code, resolve)\r\n      }\r\n    },\r\n    getPcode(data, resolve) {\r\n      let formData = new FormData()\r\n      formData.append('pCode', data)\r\n      this.$http\r\n        .post(\r\n          '${cqxy}/biz/projectManagement/directoryManagement/v1/getByParentId',\r\n          formData\r\n        )\r\n        .then((res) => {\r\n          let data = []\r\n          res.data.value.forEach((item) => {\r\n            if (item.hasChildre == '1') {\r\n              data.push({\r\n                name: item.name,\r\n                code: item.code,\r\n                pname: item.pname,\r\n                id: item.id,\r\n              })\r\n            } else {\r\n              data.push({\r\n                name: item.name,\r\n                code: item.code,\r\n                pname: item.pname,\r\n                id: item.id,\r\n                leaf: true, //没有子节点时为true\r\n              })\r\n            }\r\n          })\r\n          resolve(data)\r\n        })\r\n    },\r\n    //点击节点\r\n    handleNodeClick(data) {\r\n      this.nodeKey = false\r\n      this.editMenuFormVisible = true\r\n      this.pCode = data.code\r\n      if (this.pCode == 'root') {\r\n        this.$refs.AtTable.load()\r\n        // return false\r\n      }\r\n      if (this.$refs.AtTable) {\r\n        if (data.leaf) {\r\n          this.$message.info('没有下一级目录了')\r\n        } else {\r\n          this.$refs.AtTable.load()\r\n        }\r\n      }\r\n    },\r\n    handleAdd() {\r\n      this.dialogTitle = '添加'\r\n      this.form = {\r\n        name: '',\r\n        code: '',\r\n        pname: this.options[0].code, //父级名称\r\n        pcode: '',\r\n        finishStatus: 1, //状态\r\n        groupType: 1, //分组类型\r\n        timeoutReminderType: 1, //超时提醒方式\r\n        timeoutTaskStatus: 1, //超时提醒任务状态\r\n      }\r\n      this.dialogVisible = true\r\n    },\r\n    handleRowDBClick(data) {\r\n      this.form = data\r\n      this.dialogTitle = '修改'\r\n      this.dialogVisible = true\r\n    },\r\n    //字典回调\r\n    handleDict(val, obj, str) {\r\n      if (str === 'mlgl-jdzt') {\r\n      } else if (str === 'mlgl-fzlx') {\r\n      }\r\n    },\r\n    afterDelete() {\r\n      this.nodeKey = true\r\n      this.node.childNodes = []\r\n      this.loadNode(this.node, this.resolve)\r\n    },\r\n    handleSelect(selection) {\r\n      this.indexArr = selection\r\n    },\r\n    handleDialogCancel() {\r\n      this.dialogVisible = false\r\n    },\r\n    handleDialogClose() {\r\n      this.dialogVisible = false\r\n    },\r\n    handleDialogSubmit() {\r\n      this.form.pcode = this.pCode\r\n      if (this.data.length !== 0) {\r\n        this.form.pname = this.data[0].pname\r\n      }\r\n      if (!this.form.pname) {\r\n        this.form.pname = 'root'\r\n      }\r\n      this.$refs.form.validate((valid) => {\r\n        if (valid) {\r\n          this.loading = true\r\n          this.$http\r\n            .post(\r\n              '${cqxy}/biz/projectManagement/directoryManagement/v1/save',\r\n              this.form\r\n            )\r\n            .then((res) => {\r\n              if (res.data.state) {\r\n                this.$refs.form.resetFields()\r\n                this.$message.success(res.data.message)\r\n                this.dialogVisible = false\r\n                this.$refs.AtTable.load()\r\n                this.node.childNodes = []\r\n                this.loadNode(this.node, this.resolve)\r\n              } else {\r\n                this.$message.error(res.data.message)\r\n              }\r\n              this.loading = false\r\n            })\r\n        }\r\n      })\r\n    },\r\n    loadData(param, cb) {\r\n      let pcode = [\r\n        {\r\n          property: 'bdm.PCODE_',\r\n          value: this.pCode,\r\n        },\r\n      ]\r\n      if (param.querys && param.querys.length) {\r\n        param.querys.push(...pcode)\r\n      } else {\r\n        param.querys = pcode\r\n      }\r\n      let obj = this.searchObj\r\n      for (let i in obj) {\r\n        if (obj[i] && obj[i] !== undefined) {\r\n          param.querys.push({\r\n            group: 'advance',\r\n            operation: 'LIKE',\r\n            property: i,\r\n            relation: 'AND',\r\n            value: obj[i],\r\n          })\r\n        }\r\n      }\r\n      this.$http\r\n        .post(\r\n          '${cqxy}/biz/projectManagement/directoryManagement/v1/queryChildNodeByPage',\r\n          param\r\n        )\r\n        .then(\r\n          (resp) => {\r\n            let response = resp.data.value\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    findinfo() {\r\n      let query = []\r\n      query.push({\r\n        property: 'bdm.PCODE_',\r\n        value: this.pCode,\r\n      })\r\n      let search = {\r\n        // project_id_: this.searchForm.projectId,\r\n        name_: this.searchForm.name,\r\n      }\r\n      this.searchObj = search\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      let data = {\r\n        pageBean: {\r\n          page: 1,\r\n          pageSize: 20,\r\n          showTotal: true,\r\n        },\r\n        querys: query,\r\n      }\r\n      this.$http\r\n        .post(\r\n          '${cqxy}/biz/projectManagement/directoryManagement/v1/queryChildNodeByPage',\r\n          data\r\n        )\r\n        .then((resp) => {\r\n          let response = resp.data.value\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    },\r\n  },\r\n}\r\n",null]}