{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\xq-web-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\common\\HtColumn.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\src\\components\\common\\HtColumn.vue","mtime":1667327529012},{"path":"D:\\jenkins\\workspace\\xq-web-fvue\\babel.config.js","mtime":1667327525434},{"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\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"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":["import \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.string.starts-with\";\nimport \"core-js/modules/es6.function.name\";\nimport \"core-js/modules/es6.regexp.replace\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport req from \"@/request.js\";\nimport VRuntimeTemplate from \"v-runtime-template\";\nimport { mapState } from \"vuex\";\nimport homeTodo from \"@/components/home/homeTodo.vue\";\nimport todayMeeting from \"@/components/home/todayMeeting.vue\";\nimport oftenFlow from \"@/components/home/oftenFlow.vue\";\nimport oftenFlowList from \"@/components/home/oftenFlowList.vue\";\nimport homeNotice from \"@/components/home/homeNotice.vue\";\nimport homeNews from \"@/components/home/homeNews.vue\";\nimport homeCarousel from \"@/components/home/homeCarousel.vue\";\nimport homeNewsList from \"@/components/home/homeNewsList.vue\";\nimport oftenSystem from \"@/components/home/oftenSystem.vue\";\nimport customChart from \"@/components/home/customChart.vue\";\n\nvar eipChart = function eipChart() {\n return import(\"@/components/form/chart/EipChart.vue\");\n};\n\nvar chart = function chart() {\n return import(\"@/components/form/chart/Chart.vue\");\n};\n\nimport CustomDialogShowDetail from \"@/components/dialog/CustomDialogShowDetail.vue\";\nimport homeInst from \"@/components/home/homeInst.vue\";\n\nvar Base64 = require(\"js-base64\").Base64;\n\nvar templatePreview = function templatePreview() {\n return import(\"@/components/dataTemplate/templatePreview.vue\");\n};\n\nimport hotentUiUtils from \"@/hotent-ui-util.js\";\nvar STATUS = {\n NORMAL: \"待办\",\n TRANSFORMED: \"流转\",\n TRANSFORMEDINQU: \"征询\",\n DELIVERTO: \"转办\",\n FOLLOW: \"跟踪\",\n COMMU: \"沟通\",\n BACK: \"驳回\",\n ADDSIGN: \"会签加签\",\n AGENT: \"委托\",\n SHARE: \"共享\",\n BACKSHARE: \"驳回共享\",\n APPROVELINEED: \"并行审批\",\n SIGNSEQUENCEED: \"顺序签署\",\n SIGNLINEED: \"并行签署\",\n USERADDSIGN: \"用户加签\"\n};\nexport default {\n name: \"ht-column\",\n components: {\n VRuntimeTemplate: VRuntimeTemplate,\n homeTodo: homeTodo,\n todayMeeting: todayMeeting,\n oftenFlow: oftenFlow,\n oftenFlowList: oftenFlowList,\n homeNotice: homeNotice,\n homeNews: homeNews,\n homeCarousel: homeCarousel,\n oftenSystem: oftenSystem,\n customChart: customChart,\n eipChart: eipChart,\n chart: chart,\n homeNewsList: homeNewsList,\n CustomDialogShowDetail: CustomDialogShowDetail,\n homeInst: homeInst,\n templatePreview: templatePreview\n },\n props: {\n columnAlias: {\n type: String,\n required: true\n },\n // 是否来自于预览页面\n fromPreview: {\n type: Boolean,\n default: false\n } //是否存在tab标签中\n ,\n isTab: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n status: STATUS,\n loading: true,\n html: \"本栏目无模板\",\n data: {},\n column: {},\n isCommon: false,\n isChart: false,\n isReport: false,\n isCustomDialog: false,\n customDialog: {\n alias: \"\"\n },\n pageBean: {\n page: 1,\n pageSize: 20,\n total: 0,\n showTotal: false\n },\n canDisplay: true,\n isTemplate: false,\n templateKey: \"\"\n };\n },\n computed: mapState({\n columnDataLoadedAliases: function columnDataLoadedAliases(state) {\n return state.menu.columnDataLoadedAliases;\n }\n }),\n watch: {\n \"column.colHeight\": function columnColHeight(val) {\n if (val && val > 0) {\n this.$refs.colBody.style.height = val + \"px\";\n }\n },\n \"pageBean.page\": function pageBeanPage(val) {\n if (val && val > 0 && this.column.needPage == 1) {\n this.load();\n }\n },\n columnDataLoadedAliases: {\n handler: function handler(v) {\n v && this.handleColumnData(this.$store.getters[\"menu/getColumnDataWithAlias\"](this.columnAlias));\n },\n immediate: true\n }\n },\n created: function created() {\n this.load(true);\n },\n methods: {\n handleTodoListClick: function handleTodoListClick(item) {\n this.$router.push(\"/v-flow/v-todo/\" + item.orgName + \"/\" + item.orgId);\n },\n openMore: function openMore(url) {\n this.$router.push({\n path: url\n });\n },\n refresh: function refresh() {\n this.load();\n },\n close: function close() {\n this.$refs.col.remove();\n },\n load: function load(batch) {\n var _this = this;\n\n // 多个栏目一起请求时,合并为一次请求后台\n if (batch) {\n // 不需要回调处理数据,通过vuex监听数据更新\n this.$store.dispatch(\"menu/getColumnByAliasBatch\", this.columnAlias);\n } else {\n this.loading = true;\n this.$store.dispatch(\"menu/getColumnByAlias\", this.columnAlias).then(function (data) {\n _this.handleColumnData(data);\n });\n }\n },\n handleColumnData: function handleColumnData(data) {\n if (!data) {\n this.loading = false;\n this.canDisplay = false;\n return;\n }\n\n this.column = data; //计算该栏目是否展示\n\n if (this.fromPreview) {\n this.canDisplay = true;\n } else {\n this.canDisplay = this.column.displayRights;\n } //如果无展示权限,则不进行栏目数据渲染了,并隐藏整个组件\n\n\n if (!this.canDisplay) {\n this.loading = false;\n return;\n }\n\n if (this.column && (this.column.colType == 1 || this.column.colType == 4)) {\n var dataParam = JSON.parse(this.column.dataParam);\n\n if (dataParam.chartType == 2) {\n this.chartId = dataParam.id;\n this.isChart = true;\n this.loading = false;\n } else {\n this.isReport = true;\n this.getChartsData(dataParam.id);\n }\n } else {\n //自定义对话框\n if (this.column.dataMode === 1) {\n this.getCustomDialogData();\n } //restful查询\n else if (this.column.dataMode === 3) {\n this.isCommon = true;\n this.getDataToParse();\n } else if (this.column.dataMode === 4) {\n //数据报表\n if (this.column.dataFrom) {\n var dataFrom = JSON.parse(this.column.dataFrom);\n this.templateKey = dataFrom.alias;\n }\n\n this.isTemplate = true;\n this.loading = false;\n } else {\n this.isCommon = true;\n this.dencodeHtml();\n this.loading = false;\n }\n }\n },\n //图标\n getChartsData: function getChartsData(id) {\n var _this2 = this;\n\n this.$store.dispatch(\"storeProcess/getEchartData\", id).then(function (response) {\n _this2.data = response.options;\n _this2.loading = false;\n\n _this2.dencodeHtml();\n });\n },\n getDataToParse: function getDataToParse() {\n var _this3 = this;\n\n var column = this.column;\n\n if (!column.dataFrom) {\n this.dencodeHtml();\n this.loading = false;\n return;\n }\n\n if (column.colType != 1) {\n //post请求参数\n var queryParams = {}; //如果需要分页\n\n if (column.needPage === 1) {\n queryParams.pageBean = this.pageBean;\n } //get请求参数\n\n\n var urlParam = \"\";\n\n if (column.dataParam) {\n var ctx = {};\n var curUserDetail = this.$store.state.user.currentUserDetail;\n\n if (curUserDetail && curUserDetail.user) {\n ctx.curUserAccount = curUserDetail.user.account;\n ctx.curUserId = curUserDetail.user.id;\n }\n\n column.dataParam = hotentUiUtils.parseExp(column.dataParam, ctx);\n }\n\n var dataParam = JSON.parse(typeof column.dataParam != 'undefined' && column.dataParam != \"\" ? column.dataParam.replace(/\\\\\\\\/g, '\\\\') : \"[]\");\n\n if (dataParam) {\n for (var i = 0; i < dataParam.length; i++) {\n var value = dataParam[i][\"value\"];\n var name = dataParam[i][\"name\"];\n\n if (column.requestType == \"POST\") {\n try {\n value = JSON.parse(value);\n } catch (e) {}\n\n queryParams[name] = value; //如果参数中也设置了分页\n\n if (name === \"pageBean\") {\n this.pageBean = value;\n }\n } else {\n urlParam = i > 0 ? urlParam + \"&\" + name + \"=\" + value : \"?\" + name + \"=\" + value;\n }\n }\n } //请求获取数据\n\n\n if (column.requestType && column.requestType == \"POST\") {\n req.post(column.dataFrom, queryParams).then(function (response) {\n _this3.data = response.data;\n _this3.loading = false;\n\n if (_this3.column.needPage === 1) {\n _this3.pageBean.page = _this3.data.page || 1;\n _this3.pageBean.pageSize = _this3.data.pageSize || 10;\n _this3.pageBean.total = _this3.data.total || 0;\n }\n\n _this3.dencodeHtml();\n }, function (err) {\n _this3.loading = false;\n _this3.html = \"\".concat(err, \"\");\n });\n } else {\n req.get(column.dataFrom + urlParam).then(function (response) {\n _this3.data = response.data;\n _this3.loading = false;\n\n _this3.dencodeHtml();\n }, function (err) {\n _this3.loading = false;\n _this3.html = \"\".concat(err, \"\");\n });\n }\n }\n },\n getCustomDialogData: function getCustomDialogData() {\n var this_ = this;\n var dataFrom = JSON.parse(this.column.dataFrom || \"{}\");\n\n if (!dataFrom.alias) {\n this_.loading = false;\n this_.isCommon = true;\n this.dencodeHtml();\n return;\n }\n\n var url = \"${form}/form/customDialog/v1/getByAlias?alias=\" + dataFrom.alias;\n req.get(url).then(function (customDialog) {\n customDialog = customDialog.data; //格式化对话框的显示字段、返回字段、条件字段、排序字段\n\n customDialog.displayfield = JSON.parse(customDialog.displayfield);\n\n for (var i = 0; i < customDialog.displayfield.length; i++) {\n customDialog.displayfield[i].field = customDialog.displayfield[i].field.toUpperCase();\n }\n\n customDialog.resultfield = JSON.parse(customDialog.resultfield);\n customDialog.sortfield = JSON.parse(customDialog.sortfield);\n customDialog.conditionfield = JSON.parse(customDialog.conditionfield); //列表\n\n if (customDialog.style == 0) {\n this_.customDialog = customDialog;\n this_.isCustomDialog = true;\n this_.loading = false;\n setTimeout(function () {\n this_.$refs.customDialogShowDetail.initData(); //显示自定义对话框列表预览弹框\n });\n }\n });\n },\n dencodeHtml: function dencodeHtml() {\n if (this.column.templateHtml) {\n this.column.html = Base64.decode(this.column.templateHtml);\n } else {\n if (Array.isArray(this.data)) {\n this.reportOption = this.data[0];\n }\n }\n },\n handleRowClick: function handleRowClick(url, newWin) {\n if (url && (url.startsWith(\"/inst/\") || url.startsWith(\"/start/\"))) {\n this.handleOpenUrl(url, newWin);\n return;\n }\n\n this.$router.push(url);\n },\n handleTodoClick: function handleTodoClick(row, newWin) {\n if (row.status == \"SHARE\" || row.status == \"BACKSHARE\") {\n if (row.identityList && row.identityList.length == 1) {\n this.handleOpenUrl(\"/task/\" + row.id + \"/\" + row.identityList[0].id, newWin);\n } else {\n var html = \"\";\n var this_ = this;\n this.$alert(html, \"请选择一个领导代为审批\", {\n dangerouslyUseHTMLString: true,\n beforeClose: function beforeClose(action, instance, done) {\n if (action == \"confirm\") {\n var se = document.getElementById(\"approvalLeaderSelect\");\n\n if (se.selectedIndex == 0) {\n this.$message.warning(\"请选择代为审批的领导\");\n } else {\n instance.close();\n this_.handleOpenUrl(\"/task/\" + row.id + \"/\" + se[se.selectedIndex].value, newWin);\n }\n } else {\n instance.close();\n }\n }\n });\n }\n } else if (row.status == \"AGENT\" && row.ownerId != row.assigneeId && row.ownerId == this.$store.state.login.currentUser.userId) {\n //委托任务\n this.handleOpenUrl(\"/instRead/\" + row.procInstId + \"/agent\", newWin);\n } else {\n this.handleOpenUrl(\"/task/\" + row.id + \"/0\", newWin);\n }\n },\n handleOpenUrl: function handleOpenUrl(url, newWin) {\n if (!newWin) {\n this.$router.push(url);\n return;\n }\n\n if (!url) {\n return;\n }\n\n var token = this.$store.state.login.currentUser.token;\n\n if (!url.toLowerCase().startsWith(\"http\")) {\n url = window.context.front + url;\n }\n\n if (url.indexOf('?') == -1) {\n url = url + \"?token=\" + token;\n } else {\n url = url + \"&token=\" + token;\n }\n\n window.open(url, \"_blank\");\n },\n clickApp: function clickApp(app) {\n //1常规应用 2数据报表 3自定义视图 4图表\n if (app.type == 4) {\n var content = JSON.parse(app.content);\n this.$router.push({\n path: 'appContent',\n query: {\n id: content.id,\n type: app.type\n }\n });\n } else if (app.type === 2) {\n var _content = JSON.parse(app.content);\n\n this.$router.push({\n path: 'appContent',\n query: {\n key: _content.key,\n type: app.type\n }\n });\n } else if (app.type === 3) {\n var _content2 = JSON.parse(app.content);\n\n this.$router.push({\n path: 'appContent',\n query: {\n alias: _content2.alias,\n sqlAlias: _content2.sqlAlias,\n type: app.type\n }\n });\n } else if (app.type === 1) {\n this.$router.push({\n path: \"appContent\",\n query: {\n id: app.id,\n type: app.type\n }\n });\n } else if (app.type === 6) {\n var _content3 = JSON.parse(app.content);\n\n this.$router.push({\n path: 'appContent',\n query: {\n id: _content3.id,\n type: app.type\n }\n });\n } else if (app.type === 7) {\n this.$router.push({\n path: 'appContent',\n query: {\n path: app.content,\n type: app.type\n }\n });\n }\n }\n }\n};",null]}