{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\common\\TemplateComponent.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\components\\common\\TemplateComponent.vue","mtime":1675071991694},{"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\r\nimport { mapState, mapActions } from \"vuex\";\r\nimport form from \"@/api/form.js\";\r\nimport { Message } from \"element-ui\";\r\nimport { Loading } from \"element-ui\";\r\nimport VRuntimeTemplate from \"v-runtime-template\";\r\nimport { Base64 } from \"js-base64\";\r\nimport $ from 'jquery';\r\n\r\nexport default {\r\n name: \"templatePreview\",\r\n data() {\r\n return {\r\n alias:'',\r\n html: \"\",\r\n templateInfo: {},\r\n tableData: { selectRows: [], querys: \"\" },\r\n dialogExportVisible: false,\r\n dialogSubVisible: false,\r\n exportData: { getType: \"all\", expField: [] },\r\n displayFields: [],\r\n exportSellection: [],\r\n tabs: [],\r\n ents: [],\r\n searchForm: {},\r\n queryForm:{\r\n queryData:\"\",\r\n },\r\n formType:false,\r\n labelPosition: 'left',\r\n incons:\"el-icon-arrow-down\",\r\n options:{\r\n fullscreen: true,\r\n lock: true,\r\n },\r\n rows:[],\r\n pagination:{page:1,pageSize:30,showTotal:true},\r\n total:0,\r\n };\r\n },\r\n components: {\r\n VRuntimeTemplate,\r\n },\r\n watch: {\r\n alias: function(newVal) {\r\n if (newVal) {\r\n this.init();\r\n }\r\n }\r\n },\r\n mounted() {\r\n this.alias = this.$route.params.alias;\r\n },\r\n methods: {\r\n // 根据当前alias初始化\r\n init() {\r\n const loading = this.$loading(this.options);\r\n let _me = this;\r\n form.getTemplateDataListForm(this.alias)\r\n .then(result => {\r\n loading.close();\r\n if (result.state) {\r\n _me.html = result.value;\r\n this.search();\r\n }\r\n });\r\n form.getBpmDataTemplateInfo(this.alias)\r\n .then(result => {\r\n loading.close();\r\n if (result.state) {\r\n _me.templateInfo = result.value;\r\n if (_me.templateInfo.displayField) {\r\n let displayField = JSON.parse( _me.templateInfo.displayField);\r\n for (var i = 0; i < displayField.length; i++) {\r\n if (displayField[i].type) {\r\n _me.displayFields.push(displayField[i]);\r\n }\r\n }\r\n }\r\n }\r\n });\r\n },\r\n handleSizeChange: function(size) {\r\n //每页下拉显示数据\r\n this.pagination.pageSize = size;\r\n this.search();\r\n },\r\n handleCurrentChange: function(currentPage) {\r\n //点击第几页\r\n this.pagination.page = currentPage;\r\n this.search();\r\n },\r\n search(str) {\r\n const loading = this.$loading(this.options);\r\n let params={};\r\n if (str == \"find\") {\r\n this.pagination.page = 1;\r\n }\r\n //判断为合并查询还是分开查询\r\n if(this.formType){\r\n params = this.getQueryFilter();\r\n }else{\r\n //判断是否配置了合并查询\r\n if($(\".search-query\").length>0){\r\n params = this.getConditionQuery();\r\n }else{\r\n params = this.getQueryFilter();\r\n }\r\n }\r\n form.getBpmTemplateByPagination(params)\r\n .then(result => {\r\n loading.close();\r\n this.rows = result.rows;\r\n this.total = result.total;\r\n this.pagination.page = result.page;\r\n this.pagination.pageSize = result.pageSize;\r\n });\r\n },\r\n getQueryFilter() {\r\n let operationMap = this.getSearchItems();\r\n let querys = []; //查询条件\r\n let queryFilter = {};\r\n let pageBean = { pageBean: this.pagination };\r\n let params = { templateId: this.templateInfo.id };\r\n params.pagination = pageBean;\r\n if ($.isEmptyObject(this.searchForm)) {\r\n return params;\r\n } else {\r\n for (var key in this.searchForm) {\r\n if (\r\n typeof this.searchForm[key] != \"undefined\" &&\r\n this.searchForm[key] != \"\"\r\n ) {\r\n if(this.searchForm[key] instanceof Array) {\r\n for ( var i = 0; i {\r\n var s = \"\";\r\n for (var i = 0; i < this.tableData.selectRows.length; i++) {\r\n s +=\r\n s + this.tableData.selectRows[i][this.templateInfo.pkField] + \",\";\r\n }\r\n s = s.substring(0, s.length - 1);\r\n let data = { ids: s, boAlias: this.templateInfo.boDefAlias };\r\n this.$store.dispatch(\"form/deleteTemplateDataById\", data).then(() => {\r\n this.search();\r\n });\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: \"info\",\r\n message: \"已取消删除\"\r\n });\r\n });\r\n },\r\n del(id) {\r\n this.$confirm(\"此操作将删除该文件, 是否继续?\", \"提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\"\r\n })\r\n .then(() => {\r\n let data = { ids: id, boAlias: this.templateInfo.boDefAlias };\r\n this.$store.dispatch(\"form/deleteTemplateDataById\", data).then(() => {\r\n this.search();\r\n });\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: \"info\",\r\n message: \"已取消删除\"\r\n });\r\n });\r\n },\r\n operating(templateId, id, action, defId, isStartFlow) {\r\n if (!templateId) {\r\n templateId = this.templateInfo.id;\r\n action = \"add\";\r\n }\r\n var url = \"/statement/template/form/\" + this.alias + \"/\" + action;\r\n if (id) {\r\n url = url + \"?id=\" + id + \"&\";\r\n } else {\r\n url += \"?\";\r\n }\r\n var startFlowStr = \"startFlow=false\";\r\n if (action == \"add\" && defId) {\r\n startFlowStr = \"startFlow=true\";\r\n } else if (id && isStartFlow === false && defId) {\r\n startFlowStr = \"startFlow=true\";\r\n }\r\n this.$router.push(url + startFlowStr);\r\n },\r\n startFlow(id) {\r\n let data = {\r\n defKey: this.templateInfo.defId,\r\n businessKey: id,\r\n boAlias: this.templateInfo.boDefAlias\r\n };\r\n let loadingInstance = Loading.service({ fullscreen: true }); //开始\r\n this.$store.dispatch(\"storeProcess/startForm\", data).then(result => {\r\n loadingInstance.close(); // 结束\r\n if (result.state) {\r\n this.$message.success(result.message);\r\n this.search();\r\n } else {\r\n this.disabled = false;\r\n this.$message.error(result.message);\r\n }\r\n });\r\n },\r\n //点击导出按钮\r\n exports() {\r\n this.dialogExportVisible = true;\r\n },\r\n\r\n //显示子表对话框\r\n showSubList(refId) {\r\n this.getSubEntsByFormKey(refId);\r\n },\r\n\r\n //确定导出\r\n submitExport() {\r\n if (!this.exportData || this.exportData.expField.length < 1) {\r\n this.$message({\r\n type: \"info\",\r\n message: \"请选择要导出的字段!\"\r\n });\r\n return;\r\n }\r\n let expField = \"\";\r\n for (var i = 0; i < this.exportData.expField.length; i++) {\r\n if (i > 0) {\r\n expField += \",\";\r\n }\r\n expField += this.exportData.expField[i].name;\r\n }\r\n expField = Base64.encode(expField);\r\n let data = {\r\n boAlias: this.templateInfo.alias,\r\n getType: this.exportData.getType,\r\n expField: expField,\r\n filterKey: \"\"\r\n };\r\n data.query = this.getQueryFilter().pagination;\r\n let loadingInstance = Loading.service({ fullscreen: true }); //开始\r\n this.$store.dispatch(\"form/templateExport\", data).then(() => {\r\n loadingInstance.close(); // 结束\r\n this.dialogExportVisible = false;\r\n });\r\n },\r\n\r\n //取消导出\r\n exportCancel() {\r\n this.dialogExportVisible = false;\r\n this.exportData.expField = [];\r\n },\r\n\r\n //取消子表对话框\r\n subCancel() {\r\n this.dialogSubVisible = false;\r\n },\r\n\r\n handleExportSelectionChange(val) {\r\n this.exportData.expField = [];\r\n if (val) {\r\n this.exportData.expField = val;\r\n }\r\n },\r\n\r\n //全选\r\n handleExportSelectAll() {\r\n this.exportData.expField = this.displayFields;\r\n },\r\n\r\n //排序\r\n sort(index, type) {\r\n if (\"up\" == type) {\r\n if (index === 0) {\r\n this.$message({\r\n message: \"已经是列表中第一位\",\r\n type: \"warning\"\r\n });\r\n } else {\r\n let temp = this.displayFields[index - 1];\r\n this.$set(this.displayFields, index - 1, this.displayFields[index]);\r\n this.$set(this.displayFields, index, temp);\r\n }\r\n } else {\r\n if (index === this.displayFields.length - 1) {\r\n this.$message({\r\n message: \"已经是列表中最后一位\",\r\n type: \"warning\"\r\n });\r\n } else {\r\n this.isTransition = true;\r\n let i = this.displayFields[index + 1];\r\n this.$set(this.displayFields, index + 1, this.displayFields[index]);\r\n this.$set(this.displayFields, index, i);\r\n }\r\n }\r\n },\r\n\r\n getSubEntsByFormKey(refId) {\r\n let _me = this;\r\n _me.tabs = [];\r\n if (!_me.ents || _me.ents.length < 1) {\r\n this.$store\r\n .dispatch(\"form/getSubEntsByFormKey\", this.templateInfo.alias)\r\n .then(ents => {\r\n _me.ents = ents;\r\n this.getSubData(_me, refId);\r\n });\r\n } else {\r\n this.getSubData(_me, refId);\r\n }\r\n },\r\n\r\n getSubData(_me, refId) {\r\n _me.tabs = [];\r\n let ents = _me.ents;\r\n if (ents && ents.length > 0) {\r\n for (var i = 0; i < ents.length; i++) {\r\n var attributeList = ents[i].attributeList;\r\n var tab = {\r\n name: ents[i].tableName,\r\n title: ents[i].comment,\r\n attributeList: attributeList,\r\n comment: ents[i].comment\r\n };\r\n this.$store\r\n .dispatch(\"form/getSubData\", { name: ents[i].name, refId: refId })\r\n .then(data => {\r\n if (data && data.length > 0) {\r\n tab.dataList = data;\r\n } else {\r\n tab.dataList = [];\r\n }\r\n _me.tabs.push(tab);\r\n this.dialogSubVisible = true;\r\n });\r\n }\r\n }\r\n }\r\n }\r\n};\r\n",null]}