{"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\\flow\\leaderTodo.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\flow\\leaderTodo.vue","mtime":1667327529403},{"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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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 process from \"@/api/process\";\r\nimport FlowTree from \"@/components/flow/flowTree.vue\";\r\nimport utils from \"@/utils.js\";\r\nimport { Message } from \"element-ui\";\r\nimport TaskToCopyTo from \"@/components/flow/task/taskToCopyTo.vue\";\r\nexport default {\r\n name: \"todo\",\r\n components: {\r\n FlowTree,\r\n TaskToCopyTo\r\n },\r\n props: {\r\n defKey: {\r\n type: String,\r\n default: \"\"\r\n }\r\n },\r\n data() {\r\n return {\r\n asideShow:false,\r\n isAsideShow:false,\r\n tableData: \"\",\r\n date: \"\",\r\n currentTree: \"\",\r\n fullscreenLoading: true,\r\n urgentStateConf: {},\r\n urgentStateConfList: [],\r\n urgentStateVal: \"\",\r\n ids: \"\", //待办任务id集合\r\n defaultFiledShowConf: '',\r\n defaultFiledShowConfList: [\r\n { name: \"subject\", desc: \"标题\", frontShow: true },\r\n { name: \"procInstId\", desc: \"流程编号\", frontShow: true },\r\n { name: \"procDefName\", desc: \"流程名称\", frontShow: true },\r\n { name: \"name\", desc: \"任务名称\", frontShow: true },\r\n { name: \"status\", desc: \"类型\", frontShow: true },\r\n { name: \"createTime\", desc: \"创建时间\", frontShow: true },\r\n { name: \"creator\", desc: \"创建人\", frontShow: true },\r\n { name: \"urgentStateValue\", desc: \"紧急状态\", frontShow: true },\r\n { name: \"dueExpDate\", desc: \"到期时间\", frontShow: false },\r\n { name: \"ownerName\", desc: \"所属人\", frontShow: false },\r\n { name: \"assigneeName\", desc: \"待审批人\", frontShow: false },\r\n { name: \"prop1\", desc: \"扩展1\", frontShow: false },\r\n { name: \"prop2\", desc: \"扩展2\", frontShow: false },\r\n { name: \"prop3\", desc: \"扩展3\", frontShow: false },\r\n { name: \"prop4\", desc: \"扩展4\", frontShow: false },\r\n { name: \"prop5\", desc: \"扩展5\", frontShow: false },\r\n { name: \"prop6\", desc: \"扩展6\", frontShow: false }\r\n ]\r\n };\r\n },\r\n computed: {\r\n ...mapState('storeProcess',['rows','pagination','total']),\r\n currentSwitchValue(){\r\n return localStorage.leaderTodoAsideShow === 'true' || localStorage.leaderTodoAsideShow === true\r\n }\r\n },\r\n methods: {\r\n //将当前展开或者收起的值存在localStorage中\r\n handleSwitch(val){\r\n localStorage.leaderTodoAsideShow = val\r\n },\r\n //流程传阅\r\n taskToCopyTo() {\r\n if (this.ids == \"\") {\r\n Message.warning(\"请选择要传阅的流程\");\r\n return;\r\n }\r\n this.$refs.taskToCopyTo.handleClose(); //父组件调用子组件方法\r\n },\r\n //批量勾选待办流程获取\r\n handleSelectionChange(val) {\r\n this.ids = \"\";\r\n if (val.length > 0) {\r\n for (let i = 0; i < val.length; i++) {\r\n this.ids = this.ids + val[i].id + \",\";\r\n }\r\n this.ids = this.ids.substring(0, this.ids.length - 1);\r\n }\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 if (str == \"find\") {\r\n this.$store.dispatch(\"storeProcess/setPaginationPageNum\", 1);\r\n }\r\n let querys = []; //查询条件\r\n let queryFilter = {};\r\n let pageBean = { pageBean: this.pagination };\r\n let beginDate = \"\"; //开始时间\r\n let endDate = \"\"; //结束时间\r\n let group = \"main\"; //判断条件\r\n if (this.tableData) {\r\n querys = [\r\n {\r\n property: \"subject_\",\r\n value: this.tableData,\r\n group: \"main\",\r\n operation: \"LIKE\",\r\n relation: \"OR\"\r\n },\r\n {\r\n property: \"proc_inst_id_\",\r\n value: this.tableData,\r\n group: \"main\",\r\n operation: \"LIKE\",\r\n relation: \"OR\"\r\n },\r\n {\r\n property: \"proc_def_name_\",\r\n value: this.tableData,\r\n group: \"main\",\r\n operation: \"LIKE\",\r\n relation: \"OR\"\r\n },\r\n {\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 let temp = querys[0];\r\n for (let index = 1; index < 7; index++) {\r\n let query = JSON.parse(JSON.stringify(temp));\r\n query.property = \"prop\" + index;\r\n querys.push(query);\r\n }\r\n }\r\n if (this.urgentStateVal) {\r\n querys.push({\r\n property: \"urgentStateValue\",\r\n value: this.urgentStateVal,\r\n group: \"main\",\r\n operation: \"IN\",\r\n relation: \"OR\"\r\n });\r\n }\r\n if (this.currentTree) {\r\n querys.push({\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 if (this.defKey) {\r\n querys.push({\r\n property: \"tmp.proc_def_key_\",\r\n value: this.defKey,\r\n operation: \"EQUAL\",\r\n relation: \"AND\"\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: \"tmp.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.openFullScreen();\r\n this.$store\r\n .dispatch(\"storeProcess/getLeaderTodoByPagination\", queryFilter)\r\n .then((data) => {\r\n if (!data.state){\r\n if (data.message==='BaseException: 无秘书审批权限!'){\r\n this.$router.push(\"/v-flow/v-todo\");\r\n window.location.reload();\r\n }\r\n }\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 handleRowClick(row,newWin) {\r\n if (row.status == \"SHARE\" || row.status == \"BACKSHARE\") {\r\n if (row.identityList && row.identityList.length == 1) {\r\n this.handleOpenUrl(\"/task/\" + row.id + \"/\" + row.identityList[0].id,newWin);\r\n } else {\r\n let html =\r\n \"\";\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 \"/task/\" + 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 }else if(row.status == \"AGENT\" && row.ownerId!=row.assigneeId && row.ownerId==this.$store.state.login.currentUser.userId){//委托任务\r\n this.handleOpenUrl(\"/instRead/\" + row.procInstId+\"/agent\",newWin);\r\n }else {\r\n this.handleOpenUrl(\"/task/\" + row.id + \"/0\",newWin);\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.openFullScreen();\r\n let pageBean = { pageBean: this.pagination };\r\n this.$store\r\n .dispatch(\"storeProcess/getLeaderTodoByPagination\", 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 formatConfListToObj(tempList) {\r\n let editConfObj = {};\r\n tempList.forEach(c => {\r\n let key = c.name;\r\n editConfObj[key] = c;\r\n });\r\n this.$set(this, \"defaultFiledShowConf\", editConfObj);\r\n },\r\n loadCount() {\r\n return process.getLeaderTodoCount();\r\n }\r\n },\r\n created() {\r\n\r\n this.asideShow = this.currentSwitchValue\r\n this.isAsideShow = this.currentSwitchValue\r\n\r\n let this_ = this;\r\n this.$http\r\n .get(\"${portal}/sys/sysProperties/v1/getByAlias?alias=taskListFiledConf\")\r\n .then(function(resp) {\r\n let tempConf = {};\r\n if (resp.data) {\r\n tempConf = resp.data;\r\n } else {\r\n tempConf = this_.defaultFiledShowConfList;\r\n }\r\n this_.formatConfListToObj(tempConf);\r\n });\r\n\r\n let querys = [];\r\n if (this.defKey) {\r\n querys.push({\r\n property: \"tmp.proc_def_key_\",\r\n value: this.defKey,\r\n operation: \"EQUAL\",\r\n relation: \"AND\"\r\n });\r\n }\r\n let pageBean = {\r\n pageBean: { page: \"1\", pageSize: \"10\", showTotal: \"true\" },\r\n querys\r\n }; //初次加载默认pageBean\r\n // this.$store\r\n // .dispatch(\"storeProcess/getUrgentStateConf\", { getConf: true })\r\n // .then(data => {\r\n this.$store\r\n .dispatch(\"storeProcess/getLeaderTodoByPagination\", pageBean)\r\n .then(() => {\r\n //页面加载调用tudo.js里面的分页方法\r\n this.fullscreenLoading = false;\r\n });\r\n // if (data.conf) {\r\n // try {\r\n // data.conf = JSON.parse(data.conf);\r\n // } catch (error) {\r\n // data.conf = eval(\"(\" + data.conf + \")\");\r\n // }\r\n // this.urgentStateConfList = data.conf;\r\n // let conf = {};\r\n // for (let index = 0, c; (c = data.conf[index++]); ) {\r\n // if (c.default) {\r\n // this.urgentStateConf.defaultValue = c.state;\r\n // }\r\n // conf[c.state] = c;\r\n // }\r\n // this.urgentStateConf.conf = conf;\r\n // }\r\n // });\r\n }\r\n};\r\n",null]}