{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\system\\Enclosure\\FileList.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\system\\Enclosure\\FileList.vue","mtime":1675071993085},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\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\r\nimport { Message } from \"element-ui\";\r\nimport req from \"@/request.js\";\r\nconst EipUrlTreeDialog = () =>\r\n  import(\"@/components/dialog/EipUrlTreeDialog.vue\");\r\nconst FileTree = () => import(\"@/views/system/Enclosure/FileTree.vue\");\r\nconst IframeSrc = () => import(\"@/views/system/Enclosure/IframeSrc.vue\");\r\nconst Pdf = () => import(\"@/views/system/Enclosure/Pdf.vue\");\r\nconst VideoPlayer = () => import(\"@/views/system/Enclosure/HtVideoPlayer.vue\");\r\nexport default {\r\n  components: { EipUrlTreeDialog, FileTree, IframeSrc, Pdf, VideoPlayer },\r\n  computed: {\r\n    //保存树数据的URL （树新增修改时）\r\n    saveSysTypeUrl: function() {\r\n      return window.context.portal + \"/file/catalog/v1/save\";\r\n    }\r\n  },\r\n  data() {\r\n    return {\r\n      src: \"\",\r\n      iframeSrc: \"\",\r\n      fileRow: \"\",\r\n      fileTree: \"\",\r\n      title: \"添加分类\",\r\n      treeSidebarData: {}, //树的新增修改数据\r\n      treeData: [], //树数据\r\n      defaultProps: {\r\n        children: \"children\",\r\n        label: \"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      urlTree: '${portal}/file/catalog/v1/getTree', //加载树的URL地址\r\n      dialogVisible: false, //侧边栏是否显示\r\n      parentSysType: {\r\n        name: \"\"\r\n      }, // 树数据新增时显示父节点\r\n      ids: [] //设置分类时的附件ID集合\r\n    };\r\n  },\r\n  methods: {\r\n    //鼠标选中行改变复选框\r\n    rowClick(row, column, event){\r\n      this.$refs.htTable.$refs.htTable.toggleRowSelection(row);\r\n    },\r\n    //查看附件\r\n    searchFile(row) {\r\n      this.$store.dispatch(\"menu/onlinePreview\", row.id).then(data => {\r\n        if (data.result == \"error\") {\r\n          Message.warning(\"附件不存在\");\r\n        }else if(data.result == \"fileNotSupported\"){\r\n          Message.warning(\"当前附件格式不支持预览\");\r\n        } else {\r\n          this.fileRow = row;\r\n          if (data.result == \"html\") {\r\n            this.iframeSrc = window.context.portal + data.pdfUrl;\r\n            this.$refs.iframeSrcSearch.handleOpen();\r\n          } else if (data.result == \"txt\") {\r\n            this.iframeSrc = window.context.portal + data.TxtUrl;\r\n            this.$refs.iframeSrcSearch.handleOpen();\r\n          } else if (data.result == \"picture\") {\r\n            this.iframeSrc = window.context.portal + data.currentUrl;\r\n            this.$refs.iframeSrcSearch.handleOpen();\r\n          } else if (data.result == \"compress\") {\r\n            this.fileTree = JSON.parse(data.fileTree).childList;\r\n            this.$refs.fileTreeSearch.handleOpen();\r\n          }else if (data.result == \"media\") {\r\n            this.$refs.videoPlayer.show();\r\n          } else {\r\n            this.src = window.context.portal + data.pdfUrl;\r\n            this.$refs.pdfSearch.handleOpen();\r\n          }\r\n        }\r\n      });\r\n    },\r\n    //下载附件\r\n    download(row) {\r\n      req.download(\"${portal}/file/v1/downloadFile?fileId=\" + row.id)\r\n    },\r\n    //设置分类\r\n    selectTypeDialog() {\r\n      if (\r\n        this.$refs.htTable.$refs.htTable &&\r\n        this.$refs.htTable.$refs.htTable.selection.length == 0\r\n      ) {\r\n        Message.warning(\"请选择要分类的附件数据\");\r\n        return;\r\n      }\r\n      let val = this.$refs.htTable.$refs.htTable.selection;\r\n      this.ids = [];\r\n      for (let i = 0; i < val.length; i++) {\r\n        this.ids.push(val[i].id);\r\n      }\r\n      this.$refs.eipUrlTreeDialog.showDialog();\r\n    },\r\n    //关闭侧边栏\r\n    handleClose() {\r\n      this.loadTreeData(); //刷新树\r\n      this.treeSidebarData = {}; //清除保存过的数据\r\n      this.dialogVisible = false;\r\n    },\r\n    //树新增修改保存后提示\r\n    afterSaveData() {\r\n      this.loadTreeData(); //刷新树\r\n      //如果是编辑不弹出提示信息\r\n      if (this.parentSysType.name == \"\") {\r\n        this.dialogVisible = false;\r\n        return;\r\n      }\r\n      let parentId = this.treeSidebarData.parentId;\r\n      this.treeSidebarData = {}; //清除保存过的数据\r\n      this.treeSidebarData.parentId = parentId;\r\n      this.$confirm(\"是否继续?\", \"提示\", {\r\n        confirmButtonText: \"确定\",\r\n        cancelButtonText: \"取消\",\r\n        type: \"success\"\r\n      })\r\n        .then(() => {})\r\n        .catch(() => {\r\n          this.dialogVisible = false;\r\n        });\r\n    },\r\n    //树的按钮事件\r\n    handleCommand(command) {\r\n      let node = command.node;\r\n      let data = command.data;\r\n      let action = command.action;\r\n      switch (action) {\r\n        case \"add\":\r\n          this.showDialog(data, action);\r\n          break;\r\n        case \"edit\":\r\n          this.showDialog(data, action);\r\n          break;\r\n        case \"delete\":\r\n          this.delSysType(data);\r\n          break;\r\n      }\r\n    },\r\n    //点击按钮打开侧边栏\r\n    showDialog(data, action) {\r\n      this.dialogVisible = true;\r\n      if (data) {\r\n        if (action == \"add\") {\r\n          this.title = \"添加分类\";\r\n          this.treeSidebarData = {};\r\n          this.parentSysType = data;\r\n          this.treeSidebarData.parentId = data.id;\r\n        } else if (action == \"edit\") {\r\n          this.title = \"编辑分类\";\r\n          this.parentSysType.name = \"\";\r\n          this.treeSidebarData = data;\r\n        }\r\n      }\r\n    },\r\n    //删除树数据\r\n    delSysType(data) {\r\n      this.$confirm(\"是否确定删除?\", \"提示\", {\r\n        confirmButtonText: \"确定\",\r\n        cancelButtonText: \"取消\",\r\n        type: \"warning\"\r\n      }).then(() => {\r\n        req\r\n          .remove(\r\n            window.context.portal + \"/file/catalog/v1/remove?id=\" + data.id\r\n          )\r\n          .then(\r\n            res => {\r\n              if (res.data.state) {\r\n                this.$message({\r\n                  type: \"success\",\r\n                  message: res.data.message || \"删除成功\"\r\n                });\r\n                this.loadTreeData();\r\n              } else {\r\n                this.$message.error(res.data.message || \"删除成功\");\r\n              }\r\n            },\r\n            error => {\r\n              reject(error);\r\n            }\r\n          );\r\n      });\r\n    },\r\n    //树鼠标左点击时间查询数据\r\n    handleNodeClick(node) {\r\n      if (node.id == \"-1\") {\r\n        let param = { pageBean: { page: 1, pageSize: 20, showTotal: true } };\r\n        this.loadData(param);\r\n        return;\r\n      }\r\n      let param = {\r\n        pageBean: { page: 1, pageSize: 20, showTotal: true },\r\n        querys: [\r\n          {\r\n            property: \"xbTypeId\",\r\n            value: node.id,\r\n            group: \"main\",\r\n            operation: \"EQUAL\",\r\n            relation: \"AND\"\r\n          }\r\n        ]\r\n      };\r\n      this.loadData(param);\r\n    },\r\n    //页面加载显示数据\r\n    loadData(param, cb) {\r\n      if (!param.sorter || param.sorter.length == 0) {\r\n        param.sorter = [{ property: \"createTime\", direction: \"DESC\" }]; //排序字段\r\n      }\r\n      req\r\n        .post(window.context.portal + \"/file/v1/query\", param)\r\n        .then(response => {\r\n          this.data = response.data.rows;\r\n          this.pageResult = {\r\n            page: response.data.page,\r\n            pageSize: response.data.pageSize,\r\n            total: response.data.total\r\n          };\r\n        })\r\n        .finally(() => cb());\r\n    },\r\n    //加载树\r\n    loadTreeData() {\r\n      req.get(this.urlTree).then(response => {\r\n        this.treeData = response.data;\r\n      });\r\n    },\r\n    //监听对话框确认事件\r\n    handleSave(data) {\r\n      const this_ = this;\r\n      req\r\n        .post(\r\n          window.context.portal +\r\n            \"/file/v1/setXbTypeId?xbTypeId=\" +\r\n            data.id +\r\n            \"&type=\" +\r\n            data.name,\r\n          this_.ids\r\n        )\r\n        .then(response => {\r\n          if (response.data && response.data.state) {\r\n            Message.success({\r\n              duration: 1500,\r\n              message: response.data.message,\r\n              onClose: function() {\r\n                let param = {\r\n                  pageBean: { page: 1, pageSize: 20, showTotal: true }\r\n                };\r\n                this_.loadData(param);\r\n              }\r\n            });\r\n          } else {\r\n            Message.error(response.data.message || \"设置分类失败\");\r\n          }\r\n        });\r\n    }\r\n  },\r\n  mounted() {\r\n    this.loadTreeData();\r\n  }\r\n};\r\n",null]}