{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xypm-web\\src\\components\\flow\\flowList.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web\\src\\components\\flow\\flowList.vue","mtime":1675214577073},{"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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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 { mapState, mapActions } from \"vuex\";\r\nimport FlowTree from \"@/components/flow/flowTree.vue\";\r\nimport utils from \"@/utils.js\";\r\nimport process from \"@/api/process.js\";\r\nimport QRCode from \"qrcode\";\r\n\r\nexport default {\r\n  name: \"flowList\",\r\n  components: {\r\n    FlowTree\r\n  },\r\n  data() {\r\n    return {\r\n      isAsideShow:false,\r\n      asideShow:false,\r\n      tableData: \"\",\r\n      date: \"\",\r\n      currentTree: \"\",\r\n      fullscreenLoading: true,\r\n      QRCodeDialog: false,\r\n      QRCodeShow: false,\r\n      QRCodeurl: \"\",\r\n      selectLeadId: \"0\",\r\n      selectRowId: \"\"\r\n    };\r\n  },\r\n  computed: mapState({\r\n    rows: state => state.storeProcess.rows,\r\n    pagination: state => state.storeProcess.pagination,\r\n    total: state => state.storeProcess.total,\r\n    token: state => state.login.currentUser.token,\r\n    currentSwitchValue(){\r\n      return localStorage.flowListAsideShow === 'true' || localStorage.flowListAsideShow === true\r\n    }\r\n  }),\r\n  methods: {\r\n     //将当前展开或者收起的值存在localStorage中\r\n    handleSwitch(val){\r\n      localStorage.flowListAsideShow = val\r\n    },\r\n    //Loading 加载中\r\n    openFullScreen() {\r\n      this.fullscreenLoading = true;\r\n    },\r\n    handleSizeChange: function(size) {\r\n      //每页下拉显示数据\r\n      this.$store.dispatch(\"storeProcess/setPaginationSize\", size);\r\n      this.search();\r\n    },\r\n    handleCurrentChange: function(currentPage) {\r\n      //点击第几页\r\n      this.$store.dispatch(\"storeProcess/setPaginationPageNum\", currentPage);\r\n      this.search();\r\n    },\r\n    //回车查询\r\n    searchEnterFun: function(e) {\r\n      var keyCode = window.event ? e.keyCode : e.which;\r\n      if (keyCode == 13) {\r\n        this.search(\"find\");\r\n      }\r\n    },\r\n    // 查询\r\n    search(str) {\r\n      this.openFullScreen();\r\n      if (str == \"find\") {\r\n        this.$store.dispatch(\"storeProcess/setPaginationPageNum\", 1);\r\n      }\r\n      let querys = []; //查询条件\r\n      let queryFilter = {};\r\n      let beginDate = \"\"; //开始时间\r\n      let endDate = \"\"; //结束时间\r\n      if (this.tableData) {\r\n        querys = [{\r\n          property: \"name\",\r\n          value: this.tableData,\r\n          group: \"main\",\r\n          operation: \"LIKE\",\r\n          relation: \"OR\"\r\n        }];\r\n      }\r\n      if (this.currentTree) {\r\n        querys.push(\r\n          {\r\n            property: \"type_id_\",\r\n            value: this.currentTree,\r\n            group: \"typeId\",\r\n            operation: \"IN\",\r\n            relation: \"AND\"\r\n          }\r\n        );\r\n      }\r\n\r\n      if (this.date) {\r\n        beginDate = utils.formatDate(this.date[0].getTime());\r\n        endDate = utils.formatDate(this.date[1].getTime());\r\n        querys.push({\r\n          property: \"create_time_\",\r\n          value: [beginDate, endDate],\r\n          group: \"time\",\r\n          operation: \"BETWEEN\",\r\n          relation: \"AND\"\r\n        });\r\n      }\r\n      queryFilter = { pageBean: this.pagination, querys };\r\n      this.$store\r\n        .dispatch(\"storeProcess/getFlowListByPagination\", queryFilter)\r\n        .then(() => {\r\n          this.fullscreenLoading = false;\r\n        });\r\n    },\r\n    //重置\r\n    reset() {\r\n      this.tableData = \"\";\r\n      this.date = \"\";\r\n      this.search(\"find\");\r\n    },\r\n\r\n    handleRowClick(row,newWin) {\r\n      if (!row.leaders || row.leaders.length == 0) {\r\n        this.handleOpenUrl(\"/agentStart/\" + row.id + \"/0\",newWin);\r\n      } else {\r\n        let html =\r\n          \"<select ref=\" +\r\n          Math.random() +\r\n          ' id=\"approvalLeaderSelect\" style=\"width: 200px;height: 30px;border-radius: 4px;margin: 20px 70px;\" ><option value=\"\">请选择</option>';\r\n        row.leaders.forEach(identity => {\r\n          html +=\r\n            '<option value=\"' +\r\n            identity.id +\r\n            '\">' +\r\n            identity.name +\r\n            \"</option>\";\r\n        });\r\n        html += \"</select>\";\r\n        let this_ = this;\r\n        this.$alert(html, \"选择发起人\", {\r\n          dangerouslyUseHTMLString: true,\r\n          beforeClose: function(action, instance, done) {\r\n            if (action == \"confirm\") {\r\n              let se = document.getElementById(\"approvalLeaderSelect\");\r\n              if (se.selectedIndex == 0) {\r\n                this.$message.warning(\"请选择一个发起人\");\r\n              } else {\r\n                instance.close();\r\n                this_.handleOpenUrl(\r\n                  \"/agentStart/\" + row.id + \"/\" + se[se.selectedIndex].value,newWin\r\n                );\r\n              }\r\n            } else {\r\n              instance.close();\r\n            }\r\n          }\r\n        });\r\n      }\r\n    },\r\n    handleOpenUrl(url,newWin){\r\n      if(!newWin){\r\n        this.$router.push(url);\r\n        return;\r\n      }\r\n      if(!url){\r\n        return ;\r\n      }\r\n      let token = this.$store.state.login.currentUser.token;\r\n      if(!url.toLowerCase().startsWith(\"http\")){\r\n        url = window.context.front + url;\r\n      }\r\n      if(url.indexOf('?') == -1){\r\n        url = url + \"?token=\" + token;\r\n      }else{\r\n        url = url + \"&token=\" + token;\r\n      }\r\n      window.open(url,\"_blank\");\r\n    },\r\n    //子组件传值父组件(新建流程分类查询)\r\n    getCurrent(data) {\r\n      if (data.id == 6) {\r\n        this.currentTree = \"\";\r\n        this.openFullScreen();\r\n        let pageBean = { pageBean: this.pagination };\r\n        this.currentTree = \"\";\r\n        this.$store\r\n          .dispatch(\"storeProcess/getFlowListByPagination\", pageBean)\r\n          .then(() => {\r\n            this.fullscreenLoading = false;\r\n          });\r\n      } else {\r\n        let ids = [];\r\n        this.getFlowTrees(data, ids);\r\n        this.currentTree = ids.join(\",\");\r\n        this.search(\"find\");\r\n      }\r\n    },\r\n    getFlowTrees(data, ids) {\r\n      ids.push(data.id);\r\n      let arr = data.children;\r\n      for (var i = 0; i < arr.length; i++) {\r\n        this.getFlowTrees(arr[i], ids);\r\n      }\r\n    },\r\n    loadCount() {\r\n      let pageBean = {};\r\n      return process.getNewProcessCount(pageBean);\r\n    },\r\n    showQRCodeDialog(row){\r\n      this.selectRowId = row.defId;\r\n      if (!row.leaders || row.leaders.length == 0) {\r\n        //this.$router.push(\"/agentStart/\" + row.id + \"/0\");\r\n        this.selectLeadId = \"0\";\r\n        this.QRCodeDialog = true;\r\n      } else {\r\n        let html =\r\n          \"<select ref=\" +\r\n          Math.random() +\r\n          ' id=\"approvalLeaderSelect\" style=\"width: 200px;height: 30px;border-radius: 4px;margin: 20px 70px;\" ><option value=\"\">请选择</option>';\r\n        row.leaders.forEach(identity => {\r\n          html +=\r\n            '<option value=\"' +\r\n            identity.id +\r\n            '\">' +\r\n            identity.name +\r\n            \"</option>\";\r\n        });\r\n        html += \"</select>\";\r\n        let this_ = this;\r\n        this.$alert(html, \"选择发起人\", {\r\n          dangerouslyUseHTMLString: true,\r\n          beforeClose: function(action, instance, done) {\r\n            if (action == \"confirm\") {\r\n              let se = document.getElementById(\"approvalLeaderSelect\");\r\n              if (se.selectedIndex == 0) {\r\n                this.$message.warning(\"请选择一个发起人\");\r\n              } else {\r\n                instance.close();\r\n                // this_.$router.push(\r\n                //   \"/agentStart/\" + row.id + \"/\" + se[se.selectedIndex].value\r\n                // );\r\n                this.selectLeadId = se[se.selectedIndex].value;\r\n                this.QRCodeDialog = true;\r\n              }\r\n            } else {\r\n              instance.close();\r\n            }\r\n          }\r\n        });\r\n      }\r\n    },\r\n    QRCodeDialogClose(){\r\n      this.QRCodeDialog = false;\r\n    },\r\n    foundQRCode(){\r\n      this.QRCodeurl = window.context.mobile+\"/work/agentStart/\" + this.selectRowId + \"/0\";\r\n      let loginRouthPath =\r\n            localStorage.getItem(\r\n              this.$store.state.login.currentUser.account + \"loginRoutePath\"\r\n            ) || \"/login\";\r\n      if(loginRouthPath.startsWith(\"/login/\")) { //租户模式\r\n        let tenantCode = loginRouthPath.replace(\"/login/\", \"\");\r\n        if(tenantCode && tenantCode != \"\"){\r\n          this.QRCodeurl = window.context.mobile+\"/work/agentStart/\" + this.selectRowId + \"/0?tenantCode=\" + tenantCode;\r\n        }\r\n      }\r\n      let msg = document.getElementById(\"QRCode\");\r\n      QRCode.toCanvas(msg, this.QRCodeurl, function (error) {\r\n        console.log(error);\r\n      });\r\n      this.QRCodeShow = true;\r\n    },\r\n    onCopy(){\r\n      this.$message({type:\"success\",message:\"复制成功\"});\r\n    },\r\n    onError(){\r\n      this.$message({type:\"error\",message:\"复制失败\"})\r\n    },\r\n    downloadQRCode(){\r\n      let canvas = document.getElementById(\"QRCode\");\r\n      let a = document.createElement(\"a\");\r\n      a.download = \"二维码.jpg\";\r\n      a.href = canvas.toDataURL();\r\n      a.dispatchEvent(new MouseEvent('click'))\r\n    }\r\n  },\r\n  created() {\r\n     this.asideShow = this.currentSwitchValue\r\n    this.isAsideShow = this.currentSwitchValue\r\n\r\n    let pageBean = {\r\n      pageBean: { page: \"1\", pageSize: \"10\", showTotal: \"true\" }\r\n    }; //初次加载默认pageBean\r\n    this.$store\r\n      .dispatch(\"storeProcess/getFlowListByPagination\", pageBean)\r\n      .then(() => {\r\n        //页面加载调用tudo.js里面的分页方法\r\n        this.fullscreenLoading = false;\r\n      });\r\n  },\r\n};\r\n",null]}