{"remainingRequest":"D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xq-web-bpm\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!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\\BusinessObjExternalDialog.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xq-web-bpm\\src\\views\\form\\BusinessObjExternalDialog.vue","mtime":1675071992881},{"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":["import \"core-js/modules/es7.object.get-own-property-descriptors\";\nimport \"core-js/modules/es6.object.keys\";\nimport _toConsumableArray from \"D:/jenkins/workspace/xq-web-bpm/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"D:/jenkins/workspace/xq-web-bpm/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport \"core-js/modules/es7.array.includes\";\nimport \"core-js/modules/es6.string.includes\";\nimport \"core-js/modules/es6.regexp.replace\";\nimport \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.function.name\";\nimport \"core-js/modules/es6.array.find\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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 form from \"@/api/form.js\";\nimport util from \"@/hotent-ui-util.js\";\nexport default {\n data: function data() {\n return {\n dialogVisible: false,\n // 对话框是否可以见\n editSubOrSun: false,\n addFk: false,\n tableList: [],\n // 当前数据源的物理表集合\n entExtsTable: [],\n // 所选物理表的字段集合\n entExtConfirm: false,\n entsCount: 0,\n // 当前业务对象的模型数量\n editing: false,\n // 是否编辑\n hideAttr: [],\n // 需要隐藏起来的字段集合\n entExts: {\n // 外部表的form数据\n comment: \"\",\n desc: \"\",\n dsName: \"\",\n index: 0,\n isExternal: \"1\",\n name: \"\",\n packageId: \"\",\n pk: \"\",\n fk: \"\",\n pkType: \"\",\n relation: \"\",\n show: \"\",\n status: \"\",\n tableName: \"\",\n attributeList: [],\n type: \"\"\n },\n dataSource: [],\n // 当前数据源集合\n currentDataSource: null,\n // 当前所选择的数据源\n searchTableName: \"\",\n // 要搜索的表名\n extsTableType: [{\n key: \"subTable\",\n value: \"子表\"\n }, {\n key: \"sunTable\",\n value: \"孙表\"\n }],\n querying: false,\n // 是否正在查询:查询数据源、查询数据库表、查询表字段\n externalTables: []\n };\n },\n watch: {\n \"entExts.dsName\": {\n handler: function handler(newVal) {\n if (newVal && this.dataSource && this.dataSource.length > 0) {\n this.currentDataSource = this.dataSource.find(function (d) {\n return d.alias == newVal;\n });\n }\n },\n immediate: true\n }\n },\n methods: {\n // 打开选择外部表的对话框\n open: function open(currentEnt, currentEntType, entsCount, externalTables) {\n var _this = this;\n\n this.dialogVisible = true;\n this.entsCount = entsCount;\n this.entExts.type = currentEntType;\n this.externalTables = externalTables;\n this.editing = currentEntType ? true : false;\n this.editSubOrSun = currentEntType == \"subTable\" || currentEntType == \"sunTable\";\n this.querying = true;\n form.getDataSource().then(function (resp) {\n _this.dataSource = resp.data;\n\n if (!_this.entExts.dsName) {\n _this.entExts.dsName = \"LOCAL\";\n\n _this.changeSource();\n }\n }).finally(function () {\n _this.querying = false;\n });\n var searchTable = null;\n\n if (currentEnt) {\n searchTable = currentEnt.tableName;\n }\n\n if (searchTable) {\n this.entExts.comment = currentEnt.comment;\n this.entExts.name = currentEnt.name;\n this.entExts.dsName = currentEnt.dsName;\n this.entExts.tableName = currentEnt.tableName;\n this.entExts.fk = currentEnt.fk;\n this.addFk = true;\n this.getTableList().then(function () {\n _this.changeTableName();\n }).catch(function (err) {\n _this.$message.error(err);\n });\n }\n },\n handleClose: function handleClose() {\n this.dialogVisible = false;\n this.querying = false;\n this.addFk = false;\n this.tableList = [];\n this.entExts = {\n desc: \"\",\n dsName: \"\",\n index: 0,\n isExternal: \"1\",\n name: \"\",\n packageId: \"\",\n pk: \"\",\n fk: \"\",\n pkType: \"\",\n relation: \"\",\n show: \"\",\n status: \"\",\n tableName: \"\",\n attributeList: [],\n type: \"\"\n };\n this.entExtsTable = [];\n },\n changeSource: function changeSource() {\n this.entExts.tableName = \"\";\n this.searchTableName = \"\";\n this.entExtsTable = [];\n this.getTableList(\"select\");\n },\n //外部表数据\n getTableList: function getTableList(type) {\n var this_ = this;\n this.entExtConfirm = true;\n return new Promise(function (resolve, reject) {\n if (type) {\n this_.showMessage = true;\n }\n\n if (!this_.entExts.dsName) {\n reject(\"当前未选择数据源\");\n }\n\n var param = {\n dsalias: this_.entExts.dsName,\n isTable: \"1\",\n objName: this_.searchTableName\n };\n this_.querying = true;\n this_.tableList = [];\n form.getTableList(param).then(function (resp) {\n if (resp.data) {\n resp.data.forEach(function (v) {\n v.comment = v.name + \"(\" + v.comment + \")\";\n });\n\n if (this_.showMessage) {\n this_.$message({\n message: \"查询成功,请选择外部表\",\n type: \"success\"\n });\n }\n\n this_.tableList = resp.data;\n }\n }).finally(function () {\n this_.entExtConfirm = false;\n this_.showMessage = false;\n this_.querying = false;\n resolve();\n });\n });\n },\n //外部表选择\n changeTableName: function changeTableName() {\n var _this2 = this;\n\n this.entExtConfirm = true;\n var param = {\n dsalias: this.entExts.dsName,\n isTable: \"1\",\n objName: this.entExts.tableName\n };\n this.querying = true;\n form.getHideAttr(param.objName).then(function (resp) {\n if (resp) {\n _this2.hideAttr = resp;\n }\n }).then(function () {\n _this2.querying = true;\n form.changeTableName(param, false).then(function (resp) {\n _this2.entExtsTable = JSON.parse(JSON.stringify(resp.data.table.columnList).replace(/charLen/g, \"attrLength\").replace(/fieldName/g, \"name\").replace(/columnType/g, \"dataType\").replace(/fdataType/g, \"fcolumnType\"));\n\n _this2.entExtsTable.forEach(function (item) {\n item.fieldName = item.name;\n });\n\n if (_this2.hideAttr.length > 0) {\n var attr = \"\";\n\n _this2.hideAttr.forEach(function (v) {\n attr += v.fieldName + \",\";\n });\n\n _this2.entExtsTable = _this2.entExtsTable.filter(function (value) {\n return !attr.includes(value.fieldName);\n });\n }\n\n resp.data.table.primayKey.forEach(function (data) {\n _this2.entExts.pk = data.fieldName;\n _this2.entExts.pkType = data.columnType;\n });\n _this2.hideAttr = [];\n }).finally(function () {\n _this2.entExtConfirm = false;\n _this2.querying = false;\n });\n }).finally(function () {\n _this2.querying = false;\n });\n },\n validatorEntExts: function validatorEntExts() {\n var _this3 = this;\n\n util.validateForm(this, \"externalForm\").then(function () {\n _this3.buildExternalEnt();\n }).catch(function (reason) {\n var rule = reason.map(function (v) {\n return v.rule;\n });\n\n if (rule.includes(\"required\")) {\n _this3.$message.warning(\"请将信息填写完整\");\n } else if (rule.includes(\"alpha_dash\")) {\n _this3.$message.warning(\"请按正确的格式输入\");\n }\n });\n },\n buildExternalEnt: function buildExternalEnt() {\n this.entExts.index = this.entsCount;\n\n if (!this.editSubOrSun && this.entExts.index > 0) {\n if (!this.entExts.type) {\n this.$message.warning(\"请选择外部表类型。\");\n return;\n }\n\n if (!this.entExts.fk) {\n this.$message.warning(\"请指定外键字段。\");\n return;\n }\n\n if (this.externalTables.includes(this.entExts.tableName)) {\n this.$message.warning(\"该外部表已存在,不允许重复添加。\");\n return;\n }\n }\n\n console.log(this.externalTables);\n this.entExts.relation = this.entExts.relation || \"onetomany\";\n this.entExts.show = this.entExts.show || \"子实体-外\";\n\n if (this.entExtsTable && this.entExtsTable.length > 0) {\n // 若数据源为Oracle的 则要判断数据类型为date 还是 datetime 不同类型赋值类型不同\n if (this.currentDataSource && this.currentDataSource.dbType == \"oracle\") {\n this.entExtsTable.forEach(function (item) {\n if (!item.format && item.dataType == \"date\") {\n item.format = \"yyyy-MM-dd\";\n } else if (!item.format && item.dataType == \"datatime\") {\n item.format = \"yyyy-MM-dd HH:mm:ss\";\n }\n });\n } else {\n this.entExtsTable.forEach(function (item) {\n if (!item.format && item.dataType == \"date\") {\n if (item.fcolumnType == \"datetime\") {\n item.format = \"yyyy-MM-dd HH:mm:ss\";\n } else {\n item.format = \"yyyy-MM-dd\";\n }\n }\n });\n }\n }\n\n var entExts = _objectSpread({}, this.entExts),\n entExtsTable = _toConsumableArray(this.entExtsTable);\n\n var externalEnt = {\n entExts: entExts,\n entExtsTable: entExtsTable,\n addFk: this.addFk\n };\n this.$emit(\"selectExternal\", externalEnt);\n this.$emit(\"addExternalTable\", entExts.tableName);\n this.handleClose();\n }\n }\n};",null]}