{"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\\form\\FormPrintTemplateManager.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\form\\FormPrintTemplateManager.vue","mtime":1675071992913},{"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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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 } from \"vuex\";\r\nimport { Loading } from \"element-ui\";\r\nimport utils from \"@/hotent-ui-util.js\";\r\nimport req from \"@/request.js\";\r\nimport form from \"@/api/form.js\";\r\nconst EipSysTypeSelector = () => import(\"@/components/selector/EipSysTypeSelector.vue\");\r\nconst FormDesigner = () => import(\"@/components/form/FormDesigner.vue\");\r\n\r\nexport default {\r\n name: \"FormPrintTemlateManager\",\r\n props: {\r\n formKey: {\r\n type: String,\r\n required: true\r\n },\r\n visible: {\r\n type: Boolean\r\n },\r\n formRow:{\r\n type: Object\r\n }\r\n },\r\n components: {\r\n EipSysTypeSelector,\r\n FormDesigner\r\n },\r\n data() {\r\n return {\r\n selecRow:{},\r\n scriptStr:\"\",\r\n scriptStrDialog:false,\r\n dialogSaveCopyVisible: false,\r\n formEditorDialogVisible: false,\r\n formId: null,\r\n formDefId: null,\r\n bpmForm: {\r\n formKey: \"\",\r\n bos: \"\",\r\n desc: \"\"\r\n },\r\n newForm: { id: \"\", name: \"\", formKey: \"\", typeId: \"\", typeName: \"\" },\r\n oldForm:{},\r\n data: [],\r\n pageResult: {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0\r\n },\r\n cmOptions2: {\r\n value: \"\",\r\n mode: \"groovy\",\r\n readOnly: false,\r\n smartIndent:true,\r\n tabSize: 1,\r\n theme: 'base16-light',\r\n lineNumbers: true,\r\n line: true,\r\n },\r\n };\r\n },\r\n computed: {\r\n ...mapState({\r\n currentUser: state => state.login.currentUser,\r\n header: state => {\r\n return { Authorization: `Bearer ${state.login.currentUser.token}` };\r\n },\r\n actionUrl: function() {\r\n return `${window.context.portal}/file/v1/upload`;\r\n },\r\n formDeleteUrl: function() {\r\n return `${window.context.form}/form/printTemplate/v1/removes`;\r\n }\r\n })\r\n },\r\n mounted() {\r\n this.$validator = this.$root.$validator;\r\n this.$root.$emit(\"resize\");\r\n this.oldForm = this.formRow;\r\n },\r\n methods: {\r\n updateScriptStr(){\r\n this.selecRow.scriptStr=this.scriptStr;\r\n req.request({\"url\":\"${form}/form/printTemplate/v1/\",\"data\":this.selecRow,\"method\":\"PUT\"}).then(res => {\r\n if(res.data.state){\r\n this.$message({\r\n message: '保存成功',\r\n type: 'success'\r\n });\r\n }else{\r\n this.$message.error('保存失败');\r\n }\r\n\r\n this.scriptStrDialog=false;\r\n });\r\n },\r\n downloadTemplate(){\r\n window.location.href = window.context.manage + '/static/docx/打印设置模板.docx';\r\n },\r\n handleCommand(params) {\r\n switch (params.command) {\r\n case \"setMainVersion\":\r\n var url =\r\n \"${form}/form/printTemplate/v1/setDefaultVersion?id=\" +\r\n params.row.id +\r\n \"&formKey=\" +\r\n params.row.formKey +\r\n \"&printType=\" +\r\n params.row.printType;\r\n req.get(url).then(res => {\r\n this.$message({\r\n type: \"success\",\r\n message: res.data.message\r\n });\r\n this.$refs.htTable.load();\r\n });\r\n break;\r\n case \"download\":\r\n if(params.row.printType == \"word\"){\r\n req.download(\r\n \"${portal}/file/v1/downloadFile?fileId=\" + params.row.fileId\r\n );\r\n }else if(params.row.printType == \"form\"){\r\n //编辑表单\r\n this.bpmForm.bos = [];\r\n this.formId = params.row.formId;\r\n this.formDefId = params.row.defId;\r\n this.formEditorDialogVisible = true;\r\n }\r\n break;\r\n case \"setScriptStr\":\r\n this.selecRow=params.row;\r\n this.scriptStr=params.row.scriptStr;\r\n this.scriptStrDialog=true;\r\n break;\r\n default:\r\n break;\r\n }\r\n },\r\n progress() {\r\n Loading.service(\"文件上传中\");\r\n },\r\n setParamIsMain(param){\r\n let files = this.$refs.printTemplateFile.uploadFiles;\r\n if(files && files.length>0){\r\n if(files[0].name!=param.fileName){\r\n param['isMain'] = '';\r\n }\r\n let successSize = 0;\r\n files.forEach(f =>{\r\n if(f.status=='success'){\r\n ++successSize;\r\n }\r\n })\r\n if(successSize==files.length){\r\n this.$refs.printTemplateFile.clearFiles();\r\n }\r\n }\r\n },\r\n success(response) {\r\n let loadingInstance = Loading.service(\"文件上传中\");\r\n if (response.success) {\r\n let param = {\r\n fileId: response.fileId,\r\n fileName: response.fileName,\r\n formKey: this.formKey,\r\n printType: \"word\"\r\n };\r\n this.setParamIsMain(param);\r\n req.post(\"${form}/form/printTemplate/v1/save\", param).then(response => {\r\n this.$message({\r\n type: \"success\",\r\n message: \"上传模板成功\"\r\n });\r\n var param = {\r\n sorter: [{ direction: \"DESC\", property: \"createTime\" }],\r\n querys: [\r\n {\r\n group: \"defaultQueryGroup\",\r\n operation: \"EQUAL\",\r\n relation: \"AND\",\r\n property: \"formKey\",\r\n value: this.formKey\r\n }\r\n ]\r\n };\r\n this.$refs.htTable.load();\r\n });\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: \"模板上传失败\"\r\n });\r\n }\r\n this.$nextTick(() => {\r\n // 以服务的方式调用的 Loading 需要异步关闭\r\n loadingInstance.close();\r\n });\r\n },\r\n beforeAvatarUpload(file) {\r\n var FileExt = file.name.replace(/.+\\./, \"\");\r\n if (\"docx\" != FileExt.toLowerCase()) {\r\n this.$message({\r\n type: \"warning\",\r\n message: \"请上传后缀名为docx的文档\"\r\n });\r\n return false;\r\n }\r\n },\r\n close() {\r\n this.$emit(\"update:visible\", false);\r\n },\r\n loadData(param, cb) {\r\n req\r\n .post(\"${form}/form/printTemplate/v1/getPrintList\", 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 handleClose() {\r\n this.dialogVisible = false;\r\n },\r\n //添加表单模板\r\n addFormTemplate(){\r\n this.newForm.id = this.oldForm.id;\r\n this.dialogSaveCopyVisible = true;\r\n },\r\n handleCloseSaveCopy() {\r\n this.newForm = { id: \"\", name: \"\", formKey: \"\", typeId: \"\", typeName: \"\" };\r\n this.dialogSaveCopyVisible = false;\r\n },\r\n save(){\r\n utils.validateForm(this, \"saveCopyForm\")\r\n .then(() =>{\r\n form.savePrintTemplate(this.newForm).then(resp =>{\r\n if(resp.state){\r\n this.dialogSaveCopyVisible = false;\r\n this.handleCloseSaveCopy();\r\n this.$refs.htTable.load();\r\n }\r\n })\r\n })\r\n .catch(reason =>{\r\n let rules = reason.map(obj => {\r\n return obj.rule;\r\n });\r\n if (rules.includes(\"isExist\")) {\r\n this.$message.error(\"已存在同名模板\");\r\n }\r\n if (rules.includes(\"regex\")) {\r\n this.$message.error(\"只能输入字母、数字、下划线,且以字母开头\");\r\n }\r\n })\r\n },\r\n handleCloseFormEditor() {\r\n this.formEditorDialogVisible = false;\r\n this.$refs.htTable.load();\r\n },\r\n }\r\n};\r\n",null]}