{"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\\taskFlowComponents\\doneAction.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\flow\\taskFlowComponents\\doneAction.vue","mtime":1667327529466},{"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\r\n// import ProcessRecord from \"@/components/flow/processRecord.vue\";\r\nimport ImageBpm from \"@/components/flow/imageBpm.vue\";\r\nimport DoneFormContent from \"@/components/flow/doneFormContent.vue\";\r\nimport OpinionText from \"@/components/common/opinionText.vue\";\r\nimport FileUpload from \"@/components/common/fileUpload.vue\";\r\nimport { mapState } from \"vuex\";\r\nimport { Message } from \"element-ui\";\r\nimport TaskToReject from \"@/components/flow/task/taskToReject.vue\";\r\nimport TaskToDelegate from \"@/components/flow/task/taskToDelegate.vue\";\r\nimport TaskToCopyTo from \"@/components/flow/task/taskToCopyTo.vue\";\r\nimport TaskToInqu from \"@/components/flow/task/taskToInqu.vue\";\r\nimport taskToRevoke from \"@/components/flow/task/taskToRevoke.vue\";\r\nimport TaskToEndProcess from \"@/components/flow/task/taskToEndProcess.vue\";\r\nimport utils from \"@/utils.js\";\r\nimport { Base64 } from \"js-base64\";\r\nimport req from \"@/request.js\";\r\n\r\nexport default {\r\n  components: {\r\n    ImageBpm,\r\n    // ProcessRecord,\r\n    DoneFormContent,\r\n    OpinionText,\r\n    FileUpload,\r\n    TaskToReject,\r\n    TaskToDelegate,\r\n    TaskToCopyTo,\r\n    TaskToInqu,\r\n    TaskToEndProcess,\r\n    taskToRevoke\r\n  },\r\n  props: [\r\n    \"instId\",\r\n    \"type\",\r\n    \"taskId\",\r\n    \"defId\",\r\n    \"status\",\r\n    \"choiceExcutor\",\r\n    \"jumpType\",\r\n    \"instStatus\",\r\n    \"leaderId\"\r\n  ],\r\n  data() {\r\n    return {\r\n      btn_region_t:\"96px\", //\"96px\",\r\n      btn_region_in_w:\"98%\",\r\n      btn_region_h: \"132px\",\r\n      btn_region_w: \"\",\r\n      dialogFormVisible: false,\r\n      dailogTitle: \"\",\r\n      opinion: \"撤回\",\r\n      isHand: \"\",\r\n      state: \"\",\r\n      canLock: \"\",\r\n      formData: \"\",\r\n      actionName: \"\",\r\n      text: \"\",\r\n      disabled: false,\r\n      btnAilas:\"\",//选择的按钮\r\n      token:utils.getUrlKey(\"token\"),\r\n      opinionMap:{},\r\n      opinionList:[],\r\n      selectNodeId:'',\r\n\t\t\tinApprovalTaskIds:[],\r\n      taskSignLines:[],\r\n      didntSkipStart:false,\r\n      closeDone: false\r\n    };\r\n  },\r\n  watch: {\r\n  },\r\n computed: mapState({\r\n    rowsBtn: state => state.storeProcess.rowsBtn\r\n  }),\r\n  mounted(){\r\n    //单选操作按钮默认选择第一个\r\n    if(this.rowsBtn.length>0  && this.canLock!=1){\r\n      this.btnAilas=this.rowsBtn[0].alias;\r\n    }else if(this.rowsBtn.length==0 && this.canLock!=1){\r\n        if(this.type=='done' || this.type=='request'){\r\n          this.btnAilas=\"handleRevoke\";\r\n        }else if(this.type=='read'){\r\n          this.btnAilas=\"handleRead\";\r\n        }\r\n    }\r\n    this.$set(this,\"btn_region_w\",document.getElementById(\"display_none\").offsetWidth);\r\n  },\r\n  methods: {\r\n    //关闭按钮\r\n    taskClose(){\r\n      this.closeDone = true;\r\n       //判断是否是模块开发配置出来的\r\n      if(this.$route.name.indexOf(\"reportModuleInst\")!=-1){\r\n        this.$router.push(\"/statement/template/preview/\"+this.$route.params.templateKey+\"/todo/\"+this.$route.params.defKey+\"/true\");\r\n      }else if (this.$route.name.indexOf(\"sysModuleInst\")!=-1){\r\n          // this.$router.push(\"/v-flow/v-todo/\" + this.$route.params.defKey);\r\n        if(this.closeDone){\r\n          this.$router.go(-1)\r\n          this.closeDone = false;\r\n        }\r\n      }else if (JSON.stringify(this.$route.query) == \"{}\") {\r\n        // this.$router.push(\"/v-flow/v-done\");\r\n        if(this.closeDone){\r\n          this.$router.go(-1)\r\n          this.closeDone = false;\r\n        }\r\n      } else {\r\n        // this.$router.push(\"/home\");\r\n        if(this.closeDone){\r\n          this.$router.go(-1)\r\n          this.closeDone = false;\r\n        }\r\n      };\r\n    },\r\n    //获取当前任务节点\r\n    getSelectNodeId(){\r\n      return this.selectNodeId;\r\n    },\r\n      //撤回到上一个节点\r\n    handleRevoke(){\r\n\t\t\tlet curOpinion = this.opinionMap[this.selectNodeId];\r\n\t\t\tif(curOpinion.needGetRevokeTasks){\r\n\t\t\t\tlet data = {instanceId:this.instId,\"nodeId\":curOpinion.taskKey,\"taskId\":curOpinion.taskId};\r\n\t\t\t\tthis.$store.dispatch(\"storeProcess/getSignLinesInstIdNodeId\",data).then((data)=>{\r\n\t\t\t\t\tthis.taskSignLines = data;\r\n          this.dialogFormVisible=true;\r\n        }).catch(()=>{\r\n          this.dialogFormVisible=false;\r\n        });\r\n\t\t\t}else{\r\n        this.dialogFormVisible=true;\r\n      }\r\n    },\r\n    openRevoke(){\r\n        // this.$confirm('确认是否撤回?', '提示', {\r\n        //     confirmButtonText: '确定',\r\n        //     cancelButtonText: '取消',\r\n        //     type: 'warning'\r\n        // }).then(() => {\r\n        //     this.saveRevoke();\r\n        // }).catch(() => {\r\n        //     this.opinion=\"\";\r\n        // });\r\n        this.saveRevoke();\r\n    },\r\n    saveRevoke(){\r\n\r\n      let curOpinion = this.opinionMap[this.selectNodeId];\r\n      let data ={instanceId:this.instId,taskId:curOpinion.taskId,revokeNodeId:this.selectNodeId};\r\n      //用户任务1,直接使用撤回到发起人的逻辑\r\n      if(!curOpinion.revokeStart){\r\n        data.isHandRevoke = true;\r\n      }else{\r\n        data.isHandRevoke = false;\r\n      }\r\n      //正常撤回\r\n      let revokeUrl = \"storeProcess/revokeInstance\";\r\n      // 签署撤回\r\n      if(curOpinion.signType && curOpinion.signType != \"AfterSign\" && curOpinion.opinionStatus != \"deliverto\" && this.instStatus != 'end'  ){\r\n          revokeUrl = \"storeProcess/revokeCustomSign\";\r\n          data ={currentTaskIds:this.inApprovalTaskIds.join(\",\"),instanceId:this.instId,targetTaskId:curOpinion.taskId,targetNodeId:this.selectNodeId,signType:curOpinion.signType};\r\n      }\r\n      this.$refs.taskToRevoke.showDialog(revokeUrl,data);\r\n\r\n      // this.$store.dispatch(revokeUrl,data).then(value=>{\r\n      //   this.dialogFormVisible=false;\r\n      //   this.opinion=\"\";\r\n      //   if(value){\r\n      //     this.$router.push(\"/task/\"+value+\"/0\");\r\n      //     setTimeout(()=>{\r\n      //       this.$root.$children[0].reload();\r\n      //     },10);\r\n      //   }else{\r\n      //     this.$router.push(\"/v-flow/v-todo\");\r\n      //   }\r\n      // });\r\n    },\r\n    exitRevoke(){\r\n      this.dialogFormVisible=false;\r\n      this.opinion=\"\";\r\n    },\r\n    hiddenOpertion() {\r\n      if(this.$refs.btnRegion){\r\n        this.$refs.btnRegion.style.display = \"none\";\r\n      }\r\n      this.$refs.doneFormContent.hiddenContent();\r\n    }\r\n  },\r\n  created() {\r\n    //兼容只显示审批页面时\r\n    if(this.$route.meta.single){\r\n      this.btn_region_t=\"48px\";\r\n      this.btn_region_in_w=\"100%\";\r\n    }\r\n    let queryFilter = {};\r\n    let pageBean = {\"pageBean\":this.pagination};\r\n    let querys = [{property: \"wfInst.id_\", value: this.instId, group: \"typeId\", operation: \"IN\", relation: \"AND\"},];\r\n    queryFilter = {\"pageBean\":this.pagination,querys};\r\n    let _this = this;\r\n    this.$store.dispatch(\"storeProcess/getDoneByInstId\",queryFilter).then((data)=>{\r\n        if (data.data && data.data.rows) {\r\n          data.data.rows.forEach(opinion => {\r\n            //判断当前是否在第一个节点,并且流程设置为不跳过第一个节点\r\n            if(data.data.rows.length==1 && opinion.opinionStatus == 'start'){\r\n              this.didntSkipStart=true;\r\n            }\r\n            if( opinion.opinionStatus != 'signRecoverCancel' && opinion.opinionStatus != 'retracted' && opinion.opinionStatus != 'start' && opinion.opinionStatus !='end' &&\r\n               !_this.opinionMap[opinion.taskKey] && opinion.opinionStatus !='awaiting_check' && opinion.opinionStatus !='copyto' && opinion.opinionStatus !='awaiting_feedback'\r\n               && opinion.opinionStatus !='copyto_reply'  && opinion.opinionStatus !=\"start_commu\" && opinion.opinionStatus !=\"end_revoke\"){\r\n              if(opinion.opinionStatus =='skip' && opinion.skipType != 'first'){\r\n                return true;\r\n              }\r\n              if(opinion.formData){\r\n                 opinion.formData = JSON.parse(Base64.decode(opinion.formData));\r\n              }\r\n              _this.opinionMap[opinion.taskKey] = opinion;\r\n              _this.opinionList.push(opinion);\r\n              _this.selectNodeId = _this.opinionList[0].taskKey;\r\n             }\r\n          });\r\n        }\r\n    });\r\n  },\r\n\tfilters:{\r\n\t\texecutorFormat:function(value){\r\n\t\t\treturn value.name + \"  \" + value.account+\"  \" + value.orgName;\r\n\t\t}\r\n\t}\r\n};\r\n",null]}