olp-table 7.2.34 → 7.2.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle-report.html +3 -3
- package/olp-table.common.js +29 -105
- package/olp-table.umd.js +30 -106
- package/olp-table.umd.min.js +30 -106
- package/package.json +1 -1
package/olp-table.common.js
CHANGED
|
@@ -8,14 +8,14 @@
|
|
|
8
8
|
*/
|
|
9
9
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
10
10
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
11
|
-
module.exports = factory(require("vue"), require("pinia"), require("axios"), require("qs"), require("element-plus"), require("pako"), require("exceljs"), require("vxe-table"), require("
|
|
11
|
+
module.exports = factory(require("vue"), require("pinia"), require("axios"), require("qs"), require("element-plus"), require("pako"), require("exceljs"), require("vxe-table"), require("@element-plus/icons-vue"), require("@smallwei/avue"), require("pinyin-pro"));
|
|
12
12
|
else if(typeof define === 'function' && define.amd)
|
|
13
|
-
define(["vue", "pinia", "axios", "qs", "element-plus", "pako", "exceljs", "vxe-table", "
|
|
13
|
+
define(["vue", "pinia", "axios", "qs", "element-plus", "pako", "exceljs", "vxe-table", "@element-plus/icons-vue", "@smallwei/avue", "pinyin-pro"], factory);
|
|
14
14
|
else {
|
|
15
|
-
var a = typeof exports === 'object' ? factory(require("vue"), require("pinia"), require("axios"), require("qs"), require("element-plus"), require("pako"), require("exceljs"), require("vxe-table"), require("
|
|
15
|
+
var a = typeof exports === 'object' ? factory(require("vue"), require("pinia"), require("axios"), require("qs"), require("element-plus"), require("pako"), require("exceljs"), require("vxe-table"), require("@element-plus/icons-vue"), require("@smallwei/avue"), require("pinyin-pro")) : factory(root["vue"], root["pinia"], root["axios"], root["qs"], root["element-plus"], root["pako"], root["exceljs"], root["vxe-table"], root["@element-plus/icons-vue"], root["@smallwei/avue"], root["pinyin-pro"]);
|
|
16
16
|
for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
|
|
17
17
|
}
|
|
18
|
-
})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE_vue__, __WEBPACK_EXTERNAL_MODULE_pinia__, __WEBPACK_EXTERNAL_MODULE_axios__, __WEBPACK_EXTERNAL_MODULE_qs__, __WEBPACK_EXTERNAL_MODULE_element_plus__, __WEBPACK_EXTERNAL_MODULE_pako__, __WEBPACK_EXTERNAL_MODULE_exceljs__, __WEBPACK_EXTERNAL_MODULE_vxe_table__,
|
|
18
|
+
})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE_vue__, __WEBPACK_EXTERNAL_MODULE_pinia__, __WEBPACK_EXTERNAL_MODULE_axios__, __WEBPACK_EXTERNAL_MODULE_qs__, __WEBPACK_EXTERNAL_MODULE_element_plus__, __WEBPACK_EXTERNAL_MODULE_pako__, __WEBPACK_EXTERNAL_MODULE_exceljs__, __WEBPACK_EXTERNAL_MODULE_vxe_table__, __WEBPACK_EXTERNAL_MODULE__element_plus_icons_vue__, __WEBPACK_EXTERNAL_MODULE__smallwei_avue__, __WEBPACK_EXTERNAL_MODULE_pinyin_pro__) {
|
|
19
19
|
return /******/ (function() { // webpackBootstrap
|
|
20
20
|
/******/ var __webpack_modules__ = ({
|
|
21
21
|
|
|
@@ -487,7 +487,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core
|
|
|
487
487
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
488
488
|
|
|
489
489
|
"use strict";
|
|
490
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/components/table/model/model-index.vue */ \"./src/components/table/model/model-index.vue\");\n/* harmony import */ var _components_ol_dialog_table_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ol-dialog-table.vue */ \"./src/components/ol-dialog-table.vue\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'olTableSelect',\n components: {\n OlDialogTable: _components_ol_dialog_table_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n ModelIndex: _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n },\n props: {\n defaultValue: {\n required: false,\n default: ''\n },\n slotName: {\n required: false\n },\n uuid: {\n required: true\n },\n http: {},\n config: {},\n disabled: {\n default: false\n }\n },\n provide() {\n return {\n tableAll: this.table,\n http: this.http\n };\n },\n data() {\n return {\n selectDataList: [],\n dialogVisible: false,\n selectValue: {\n value: this.defaultValue,\n label: '',\n data: []\n },\n dialogKey: 1\n };\n },\n watch: {\n defaultValue() {\n this.selectValue.value = this.defaultValue;\n }\n },\n methods: {\n //打开表格选择组件\n openTable() {\n if (this.disabled) {\n return;\n }\n this.dialogKey++; //每次打开对话框时,key值加1,防止对话框重复渲染\n this.dialogVisible = true; //打开对话框\n this.$refs.table.init({\n uuid: this.uuid,\n title: '选择数据'\n });\n },\n //选中数据按钮回调\n getSelectRowChangeButClick({\n v\n }) {\n let rows = v;\n if (rows.length === 0) {\n this.clearedSelectValue(); //清空下拉框的值\n this.dialogVisible = false; //关闭对话框\n return;\n }\n for (const row of rows) {\n let label = this.config.labelIsAppendCode ? `[${row[this.config.key]}]${row[this.config.label]}` : row[this.config.label];\n this.selectDataList.push({\n label: label,\n value: row[this.config.key]\n });\n }\n\n //选中第一行数据,目前暂时支持单选\n this.selectValue = {\n value: rows[0][this.config.key],\n label: rows[0][this.config.label],\n data: rows[0]\n };\n this.updateValue(); //更新下拉框的值\n this.dialogVisible = false; //关闭对话框\n this.$refs.table.cancelEvent();\n },\n //关闭选择数据按钮回调\n getSelectRowCloseButClick() {\n this.dialogVisible = false;\n },\n //更新父组件的值\n updateValue() {\n this.$emit('olTableSelectChange', this.slotName, this.selectValue);\n },\n clearedSelectValue() {\n this.selectValue = {\n value: '',\n label: '',\n data: []\n };\n this.updateValue(); //更新下拉框的值\n this.$refs.table.cancelEvent();\n },\n initDefaultValue() {\n if (this.defaultValue
|
|
490
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/components/table/model/model-index.vue */ \"./src/components/table/model/model-index.vue\");\n/* harmony import */ var _components_ol_dialog_table_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ol-dialog-table.vue */ \"./src/components/ol-dialog-table.vue\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'olTableSelect',\n components: {\n OlDialogTable: _components_ol_dialog_table_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n ModelIndex: _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n },\n props: {\n defaultValue: {\n required: false,\n default: ''\n },\n slotName: {\n required: false\n },\n uuid: {\n required: true\n },\n http: {},\n config: {},\n disabled: {\n default: false\n }\n },\n provide() {\n return {\n tableAll: this.table,\n http: this.http\n };\n },\n data() {\n return {\n selectDataList: [],\n dialogVisible: false,\n selectValue: {\n value: this.defaultValue,\n label: '',\n data: []\n },\n dialogKey: 1\n };\n },\n watch: {\n defaultValue() {\n this.selectValue.value = this.defaultValue;\n }\n },\n methods: {\n //打开表格选择组件\n openTable() {\n if (this.disabled) {\n return;\n }\n this.dialogKey++; //每次打开对话框时,key值加1,防止对话框重复渲染\n this.dialogVisible = true; //打开对话框\n this.$refs.table.init({\n uuid: this.uuid,\n title: '选择数据'\n });\n },\n //选中数据按钮回调\n getSelectRowChangeButClick({\n v\n }) {\n let rows = v;\n if (rows.length === 0) {\n this.clearedSelectValue(); //清空下拉框的值\n this.dialogVisible = false; //关闭对话框\n return;\n }\n for (const row of rows) {\n let label = this.config.labelIsAppendCode ? `[${row[this.config.key]}]${row[this.config.label]}` : row[this.config.label];\n this.selectDataList.push({\n label: label,\n value: row[this.config.key]\n });\n }\n\n //选中第一行数据,目前暂时支持单选\n this.selectValue = {\n value: rows[0][this.config.key],\n label: rows[0][this.config.label],\n data: rows[0]\n };\n this.updateValue(); //更新下拉框的值\n this.dialogVisible = false; //关闭对话框\n this.$refs.table.cancelEvent();\n },\n //关闭选择数据按钮回调\n getSelectRowCloseButClick() {\n this.dialogVisible = false;\n },\n //更新父组件的值\n updateValue() {\n this.$emit('olTableSelectChange', this.slotName, this.selectValue);\n },\n clearedSelectValue() {\n this.selectValue = {\n value: '',\n label: '',\n data: []\n };\n this.updateValue(); //更新下拉框的值\n this.$refs.table.cancelEvent();\n },\n initDefaultValue() {\n if (!this.defaultValue?.toString().trim()) {\n return;\n }\n let params = {\n id: this.uuid,\n theme: \"t1\",\n enablePage: false,\n queryParameterListAnd: [{\n key: this.config.key,\n value: this.defaultValue\n }]\n };\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_3__.postAes)(this.http, '/online/crudAes/query', params, false, false).then(({\n data\n }) => {\n this.getSelectRowChangeButClick({\n v: data.listData\n });\n });\n }\n },\n created() {\n this.initDefaultValue();\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/components/ol-table-select.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
491
491
|
|
|
492
492
|
/***/ }),
|
|
493
493
|
|
|
@@ -597,7 +597,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var spli
|
|
|
597
597
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
598
598
|
|
|
599
599
|
"use strict";
|
|
600
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils_object__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/object */ \"./src/utils/object.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/utils/util */ \"./src/utils/util.js\");\n/* harmony import */ var _api_dist__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/api/dist */ \"./src/api/dist.js\");\n/* harmony import */ var pinyin_pro__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! pinyin-pro */ \"pinyin-pro\");\n/* harmony import */ var pinyin_pro__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(pinyin_pro__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var _store_dictType__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/store/dictType */ \"./src/store/dictType.js\");\n/* harmony import */ var _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/components/ol-table-select.vue */ \"./src/components/ol-table-select.vue\");\n/* harmony import */ var _components_Icon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/components/Icon */ \"./src/components/Icon/index.js\");\n/* harmony import */ var _components_FileUpload_index_vue__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/components/FileUpload/index.vue */ \"./src/components/FileUpload/index.vue\");\n/* harmony import */ var _utils_DateUtils__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @/utils/DateUtils */ \"./src/utils/DateUtils.js\");\n/* harmony import */ var _utils_columnProp__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/utils/columnProp */ \"./src/utils/columnProp.js\");\n/* harmony import */ var _utils_formUtils__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/utils/formUtils */ \"./src/utils/formUtils.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_10__.storeDict)();\nconst dictType = (0,_store_dictType__WEBPACK_IMPORTED_MODULE_11__.storeDictType)();\nfunction replaceDollarBraces(str) {\n return str.toString().replace(/\\$\\{?([^{}]+)\\}?/g, function (match, innerContent) {\n return innerContent ? `'${innerContent}'` : match;\n });\n}\nfunction parseJson(column) {\n let attrs = column.attrs;\n if (attrs) {\n try {\n attrs = JSON.parse(attrs);\n for (let key of Object.keys(attrs)) {\n column[key] = attrs[key];\n }\n } catch (e) {\n console.error(\"解析attrs异常\", attrs);\n }\n }\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: \"olForm\",\n components: {\n FileUpload: _components_FileUpload_index_vue__WEBPACK_IMPORTED_MODULE_14__[\"default\"],\n IconSelect: _components_Icon__WEBPACK_IMPORTED_MODULE_13__.IconSelect,\n OlTableSelect: _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_12__[\"default\"]\n },\n inject: ['http'],\n props: {\n isDialog: {\n type: Boolean,\n default: true\n }\n },\n data() {\n return {\n formData: {},\n optionData: {},\n form: {},\n initOk: false,\n dynamicSlotsTable: [],\n dynamicSlotsField: {},\n dynamicSlotsOtherResult: {},\n show: true,\n state: {\n isDialog: true,\n loading: false,\n fullscreen: false,\n dialogVisible: false,\n title: \"\",\n width: '60%',\n comCommit: true,\n maxHeight: '400px',\n type: '0',\n edit: false,\n saveUrl: '',\n requestType: 'post',\n updateKey: '',\n theme: 't1',\n tableConfigId: '',\n dbName: '',\n tableName: '',\n otherProp: {}\n }\n };\n },\n methods: {\n hideColumn(prop) {\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_3__.setArrayObjectKeyValue)(this.form.column, 'display', false, prop);\n },\n showColumn(prop) {\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_3__.setArrayObjectKeyValue)(this.form.column, 'display', true, prop);\n },\n /**\r\n * 文件上传回调\r\n * @param m\r\n * @param v\r\n * @param d\r\n * @param js\r\n * @param key\r\n */\n handleEmits({\n m,\n v,\n d,\n js\n }, key) {\n if (typeof js === 'string') {\n eval(js);\n } else if (m && this[m]) {\n this[m](v);\n }\n if (d != false) {\n this.customUrl = undefined;\n }\n this.formData[key] = v;\n console.log('emits:', this.formData);\n },\n getParams() {\n let params = {\n tableConfigId: this.state.tableConfigId,\n dbName: this.state.dbName,\n tableName: this.state.tableName,\n columnAndValueMap: {}\n };\n if (this.state.type != '0') {\n let formData = this.$refs.formRef.getFormData(false);\n for (let prop of Object.keys(formData)) {\n let value = formData[prop];\n if (value instanceof String) {\n value = value.trim();\n }\n params.columnAndValueMap[prop] = value;\n }\n } else {\n params.columnAndValueMap = this.getTableUpdateValue(this.form.column, this.formData);\n }\n if (this.state.saveUrl && this.state.saveUrl.indexOf(\"/online/crudAes/\") == -1) {\n return params.columnAndValueMap;\n }\n if (this.state.edit) {\n params.whereMap = {};\n if (this.state.updateKey) {\n let split = this.state.updateKey.split(',');\n for (let kv of split) {\n let kvs = kv.split(\"=\");\n if (kvs.length == 2) {\n params.whereMap[kvs[0]] = params.columnAndValueMap[kvs[1]];\n delete params.columnAndValueMap[kvs[0]];\n } else {\n let val = params.columnAndValueMap[kvs];\n params.whereMap[kvs] = val != undefined ? val : this.formData[kvs];\n delete params.columnAndValueMap[kvs];\n }\n }\n } else {\n // 编辑时默认更新条件为id\n params.whereMap['id'] = this.formData['id'];\n if (!params.whereMap['id']) {\n params.whereMap['id'] = this.formData['t1_id'];\n }\n delete params.columnAndValueMap['id'];\n }\n } else if (this.state.updateKey) {\n let split = this.state.updateKey.split(',');\n params['genIdMap'] = {};\n for (let kv of split) {\n let kvs = kv.split(\"=\");\n if (kvs.length == 2) {\n params['genIdMap'][kvs[0]] = kvs[1];\n } else {\n params['genIdMap'][kvs[0]] = 'uuid';\n }\n }\n }\n if (this.state.otherProp) {\n if (this.state.otherProp.createBy && this.state.otherProp.createBy.trim()) {\n params.createBy = this.state.otherProp.createBy.trim();\n }\n if (this.state.otherProp.updateBy && this.state.otherProp.updateBy.trim()) {\n params.updateBy = this.state.otherProp.updateBy.trim();\n }\n }\n return params;\n },\n /**\r\n * 根据列配置获取数据库表更新数据\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n prop,\n tableField\n } of column) {\n if (tableField && tableField == '1') {\n continue;\n }\n let value = formData[prop];\n if (value != undefined) {\n if (value instanceof String) {\n value = value.trim();\n }\n columnAndValueMap[prop] = value;\n }\n }\n return columnAndValueMap;\n },\n async doSave() {\n let dom;\n let keys;\n if (this.state.type != '0') {\n await this.$refs.formRef.getNativeForm().validate((valid, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getWidgetRef(keys[0]);\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n } else {\n this.save();\n }\n });\n } else {\n await this.$refs.formRef.validate((valid, done, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getPropRef(keys[0]);\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n } else {\n this.save();\n }\n done();\n });\n }\n },\n saveOk(status) {\n this.state.loading = false;\n if (status) {\n this.state.dialogVisible = false;\n this.$emit('query');\n }\n if (this.state.otherProp && this.state.otherProp.afterSave) {\n try {\n eval(this.state.otherProp.afterSave);\n } catch (e) {\n console.log(e);\n }\n }\n },\n async save() {\n let params = this.getParams();\n if (this.state.otherProp && this.state.otherProp.beforeSave) {\n try {\n let next = eval(\"(params)=>{\" + this.state.otherProp.beforeSave + \"}\");\n if (next(params) === false) {\n return;\n }\n } catch (e) {\n console.log(e);\n return;\n }\n }\n this.state.loading = true;\n try {\n let url = this.state.saveUrl ? this.state.saveUrl : this.state.edit ? '/online/crudAes/modify' : '/online/crudAes/save';\n if (this.state.requestType.toLowerCase() == \"put\") {\n await (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.put)(this.http, url, params).then(status => {\n this.saveOk(status);\n });\n } else if (!this.state.saveUrl || this.state.saveUrl.indexOf(\"/online/crudAes/\") != -1) {\n await (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, url, params).then(status => {\n this.saveOk(status);\n });\n } else {\n await (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, url, params).then(status => {\n this.saveOk(status);\n });\n }\n } catch (e) {\n console.error(e);\n } finally {\n this.state.loading = false;\n }\n },\n initFormColumn(data) {\n for (let column of this.form.column) {\n if (data.disabled || column.disabled == 1) {\n column.disabled = true;\n }\n if (column.value) {\n column.value = (0,_utils_columnProp__WEBPACK_IMPORTED_MODULE_16__.getDefaultValue)(column);\n }\n if (column.selectDom === '20') {\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n }\n if (column.selectDom === '21') {\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n }\n if (column.selectDom === '22') {\n //表格选取\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom,\n config: JSON.parse(column.attrs).olTableSelect\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n const otherResult = slotObj.config.otherResult; //返回额外参数字段配置\n if (otherResult !== null && otherResult !== undefined && otherResult !== '') {\n let otherResultArray = [];\n otherResult.split(\",\").forEach(m => {\n let k = m.split(\":\");\n // otherResultArray.push({targetField: k[[k.length - 1]], sourceField: k[0]})\n otherResultArray.push({\n targetField: k[0],\n sourceField: k[[k.length - 1]]\n });\n });\n this.dynamicSlotsOtherResult[column.prop] = otherResultArray;\n }\n } else {\n this.initDict(column);\n }\n parseJson(column);\n for (let event of ['change']) {\n if (column[event] && !(column[event] instanceof Function)) {\n try {\n column[event] = eval(\"(params)=>{this.$nextTick(()=>{\" + \"let formData = this.formData;\" + \"let {value} = params;\" + replaceDollarBraces(column[event]) + \"})\" + \"}\");\n } catch (e) {\n console.error(e);\n }\n }\n }\n }\n },\n doInit(data) {\n if (data.disabled) {\n this.show = false;\n }\n if (data.saveUrl) {\n this.state.saveUrl = data.saveUrl.trim();\n if (data.requestType) {\n this.state.requestType = data.requestType;\n }\n }\n this.state.edit = data['code'] == 'edit' == true;\n this.state.title = data.title ? data.title : this.state.edit ? '编辑' : '新增';\n if (data.form.title) {\n this.state.title = data.form.title;\n }\n this.state.dialogVisible = true;\n this.formData = data.formData;\n for (let key of Object.keys(this.state)) {\n if (data[key]) {\n this.state[key] = data[key];\n }\n }\n this.form = data.form;\n if (this.state.type == 0) {\n //赋值弹窗宽度和高度\n if (data.form.diaLogWidth) {\n this.state.width = data.form.diaLogWidth;\n }\n if (data.form.diaLogHeight) {\n this.state.maxHeight = data.form.diaLogHeight + 'px';\n }\n this.initFormColumn(data);\n } else {\n let {\n width,\n height\n } = this.form.formConfig;\n //赋值弹窗宽度和高度\n this.state.width = width;\n this.state.maxHeight = height + 'px';\n for (let widgetListElement of this.form.widgetList) {\n this.setDict(widgetListElement);\n }\n }\n if (this.state.otherProp) {\n try {\n this.state.otherProp = JSON.parse(this.state.otherProp);\n } catch (e) {\n console.log(e);\n }\n }\n },\n setDict(column) {\n if (column && column.dict) {\n column.dictCode = column.dict;\n this.initDict(column);\n }\n if (column.cols instanceof Array) {\n for (let col of column.cols) {\n this.setDict(col);\n }\n }\n },\n init(data) {\n try {\n this.beforeInit();\n this.doInit(data);\n setTimeout(() => {\n this.afterInit();\n }, 350);\n } catch (e) {\n console.error(e);\n }\n },\n /**\r\n * 初始化后回调\r\n */\n afterInit() {\n if (this.state.otherProp && this.state.otherProp.afterInit) {\n try {\n eval(this.state.otherProp.afterInit);\n } catch (e) {\n console.log(e);\n }\n }\n },\n /**\r\n * 初始化前回调\r\n */\n beforeInit() {\n if (this.state.otherProp && this.state.otherProp.beforeInit) {\n try {\n eval(this.state.otherProp.beforeInit);\n } catch (e) {\n console.log(e);\n }\n }\n },\n initDict(column) {\n if (column.dictCode) {\n column.dicData = dict.val(column.dictCode);\n if (column.dict && column.options) {\n column.options.optionItems = column.dicData;\n }\n if (column.selectDom == 1) {\n column.type = \"select\";\n }\n //”number”、”string”、”boolean”、”object”、”function” 和 “undefined”\n let dataType = typeof this.formData[column.prop];\n if ([\"number\", \"boolean\"].indexOf(dataType) != -1) {\n this.formData[column.prop] = String(this.formData[column.prop]);\n column.value = this.formData[column.prop];\n }\n if (this.state.edit) {\n return;\n }\n if (this.formData[column.prop] != undefined) {\n this.formData[column.prop] = String(this.formData[column.prop]);\n column.value = this.formData[column.prop];\n } else if (column.value != undefined) {\n this.formData[column.prop] = String(column.value);\n } else {\n // 数据字典与值类型不一致\n if (this.formData[column.prop] == undefined) {\n setTimeout(() => {\n if (column.dicData) {\n for (let dicDatum of column.dicData) {\n if (dicDatum.isDefault == 1) {\n this.formData[column.prop] = dicDatum.value;\n column.value = this.formData[column.prop];\n }\n }\n }\n }, 100);\n }\n }\n } else if (column.dictTable || column.dictUrl) {\n if (column.selectDom == 1) {\n column.type = \"select\";\n }\n column.filterable = true;\n column.dicData = [];\n setTimeout(() => {\n this.setDictTable(column, undefined);\n }, 10);\n if (column.type == 'tree') {\n column.filterable = column.filterable == undefined ? true : column.clearable;\n column.clearable = column.clearable == undefined ? true : column.clearable;\n } else {\n column.filterMethod = e => {\n this.$nextTick(() => {\n this.setDictTable(column, e);\n });\n };\n }\n }\n },\n setDictUrl(column, like) {\n let dictUrl = column.dictUrl.split(\",\");\n let url;\n let label = 'label';\n let value = 'value';\n let parentId = 'parentId';\n // get,url,label,value,parent_id\n let doGet = true;\n if (dictUrl.length > 1) {\n if (dictUrl[0].toString().toLowerCase() == 'post') {\n doGet = false;\n }\n url = dictUrl[1];\n label = dictUrl[2];\n value = dictUrl[3];\n parentId = dictUrl[4];\n } else {\n url = dictUrl[0];\n }\n if (doGet) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.get)(this.http, url + \"?label=\" + like).then(data => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, value, parentId);\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n } else {\n let params = {};\n if (like) {\n params['label'] = like;\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, column.dictUrl, params, false).then(({\n data\n }) => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, value, parentId);\n } else {\n data.forEach(da => {\n da['label'] = da[label];\n da['value'] = da[value];\n column.dicData.push(da);\n });\n }\n });\n }\n },\n setDictTable(column, like) {\n if (column.dictTable && column.dictTable.toString().trim() != '') {\n this.doSetDictTable(column, like);\n } else if (column.dictUrl) {\n this.setDictUrl(column, like);\n }\n },\n doSetDictTable(column, like) {\n let value = this.formData[column.prop];\n /*String tableName;\r\n String dbName;\r\n String label;\r\n String value;\r\n Map<String, Object> where;*/\n // olp-vue-pro,system_users,nickname,id,parentId\n let params = {};\n let dictTable = column.dictTable;\n try {\n // 使用Function构造函数比eval更安全\n params = new Function('return ' + column.dictTable)();\n } catch (e) {\n // 2. 业务调用侧(清晰的使用逻辑)\n params = (0,_utils_formUtils__WEBPACK_IMPORTED_MODULE_17__[\"default\"])(column.dictTable);\n }\n if (like || value) {\n if (!params.where) {\n params.where = {};\n }\n }\n if (!params[\"parentValue\"]) {\n if (like) {\n params.where['_like_' + params[\"label\"]] = like;\n }\n if (value) {\n params.defaultValue = value;\n }\n }\n (0,_api_dist__WEBPACK_IMPORTED_MODULE_8__.initDictTable)(this.http, params).then(data => {\n column.dicData.length = 0;\n if (params[\"parentValue\"]) {\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, 'dictValue', 'parentValue');\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n },\n /**\r\n * 表格选择器回调函数\r\n * @param data\r\n */\n olTableSelectChange(slotName, data) {\n // console.info('插槽名称', slotName, '表格回传的数据', data)\n // console.info('表格', this.form.column)\n this.formData[slotName] = data.value; //修改表单数据,以便后续提交\n if (typeof this.dynamicSlotsField[slotName].change === 'function') {\n this.dynamicSlotsField[slotName].change(data.value); //字段数据更新回调\n }\n //给其他字段赋值\n this.dynamicSlotsOtherResult[slotName]?.forEach(item => {\n this.formData[item.targetField] = data.data[item.sourceField];\n });\n }\n },\n mounted() {\n this.$nextTick(() => {\n (0,_store_dict__WEBPACK_IMPORTED_MODULE_10__.storeDict)().init(this.http);\n });\n },\n created() {}\n});\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-form/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
600
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _mixins_VTMixin_OForm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/mixins/VTMixin/OForm */ \"./src/mixins/VTMixin/OForm.js\");\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: \"olForm\",\n mixins: [_mixins_VTMixin_OForm__WEBPACK_IMPORTED_MODULE_0__.OForm],\n methods: {\n getParams() {\n let params = {\n tableConfigId: this.state.tableConfigId,\n dbName: this.state.dbName,\n tableName: this.state.tableName,\n columnAndValueMap: {}\n };\n if (this.state.type != '0') {\n let formData = this.$refs.formRef.getFormData(false);\n for (let prop of Object.keys(formData)) {\n let value = formData[prop];\n if (value instanceof String) {\n value = value.trim();\n }\n params.columnAndValueMap[prop] = value;\n }\n } else {\n params.columnAndValueMap = this.getTableUpdateValue(this.form.column, this.formData);\n }\n if (this.state.saveUrl && this.state.saveUrl.indexOf(\"/online/crudAes/\") == -1) {\n return params.columnAndValueMap;\n }\n if (this.state.edit) {\n params.whereMap = {};\n if (this.state.updateKey) {\n let split = this.state.updateKey.split(',');\n for (let kv of split) {\n let kvs = kv.split(\"=\");\n if (kvs.length == 2) {\n params.whereMap[kvs[0]] = params.columnAndValueMap[kvs[1]];\n delete params.columnAndValueMap[kvs[0]];\n } else {\n let val = params.columnAndValueMap[kvs];\n params.whereMap[kvs] = val != undefined ? val : this.formData[kvs];\n delete params.columnAndValueMap[kvs];\n }\n }\n } else {\n // 编辑时默认更新条件为id\n params.whereMap['id'] = this.formData['id'];\n if (!params.whereMap['id']) {\n params.whereMap['id'] = this.formData['t1_id'];\n }\n delete params.columnAndValueMap['id'];\n }\n } else if (this.state.updateKey) {\n let split = this.state.updateKey.split(',');\n params['genIdMap'] = {};\n for (let kv of split) {\n let kvs = kv.split(\"=\");\n if (kvs.length == 2) {\n params['genIdMap'][kvs[0]] = kvs[1];\n } else {\n params['genIdMap'][kvs[0]] = 'uuid';\n }\n }\n }\n this.setOtherProp(params);\n return params;\n }\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-form/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
601
601
|
|
|
602
602
|
/***/ }),
|
|
603
603
|
|
|
@@ -608,7 +608,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core
|
|
|
608
608
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
609
609
|
|
|
610
610
|
"use strict";
|
|
611
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils_object__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/object */ \"./src/utils/object.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _api_dist__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/api/dist */ \"./src/api/dist.js\");\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var _store_dictType__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/store/dictType */ \"./src/store/dictType.js\");\n/* harmony import */ var _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/components/table/model/model-index.vue */ \"./src/components/table/model/model-index.vue\");\n/* harmony import */ var _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/ol-table-select.vue */ \"./src/components/ol-table-select.vue\");\n/* harmony import */ var _components_Icon__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/components/Icon */ \"./src/components/Icon/index.js\");\n/* harmony import */ var _utils_columnProp__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/utils/columnProp */ \"./src/utils/columnProp.js\");\n/* harmony import */ var _utils_formUtils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/utils/formUtils */ \"./src/utils/formUtils.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_8__.storeDict)();\nconst dictType = (0,_store_dictType__WEBPACK_IMPORTED_MODULE_9__.storeDictType)();\nfunction replaceDollarBraces(str) {\n return str.toString().replace(/\\$\\{?([^{}]+)\\}?/g, function (match, innerContent) {\n return innerContent ? `'${innerContent}'` : match;\n });\n}\nfunction parseJson(column) {\n let attrs = column.attrs;\n if (attrs) {\n try {\n attrs = JSON.parse(attrs);\n for (let key of Object.keys(attrs)) {\n column[key] = attrs[key];\n }\n } catch (e) {\n console.error(\"解析attrs异常\", attrs);\n }\n }\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: \"olMainFormSubTable\",\n components: {\n IconSelect: _components_Icon__WEBPACK_IMPORTED_MODULE_12__.IconSelect,\n OlTableSelect: _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n ModelIndex: _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"]\n },\n inject: ['http'],\n data() {\n return {\n url: {\n saveUrl: \"/online/crudAes/saveMainAndSubs\"\n },\n uuid: undefined,\n subForeignKey: '',\n formData: {},\n optionData: {},\n form: {\n column: []\n },\n dynamicSlotsTable: [],\n dynamicSlotsField: {},\n dynamicSlotsOtherResult: {},\n show: true,\n exBtnDisabled: undefined,\n state: {\n loading: false,\n fullscreen: false,\n dialogVisible: false,\n title: \"\",\n width: '60%',\n comCommit: true,\n maxHeight: '400px',\n type: '0',\n edit: false,\n saveUrl: '',\n requestType: 'post',\n updateKey: '',\n deleteId: '',\n theme: 't1',\n tableConfigId: '',\n dbName: '',\n tableName: '',\n otherProp: {}\n }\n };\n },\n computed: {\n https() {\n return this.http;\n }\n },\n methods: {\n hideColumn(prop) {\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_3__.setArrayObjectKeyValue)(this.form.column, 'display', false, prop);\n },\n showColumn(prop) {\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_3__.setArrayObjectKeyValue)(this.form.column, 'display', true, prop);\n },\n getDeleteId(param) {\n for (let key of Object.keys(param)) {\n if (key != '$parentId') {\n return key;\n }\n }\n },\n getSubUpdateList(table) {\n let subColumnAndValueList = [];\n for (const row of table.data) {\n subColumnAndValueList.push(this.getSubUpdate(row, table.columns));\n }\n return subColumnAndValueList;\n },\n /**\r\n * 判断是否数据库字段\r\n * @param column\r\n * @returns {*}\r\n */\n hasColumn(column) {\n return column.tableField && column.field;\n },\n getSubUpdate(row, columns) {\n let subColumnAndValue = {};\n for (const column of columns) {\n if (this.hasColumn(column) && (!column.tableSaveToOtherProp || column.tableSaveToOtherProp != '1')) {\n subColumnAndValue[column.tableField ? column.tableField : column.field] = row[column.field];\n }\n }\n return subColumnAndValue;\n },\n getParams() {\n // 子表信息\n let subTable = this.$refs.subTable.table.t1;\n let deleteId = this.getDeleteId(subTable.deleteParameter);\n let params = {\n tableConfigId: this.state.tableConfigId,\n dbName: this.state.dbName,\n tableName: this.state.tableName,\n // 主表的唯一字段\n mainTableKey: [this.state.deleteId],\n //主表的唯一字段\n // 子表要自动生成的唯一字段 如果没有 可以忽略\n mainGenIdMap: {\n [this.state.deleteId]: 'uuid'\n },\n mianColumnAndValueMap: {},\n // 子表名称\n subTableName: subTable.tableConfig.mainTable,\n // 子表要自动生成的唯一字段 如果没有 可以忽略\n subGenIdMap: {\n [deleteId]: 'uuid'\n },\n // 子表子主表的数据\n subColumnAndValueList: this.getSubUpdateList(subTable.table),\n // 子表的唯一字段\n subTableKey: [deleteId],\n // 表的关联key,这里框架自动复制 {主表字段,子表的字段}\n subForeignKey: {\n [this.state.deleteId]: this.subForeignKey\n }\n };\n if (this.state.type != '0') {\n let formData = this.$refs.value.getFormData(false);\n for (let prop of Object.keys(formData)) {\n let value = formData[prop];\n if (value instanceof String) {\n value = value.trim();\n }\n params.mianColumnAndValueMap[prop] = value;\n }\n } else {\n params.mianColumnAndValueMap = this.getTableUpdateValue(this.form.column, this.formData);\n }\n if (this.state.saveUrl) {\n return params.mianColumnAndValueMap;\n }\n if (this.state.edit) {\n params.whereMap = {};\n if (this.state.updateKey) {\n let split = this.state.updateKey.split(',');\n for (let kv of split) {\n let kvs = kv.split(\"=\");\n if (kvs.length == 2) {\n params.mianColumnAndValueMap[kvs[0]] = params.mianColumnAndValueMap[kvs[1]];\n } else {\n let val = params.mianColumnAndValueMap[kvs];\n params.mianColumnAndValueMap[kvs] = val != undefined ? val : this.formData[kvs];\n }\n }\n } else {\n // 编辑时默认更新条件为id\n params.mianColumnAndValueMap['id'] = this.formData['id'];\n if (!params.mianColumnAndValueMap['id']) {\n params.mianColumnAndValueMap['id'] = this.formData['t1_id'];\n }\n }\n }\n if (this.state.otherProp) {\n if (this.state.otherProp.createBy && this.state.otherProp.createBy.trim()) {\n params.createBy = this.state.otherProp.createBy.trim();\n }\n if (this.state.otherProp.updateBy && this.state.otherProp.updateBy.trim()) {\n params.updateBy = this.state.otherProp.updateBy.trim();\n }\n }\n return params;\n },\n /**\r\n * 根据列配置获取数据库表更新数据\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n prop,\n tableField\n } of column) {\n if (tableField && tableField == '1') {\n continue;\n }\n let value = formData[prop];\n if (value != undefined) {\n if (value instanceof String) {\n value = value.trim();\n }\n columnAndValueMap[prop] = value;\n }\n }\n return columnAndValueMap;\n },\n async doValidate() {\n let dom = undefined;\n let keys = [];\n let status = true;\n if (this.state.type != '0') {\n await this.$refs.formRef.getNativeForm().validate((valid, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getWidgetRef(keys[0]);\n status = false;\n }\n });\n } else {\n await this.$refs.formRef.validate((valid, done, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getPropRef(keys[0]);\n status = false;\n }\n done();\n });\n }\n if (dom) {\n // 定位代码\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n status = false;\n }\n return status;\n },\n async doSave() {\n let dom;\n let keys;\n if (this.state.type != '0') {\n await this.$refs.formRef.getNativeForm().validate((valid, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getWidgetRef(keys[0]);\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n } else {\n this.save();\n }\n });\n } else {\n await this.$refs.formRef.validate((valid, done, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getPropRef(keys[0]);\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n } else {\n this.save();\n }\n done();\n });\n }\n },\n saveOk(status) {\n this.state.loading = false;\n if (status) {\n this.state.dialogVisible = false;\n this.$emit('query');\n }\n if (this.state.otherProp && this.state.otherProp.afterSave) {\n try {\n eval(this.state.otherProp.afterSave);\n } catch (e) {\n console.log(e);\n }\n }\n },\n save() {\n if (this.state.otherProp && this.state.otherProp.beforeSave) {\n try {\n let next = eval(\"()=>{\" + this.state.otherProp.beforeSave + \"}\");\n if (next() === false) {\n return;\n }\n } catch (e) {\n console.log(e);\n return;\n }\n }\n this.state.loading = true;\n try {\n let params = this.getParams();\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, this.url.saveUrl, params).then(status => {\n this.saveOk(status);\n });\n } catch (e) {\n console.error(e);\n } finally {\n this.state.loading = false;\n }\n },\n setUUID(data) {\n this.uuid = data.uuid;\n this.subForeignKey = data.foreignKey;\n },\n /**\r\n * 初始化后回调\r\n */\n afterInit() {\n if (this.state.otherProp && this.state.otherProp.afterInit) {\n try {\n eval(this.state.otherProp.afterInit);\n } catch (e) {\n console.log(e);\n }\n }\n },\n /**\r\n * 初始化前回调\r\n */\n beforeInit() {\n if (this.state.otherProp && this.state.otherProp.beforeInit) {\n try {\n eval(this.state.otherProp.beforeInit);\n } catch (e) {\n console.log(e);\n }\n }\n },\n init(data) {\n this.beforeInit();\n this.show = data.disabled == false;\n this.exBtnDisabled = data.exBtnDisabled;\n // 初始化动态插槽表格\n data.form.column.forEach(column => {\n if (data.disabled) {\n column.disabled = true;\n }\n if (column.value) {\n column.value = (0,_utils_columnProp__WEBPACK_IMPORTED_MODULE_13__.getDefaultValue)(column);\n }\n if (column.selectDom === '21') {\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n }\n if (column.selectDom === '22') {\n //表格选取\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom,\n config: JSON.parse(column.attrs).olTableSelect\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n const otherResult = slotObj.config.otherResult; //返回额外参数字段配置\n if (otherResult !== null && otherResult !== undefined && otherResult !== '') {\n let otherResultArray = [];\n otherResult.split(\",\").forEach(m => {\n let k = m.split(\":\");\n // otherResultArray.push({targetField: k[[k.length - 1]], sourceField: k[0]})\n otherResultArray.push({\n targetField: k[0],\n sourceField: k[[k.length - 1]]\n });\n });\n this.dynamicSlotsOtherResult[column.prop] = otherResultArray;\n }\n }\n });\n if (data.saveUrl) {\n this.state.saveUrl = data.saveUrl.trim();\n if (data.requestType) {\n this.state.requestType = data.requestType;\n }\n }\n this.setUUID(data);\n this.state.edit = data['code'] == 'edit' == true;\n this.state.title = data.title ? data.title : this.state.edit ? '编辑' : '新增';\n //赋值弹窗宽度和高度\n if (data.form.diaLogWidth) {\n this.state.width = data.form.diaLogWidth;\n }\n if (data.form.diaLogHeight) {\n this.state.maxHeight = data.form.diaLogHeight + 'px';\n }\n if (data.form.title) {\n this.state.title = data.form.title;\n }\n this.state.dialogVisible = true;\n this.form = data.form;\n this.formData = data.formData;\n for (let key of Object.keys(this.state)) {\n if (data[key]) {\n this.state[key] = data[key];\n }\n }\n if (this.state.otherProp) {\n try {\n this.state.otherProp = JSON.parse(this.state.otherProp);\n } catch (e) {\n console.log(e);\n }\n }\n this.afterInit();\n },\n ok(e) {\n if (!this.show) {\n this.$refs.subTable.getTableRefs().setAllBtnDisabled(this.exBtnDisabled);\n }\n for (let column of this.form.column) {\n if (column.disabled == 1) {\n column.disabled = true;\n }\n this.initDict(column);\n parseJson(column);\n for (let event of ['change']) {\n if (column[event] && !(column[event] instanceof Function)) {\n try {\n column[event] = eval(\"(params)=>{this.$nextTick(()=>{\" + \"let formData = this.formData;console.log(formData);\" + \"let {value} = params;\" + replaceDollarBraces(column[event]) + \"})\" + \"}\");\n } catch (e) {\n console.error(e);\n }\n }\n }\n }\n this.setParameter(e);\n if (this.state.edit) {\n e.query();\n }\n },\n setParameter(e) {\n let param = {\n [this.subForeignKey]: this.formData[this.state.deleteId]\n };\n e.parameter = {\n ...e.parameter,\n ...param\n };\n },\n initDict(column) {\n if (column.dictCode) {\n column.dicData = dict.val(column.dictCode);\n if (column.selectDom == 1) {\n column.type = \"select\";\n }\n if (this.state.edit) {\n return;\n }\n if (this.formData[column.prop] != undefined) {\n this.formData[column.prop] = String(this.formData[column.prop]);\n } else if (column.value != undefined) {\n this.formData[column.prop] = String(column.value);\n } else {\n //”number”、”string”、”boolean”、”object”、”function” 和 “undefined”\n let dataType = typeof this.formData[column.prop];\n // 数据字典与值类型不一致\n if (this.formData[column.prop] != undefined && this.formData[column.prop] != '' && [\"number\", \"boolean\"].indexOf(dataType) != -1) {\n this.formData[column.prop] = String(this.formData[column.prop]);\n column.value = this.formData[column.prop];\n } else if (this.formData[column.prop] == undefined) {\n setTimeout(() => {\n if (column.dicData) {\n for (let dicDatum of column.dicData) {\n if (dicDatum.isDefault == 1) {\n this.formData[column.prop] = dicDatum.value;\n column.value = this.formData[column.prop];\n }\n }\n }\n }, 100);\n }\n }\n } else if (column.dictTable || column.dictUrl) {\n if (column.selectDom == 1) {\n column.type = \"select\";\n }\n column.filterable = true;\n column.dicData = [];\n setTimeout(() => {\n this.setDictTable(column, undefined);\n }, 10);\n if (column.type == 'tree') {\n column.filterable = column.filterable == undefined ? true : column.clearable;\n column.clearable = column.clearable == undefined ? true : column.clearable;\n } else {\n column.filterMethod = e => {\n this.$nextTick(() => {\n this.setDictTable(column, e);\n });\n };\n }\n }\n },\n setDictUrl(column, like) {\n let dictUrl = column.dictUrl.split(\",\");\n let url;\n let label = 'label';\n let value = 'value';\n let parentId = 'parentId';\n // get,url,label,value,parent_id\n let doGet = true;\n if (dictUrl.length > 1) {\n if (dictUrl[0].toString().toLowerCase() == 'post') {\n doGet = false;\n }\n url = dictUrl[1];\n label = dictUrl[2];\n value = dictUrl[3];\n parentId = dictUrl[4];\n } else {\n url = dictUrl[0];\n }\n if (doGet) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.get)(this.http, url + \"?label=\" + like).then(data => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, value, parentId);\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n } else {\n let params = {};\n if (like) {\n params['label'] = like;\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, column.dictUrl, params, false).then(({\n data\n }) => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, value, parentId);\n } else {\n data.forEach(da => {\n da['label'] = da[label];\n da['value'] = da[value];\n column.dicData.push(da);\n });\n }\n });\n }\n },\n setDictTable(column, like) {\n if (column.dictTable && column.dictTable.toString().trim() != '') {\n this.doSetDictTable(column, like);\n } else if (column.dictUrl) {\n this.setDictUrl(column, like);\n }\n },\n doSetDictTable(column, like) {\n let value = this.formData[column.prop];\n /*String tableName;\r\n String dbName;\r\n String label;\r\n String value;\r\n Map<String, Object> where;*/\n // olp-vue-pro,system_users,nickname,id,parentId\n let params = {};\n let dictTable = column.dictTable;\n try {\n // 使用Function构造函数比eval更安全\n params = new Function('return ' + column.dictTable)();\n } catch (e) {\n // 2. 业务调用侧(清晰的使用逻辑)\n params = (0,_utils_formUtils__WEBPACK_IMPORTED_MODULE_14__[\"default\"])(column.dictTable);\n }\n if (like || value) {\n if (!params.where) {\n params.where = {};\n }\n }\n if (!params[\"parentValue\"]) {\n if (like) {\n params.where['_like_' + params[\"label\"]] = like;\n }\n if (value) {\n params.defaultValue = value;\n }\n }\n (0,_api_dist__WEBPACK_IMPORTED_MODULE_7__.initDictTable)(this.http, params).then(data => {\n column.dicData.length = 0;\n if (params[\"parentValue\"]) {\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, 'dictValue', 'parentValue');\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n },\n /**\r\n * 表格选择器回调函数\r\n * @param data\r\n */\n olTableSelectChange(slotName, data) {\n // console.info('插槽名称', slotName, '表格回传的数据', data)\n // console.info('表格', this.form.column)\n this.formData[slotName] = data.value; //修改表单数据,以便后续提交\n if (typeof this.dynamicSlotsField[slotName].change === 'function') {\n this.dynamicSlotsField[slotName].change(data.value); //字段数据更新回调\n }\n //给其他字段赋值\n this.dynamicSlotsOtherResult[slotName]?.forEach(item => {\n this.formData[item.targetField] = data.data[item.sourceField];\n });\n }\n },\n mounted() {\n this.$nextTick(() => {\n (0,_store_dict__WEBPACK_IMPORTED_MODULE_8__.storeDict)().init(this.http);\n });\n },\n created() {\n // console.info(\"我是主子表\")\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-main-form-sub-table/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
611
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _mixins_VTMixin_OForm__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/mixins/VTMixin/OForm */ \"./src/mixins/VTMixin/OForm.js\");\n/* harmony import */ var _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/table/model/model-index.vue */ \"./src/components/table/model/model-index.vue\");\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: \"olMainFormSubTable\",\n mixins: [_mixins_VTMixin_OForm__WEBPACK_IMPORTED_MODULE_4__.OForm],\n components: {\n ModelIndex: _components_table_model_model_index_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n },\n data() {\n return {\n url: {\n saveUrl: \"/online/crudAes/saveMainAndSubs\"\n },\n uuid: undefined,\n subForeignKey: '',\n exBtnDisabled: undefined\n };\n },\n computed: {\n https() {\n return this.http;\n }\n },\n methods: {\n getDeleteId(param) {\n for (let key of Object.keys(param)) {\n if (key != '$parentId') {\n return key;\n }\n }\n },\n getSubUpdateList(table) {\n let subColumnAndValueList = [];\n for (const row of table.data) {\n subColumnAndValueList.push(this.getSubUpdate(row, table.columns));\n }\n return subColumnAndValueList;\n },\n /**\r\n * 判断是否数据库字段\r\n * @param column\r\n * @returns {*}\r\n */\n hasColumn(column) {\n return column.tableField && column.field;\n },\n getSubUpdate(row, columns) {\n let subColumnAndValue = {};\n for (const column of columns) {\n if (this.hasColumn(column) && (!column.tableSaveToOtherProp || column.tableSaveToOtherProp != '1')) {\n subColumnAndValue[column.tableField ? column.tableField : column.field] = row[column.field];\n }\n }\n return subColumnAndValue;\n },\n getParams() {\n if (!this.$refs?.subTable) {\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_3__.useMessage)().error(\"主子表没有子表信息!\");\n }\n // 子表信息\n let subTable = this.$refs.subTable.getTableRefs().getTabRefs();\n let deleteId = this.getDeleteId(subTable.deleteParameter);\n let params = {\n tableConfigId: this.state.tableConfigId,\n dbName: this.state.dbName,\n tableName: this.state.tableName,\n // 主表的唯一字段\n mainTableKey: [this.state.deleteId],\n //主表的唯一字段\n // 子表要自动生成的唯一字段 如果没有 可以忽略\n mainGenIdMap: {\n [this.state.deleteId]: 'uuid'\n },\n mianColumnAndValueMap: {},\n // 子表名称\n subTableName: subTable.tableConfig.mainTable,\n // 子表要自动生成的唯一字段 如果没有 可以忽略\n subGenIdMap: {\n [deleteId]: 'uuid'\n },\n // 子表子主表的数据\n subColumnAndValueList: this.getSubUpdateList(subTable.table),\n // 子表的唯一字段\n subTableKey: [deleteId],\n // 表的关联key,这里框架自动复制 {主表字段,子表的字段}\n subForeignKey: {\n [this.state.deleteId]: this.state.foreignKey\n }\n };\n if (this.state.type != '0') {\n let formData = this.$refs.value.getFormData(false);\n for (let prop of Object.keys(formData)) {\n let value = formData[prop];\n if (value instanceof String) {\n value = value.trim();\n }\n params.mianColumnAndValueMap[prop] = value;\n }\n } else {\n params.mianColumnAndValueMap = this.getTableUpdateValue(this.form.column, this.formData);\n }\n if (this.state.edit) {\n params.whereMap = {};\n if (this.state.updateKey) {\n let split = this.state.updateKey.split(',');\n for (let kv of split) {\n let kvs = kv.split(\"=\");\n if (kvs.length == 2) {\n params.mianColumnAndValueMap[kvs[0]] = params.mianColumnAndValueMap[kvs[1]];\n } else {\n let val = params.mianColumnAndValueMap[kvs];\n params.mianColumnAndValueMap[kvs] = val != undefined ? val : this.formData[kvs];\n }\n }\n } else {\n // 编辑时默认更新条件为id\n params.mianColumnAndValueMap['id'] = this.formData['id'];\n if (!params.mianColumnAndValueMap['id']) {\n params.mianColumnAndValueMap['id'] = this.formData['t1_id'];\n }\n }\n }\n if (this.state.otherProp) {\n if (this.state.otherProp.createBy && this.state.otherProp.createBy.trim()) {\n params.createBy = this.state.otherProp.createBy.trim();\n }\n if (this.state.otherProp.updateBy && this.state.otherProp.updateBy.trim()) {\n params.updateBy = this.state.otherProp.updateBy.trim();\n }\n }\n return params;\n },\n ok(e) {\n if (!this.show) {\n this.$refs.subTable.getTableRefs().setAllBtnDisabled(this.state.exBtnDisabled);\n }\n this.setParameter(e);\n if (this.state.edit) {\n e.query();\n }\n },\n setParameter(e) {\n let param = {\n [this.state.foreignKey]: this.formData[this.state.deleteId]\n };\n e.parameter = {\n ...e.parameter,\n ...param\n };\n },\n /**\r\n * 表格选择器回调函数\r\n * @param data\r\n */\n olTableSelectChange(slotName, data) {\n // console.info('插槽名称', slotName, '表格回传的数据', data)\n // console.info('表格', this.form.column)\n this.formData[slotName] = data.value; //修改表单数据,以便后续提交\n if (typeof this.dynamicSlotsField[slotName].change === 'function') {\n this.dynamicSlotsField[slotName].change(data.value); //字段数据更新回调\n }\n //给其他字段赋值\n this.dynamicSlotsOtherResult[slotName]?.forEach(item => {\n this.formData[item.targetField] = data.data[item.sourceField];\n });\n }\n },\n mounted() {},\n created() {\n setTimeout(() => {\n if (!this.state.saveUrl || this.state.saveUrl.trim().length == 0) {\n this.state.saveUrl = \"/online/crudAes/saveMainAndSubs\";\n }\n }, 500);\n\n // console.info(\"我是主子表\")\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-main-form-sub-table/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
612
612
|
|
|
613
613
|
/***/ }),
|
|
614
614
|
|
|
@@ -729,7 +729,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _mix
|
|
|
729
729
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
730
730
|
|
|
731
731
|
"use strict";
|
|
732
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _components_table_ol_table_operate_index_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/table/ol-table-operate/index.vue */ \"./src/components/table/ol-table-operate/index.vue\");\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_object__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/object */ \"./src/utils/object.js\");\n/* harmony import */ var _components_table_ol_form_index_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/table/ol-form/index.vue */ \"./src/components/table/ol-form/index.vue\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_9__);\n\n\n\n\n\n\n\n\n\n\nconst {\n error\n} = (0,_utils_message__WEBPACK_IMPORTED_MODULE_5__.useMessage)(); // 消息弹窗\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: \"oTree\",\n components: {\n olForm: _components_table_ol_form_index_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n olTableOperate: _components_table_ol_table_operate_index_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n },\n props: {\n treeConfig: {},\n deleteParameter: {},\n toolButOptions: {},\n formMainList: {}\n },\n inject: ['tableAll', 'http'],\n computed: {\n props() {\n return {\n key: this.treeConfig.value,\n label: this.treeConfig.label,\n children: this.treeConfig.children\n };\n }\n },\n data() {\n return {\n data: [],\n search: '关键字搜索',\n filterText: \"\",\n loading: false,\n value: '',\n clickBtn: false\n };\n },\n methods: {\n nodeClick(params) {\n if (this.clickBtn) {\n return;\n }\n if (this.treeConfig.optionJson.eventsValue && this.treeConfig.optionJson.eventsValue['node-click']) {\n eval(this.treeConfig.optionJson.eventsValue['node-click']);\n } else if (this.treeConfig.tableQueryParams) {\n this.doRightTable(params);\n }\n },\n doGetParams(param, v, getParams) {\n let kv = param.split(\":\");\n if (kv.length == 1) {\n this.doSet(getParams, kv[0], v[kv[0]]);\n } else {\n if (param.indexOf(\"$\") != -1) {\n this.doSet(getParams, kv[0], (0,_utils_object__WEBPACK_IMPORTED_MODULE_6__.fillTemplate)(kv[1], v));\n } else {\n this.doSet(getParams, kv[0], v[kv[1]]);\n }\n }\n if (this.treeConfig.selectChildren === \"1\") {\n this.doChildren(param, v, getParams);\n }\n },\n doSet(obj, k, v) {\n if (obj[k]) {\n if (obj[k] instanceof Array) {\n obj[k].push(v);\n } else {\n obj[k] = [obj[k], v];\n }\n } else {\n obj[k] = v;\n }\n },\n doChildren(param, v, getParams) {\n if (v && v.children) {\n for (let child of v.children) {\n this.doGetParams(param, child, getParams);\n }\n }\n },\n doRightTable(v) {\n let getParams = {};\n let paramsStr = this.treeConfig.tableQueryParams.trim();\n if (paramsStr.indexOf(\",\") != -1) {\n let params = paramsStr.split(\",\");\n for (let param of params) {\n this.doGetParams(param, v, getParams);\n }\n } else {\n this.doGetParams(paramsStr, v, getParams);\n }\n this.tableAll.t1['dbName'] = v.dict_value;\n this.tableAll.t1.queryParams(getParams, true);\n },\n async handleOperationClick(e) {\n this.clickBtn = true;\n setTimeout(() => {\n this.clickBtn = false;\n }, 100);\n let {\n obj,\n row\n } = e;\n if (obj.customFunction && obj.customFunction.toString().trim().length != 0) {\n eval(obj.customFunction);\n } else if (obj.code == \"refresh\") {\n this.doQuery();\n } else if (obj.code == \"delete\") {\n await this.remove(e);\n } else if (obj.code == 'edit' || obj.code == 'add') {\n let form = {};\n if (obj.code == 'edit') {\n form = this.formMainList.edit;\n } else if (obj.code == 'add') {\n form = this.formMainList.add;\n }\n let formJsonStr = form.formJson[form.formMain.designer == 0 ? 'optionJson' : 'customJson'];\n let data = {\n type: form.formMain.designer,\n saveUrl: form.formMain.saveUrl,\n requestType: form.formMain.requestType,\n updateKey: form.formMain.updateKey,\n otherProp: form.formMain.otherProp,\n formData: row,\n theme: this.theme,\n form: JSON.parse(formJsonStr),\n tableConfigId: this.treeConfig.id,\n dbName: this.treeConfig.dbName,\n tableName: this.treeConfig.mainTable,\n code: obj.code,\n disabled: false\n };\n data.form = JSON.parse(form.formJson[data.type == 0 ? 'optionJson' : 'customJson']);\n if (obj.code == 'edit') {\n data.updateKey = form.formMain.updateKey;\n this.$refs[\"form\"].init(data, true);\n }\n if (obj.code == 'add') {\n data.formData = {};\n this.$refs[\"form\"].init(data);\n }\n }\n this.$emit(\"handleOperationClick\", e);\n },\n /**\r\n * 内置确认框\r\n * @param content\r\n * @param title\r\n * @param status\r\n * @returns {Promise<\"model\"|\"mask\"|\"close\"|\"confirm\"|\"cancel\"|\"exit\"|\"exist\">}\r\n */\n async confirm(content, title, status) {\n return await vxe_table__WEBPACK_IMPORTED_MODULE_9___default().modal.confirm({\n content: content,\n title: title,\n status: status\n });\n },\n /**\r\n * 内置删除方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n async remove(o) {\n let {\n row\n } = o;\n this.confirm('数据删除后不可恢复,您确定要删除吗?', '删除提示', 'error').then(type => {\n if (type != \"cancel\") {\n let params = {};\n for (let key of Object.keys(this.deleteParameter)) {\n if (key != '$parentId') {\n params[key] = row[key];\n }\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__.postAes)(this.http, '/online/crudAes/delete', {\n where: params,\n dbName: this.treeConfig.dbName,\n tableName: this.treeConfig.mainTable\n }).then(r => {\n if (r != false) {\n this.doQuery();\n }\n });\n }\n });\n },\n load(node, resolve) {\n if (node.level === 0) {\n return;\n } else {\n this.value = node.data[this.treeConfig.value];\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__.postAes)(this.http, '/online/crudAes/query', this.getParams(), false, false).then(({\n data,\n code,\n msg\n }) => {\n if (code != 200) {\n error(msg);\n return;\n }\n resolve(data.listData);\n });\n },\n getParams(params) {\n if (!params) {\n params = {\n id: this.treeConfig.uuid,\n queryType: 1,\n enablePage: false\n };\n }\n if (this.value) {\n let lazyValue = this.value.trim();\n if (lazyValue.indexOf(\"=\") != -1) {\n params.executeWhere = lazyValue;\n } else {\n params.executeWhere = this.treeConfig.treeParentId.trim() + \"='\" + lazyValue + \"'\";\n }\n }\n return params;\n },\n doQuery(params) {\n this.loading = true;\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__.postAes)(this.http, '/online/crudAes/query', this.getParams(params), false, false).then(({\n data,\n code,\n msg\n }) => {\n if (code != 200) {\n error(msg);\n return;\n }\n if (this.treeConfig.convertTree == 1) {\n this.data = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_4__.handleTree)(data.listData, this.treeConfig.treeId, this.treeConfig.treeParentId);\n } else {\n this.data = data.listData;\n }\n }).finally(() => {\n this.loading = false;\n });\n },\n filterNode(value, data) {\n if (!this.treeShow) {\n this.treeShow = value;\n }\n if (!value) return true;\n return data[this.treeConfig.label].indexOf(value) !== -1;\n }\n },\n watch: {\n filterText(val) {\n this.$refs.treeBox.filter(val);\n }\n },\n created() {\n this.$nextTick(() => {\n if (this.treeConfig.autoInit == 1) {\n if (this.treeConfig.lazy == 1 && this.treeConfig.firstLazyValue != '' && this.treeConfig.firstLazyValue != undefined) {\n this.value = this.treeConfig.firstLazyValue.toString().trim();\n }\n this.doQuery();\n }\n this.$emit(\"initOk\");\n });\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/components/tree/components/o-tree.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
732
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _components_table_ol_table_operate_index_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/table/ol-table-operate/index.vue */ \"./src/components/table/ol-table-operate/index.vue\");\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_object__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/object */ \"./src/utils/object.js\");\n/* harmony import */ var _components_table_ol_form_index_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/table/ol-form/index.vue */ \"./src/components/table/ol-form/index.vue\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_9__);\n\n\n\n\n\n\n\n\n\n\nconst {\n error\n} = (0,_utils_message__WEBPACK_IMPORTED_MODULE_5__.useMessage)(); // 消息弹窗\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: \"oTree\",\n components: {\n olForm: _components_table_ol_form_index_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n olTableOperate: _components_table_ol_table_operate_index_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n },\n props: {\n treeConfig: {},\n deleteParameter: {},\n toolButOptions: {},\n formMainList: {}\n },\n inject: ['tableAll', 'http'],\n computed: {\n props() {\n return {\n key: this.treeConfig.value,\n label: this.treeConfig.label,\n children: this.treeConfig.children\n };\n }\n },\n data() {\n return {\n data: [],\n search: '关键字搜索',\n filterText: \"\",\n loading: false,\n value: '',\n clickBtn: false\n };\n },\n methods: {\n nodeClick(params) {\n if (this.clickBtn) {\n return;\n }\n if (this.treeConfig.optionJson.eventsValue && this.treeConfig.optionJson.eventsValue['node-click']) {\n eval(this.treeConfig.optionJson.eventsValue['node-click']);\n } else if (this.treeConfig.tableQueryParams) {\n this.doRightTable(params);\n }\n },\n doGetParams(param, v, getParams) {\n let kv = param.split(\":\");\n if (kv.length == 1) {\n this.doSet(getParams, kv[0], v[kv[0]]);\n } else {\n if (param.indexOf(\"$\") != -1) {\n this.doSet(getParams, kv[0], (0,_utils_object__WEBPACK_IMPORTED_MODULE_6__.fillTemplate)(kv[1], v));\n } else {\n this.doSet(getParams, kv[0], v[kv[1]]);\n }\n }\n if (this.treeConfig.selectChildren === \"1\") {\n this.doChildren(param, v, getParams);\n }\n },\n doSet(obj, k, v) {\n if (obj[k]) {\n if (obj[k] instanceof Array) {\n obj[k].push(v);\n } else {\n obj[k] = [obj[k], v];\n }\n } else {\n obj[k] = v;\n }\n },\n doChildren(param, v, getParams) {\n if (v && v.children) {\n for (let child of v.children) {\n this.doGetParams(param, child, getParams);\n }\n }\n },\n doRightTable(v) {\n let getParams = {};\n let paramsStr = this.treeConfig.tableQueryParams.trim();\n if (paramsStr.indexOf(\",\") != -1) {\n let params = paramsStr.split(\",\");\n for (let param of params) {\n this.doGetParams(param, v, getParams);\n }\n } else {\n this.doGetParams(paramsStr, v, getParams);\n }\n this.tableAll.t1['dbName'] = v.dict_value;\n this.tableAll.t1.queryParams(getParams, true);\n },\n async handleOperationClick(e) {\n this.clickBtn = true;\n setTimeout(() => {\n this.clickBtn = false;\n }, 100);\n let {\n obj,\n row\n } = e;\n if (obj.customFunction && obj.customFunction.toString().trim().length != 0) {\n eval(obj.customFunction);\n } else if (obj.code == \"refresh\") {\n this.doQuery();\n } else if (obj.code == \"delete\") {\n await this.remove(e);\n } else if (obj.code == 'edit' || obj.code == 'add') {\n let form = {};\n if (obj.code == 'edit') {\n form = this.formMainList.edit;\n } else if (obj.code == 'add') {\n form = this.formMainList.add;\n }\n let formJsonStr = form.formJson[form.formMain.designer == 0 ? 'optionJson' : 'customJson'];\n let data = {\n type: form.formMain.designer,\n saveUrl: form.formMain.saveUrl,\n requestType: form.formMain.requestType,\n updateKey: form.formMain.updateKey,\n otherProp: form.formMain.otherProp,\n formData: row,\n theme: this.theme,\n form: JSON.parse(formJsonStr),\n tableConfigId: this.treeConfig.id,\n dbName: this.treeConfig.dbName,\n tableName: this.treeConfig.mainTable,\n code: obj.code,\n disabled: false\n };\n data.form = JSON.parse(form.formJson[data.type == 0 ? 'optionJson' : 'customJson']);\n if (obj.code == 'edit') {\n data.updateKey = form.formMain.updateKey;\n this.$refs[\"form\"].init(data, true);\n }\n if (obj.code == 'add') {\n data.formData = {};\n this.$refs[\"form\"].init(data);\n }\n }\n this.$emit(\"handleOperationClick\", e);\n },\n /**\r\n * 内置确认框\r\n * @param content\r\n * @param title\r\n * @param status\r\n * @returns {Promise<\"model\"|\"mask\"|\"close\"|\"confirm\"|\"cancel\"|\"exit\"|\"exist\">}\r\n */\n async confirm(content, title, status) {\n return await vxe_table__WEBPACK_IMPORTED_MODULE_9___default().modal.confirm({\n content: content,\n title: title,\n status: status\n });\n },\n /**\r\n * 内置删除方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n async remove(o) {\n let {\n row\n } = o;\n this.confirm('数据删除后不可恢复,您确定要删除吗?', '删除提示', 'error').then(type => {\n if (type != \"cancel\") {\n if (row && row.children) {\n return error('存在包含子数据的记录,禁止删除!');\n }\n let params = {};\n for (let key of Object.keys(this.deleteParameter)) {\n if (key != '$parentId') {\n params[key] = row[key];\n }\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__.postAes)(this.http, '/online/crudAes/delete', {\n where: params,\n dbName: this.treeConfig.dbName,\n tableName: this.treeConfig.mainTable\n }).then(r => {\n if (r != false) {\n this.doQuery();\n }\n });\n }\n });\n },\n load(node, resolve) {\n if (node.level === 0) {\n return;\n } else {\n this.value = node.data[this.treeConfig.value];\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__.postAes)(this.http, '/online/crudAes/query', this.getParams(), false, false).then(({\n data,\n code,\n msg\n }) => {\n if (code != 200) {\n error(msg);\n return;\n }\n resolve(data.listData);\n });\n },\n getParams(params) {\n if (!params) {\n params = {\n id: this.treeConfig.uuid,\n queryType: 1,\n enablePage: false\n };\n }\n if (this.value) {\n let lazyValue = this.value.trim();\n if (lazyValue.indexOf(\"=\") != -1) {\n params.executeWhere = lazyValue;\n } else {\n params.executeWhere = this.treeConfig.treeParentId.trim() + \"='\" + lazyValue + \"'\";\n }\n }\n return params;\n },\n doQuery(params) {\n this.loading = true;\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_8__.postAes)(this.http, '/online/crudAes/query', this.getParams(params), false, false).then(({\n data,\n code,\n msg\n }) => {\n if (code != 200) {\n error(msg);\n return;\n }\n if (this.treeConfig.convertTree == 1) {\n this.data = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_4__.handleTree)(data.listData, this.treeConfig.treeId, this.treeConfig.treeParentId);\n } else {\n this.data = data.listData;\n }\n }).finally(() => {\n this.loading = false;\n });\n },\n filterNode(value, data) {\n if (!this.treeShow) {\n this.treeShow = value;\n }\n if (!value) return true;\n return data[this.treeConfig.label].indexOf(value) !== -1;\n }\n },\n watch: {\n filterText(val) {\n this.$refs.treeBox.filter(val);\n }\n },\n created() {\n this.$nextTick(() => {\n if (this.treeConfig.autoInit == 1) {\n if (this.treeConfig.lazy == 1 && this.treeConfig.firstLazyValue != '' && this.treeConfig.firstLazyValue != undefined) {\n this.value = this.treeConfig.firstLazyValue.toString().trim();\n }\n this.doQuery();\n }\n this.$emit(\"initOk\");\n });\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/components/tree/components/o-tree.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
733
733
|
|
|
734
734
|
/***/ }),
|
|
735
735
|
|
|
@@ -960,7 +960,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core
|
|
|
960
960
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
961
961
|
|
|
962
962
|
"use strict";
|
|
963
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _components_table_ol_form__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/table/ol-form */ \"./src/components/table/ol-form/index.vue\");\n/* harmony import */ var _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @element-plus/icons-vue */ \"@element-plus/icons-vue\");\n/* harmony import */ var _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _components_v_component_index_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/v-component/index.vue */ \"./src/components/v-component/index.vue\");\n/* harmony import */ var vue_codemirror__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vue-codemirror */ \"./node_modules/vue-codemirror/dist/vue-codemirror.esm.js\");\n/* harmony import */ var _codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @codemirror/lang-javascript */ \"./node_modules/@codemirror/lang-javascript/dist/index.js\");\n/* harmony import */ var _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @codemirror/theme-one-dark */ \"./node_modules/@codemirror/theme-one-dark/dist/index.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var sortablejs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! sortablejs */ \"./node_modules/sortablejs/modular/sortable.esm.js\");\n/* harmony import */ var _store_dictType__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/store/dictType */ \"./src/store/dictType.js\");\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _api_dist__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/api/dist */ \"./src/api/dist.js\");\n/* harmony import */ var _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @/components/ol-table-select.vue */ \"./src/components/ol-table-select.vue\");\n/* harmony import */ var _components_ol_table_select_config_vue__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/components/ol-table-select-config.vue */ \"./src/components/ol-table-select-config.vue\");\n/* harmony import */ var _components_Icon__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @/components/Icon */ \"./src/components/Icon/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n __name: 'index',\n props: {\n type: {}\n },\n setup(__props, {\n expose: __expose\n }) {\n const msg = (0,_utils_message__WEBPACK_IMPORTED_MODULE_10__.useMessage)(); // 消息弹窗\n const http = (0,vue__WEBPACK_IMPORTED_MODULE_7__.inject)('http');\n const dictType = (0,_store_dictType__WEBPACK_IMPORTED_MODULE_13__.storeDictType)();\n const props = __props;\n const customUrl = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(undefined);\n const vexGridRef = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(null);\n const vFormViewer = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(null);\n const dialogTableVisible = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(false);\n function setShow() {\n updateSort();\n }\n\n /**\r\n * 设置新增、编辑表单uuid和更新条件\r\n * @param key\r\n */\n function setUpdateKey(key) {\n if (!form.updateKey) {\n form.updateKey = key;\n }\n }\n function showViewForm() {\n dialogTableVisible.value = true;\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n let data = {\n type: formType.value,\n theme: 't1',\n otherProp: otherProp,\n formData: {}\n };\n data.form = data.type == 0 ? baseOption.value : formJson.value;\n vFormViewer.value.init(data);\n });\n }\n const otherProp = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({\n beforeSave: '',\n afterSave: '',\n afterInit: '',\n beforeInit: '',\n createBy: '',\n updateBy: ''\n });\n // 基础表单\n const baseOption = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n submitBtn: false,\n emptyBtn: false,\n labelWidth: 125,\n comCommit: false,\n //如果为true,只提交form\n column: []\n });\n //编码设计\n const codeForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)();\n const copeFiled = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)();\n const dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_14__.storeDict)();\n //表单类型\n const formType = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(0);\n //表单设计\n const formConfig = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(0);\n //快捷设计表单\n const designForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n span: 2\n });\n //快捷设计表格\n const gridOptions = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n border: true,\n resizable: true,\n showOverflow: true,\n size: 'mini',\n height: '420px',\n editConfig: {\n trigger: 'click',\n mode: 'cell'\n },\n rowConfig: {\n useKey: true\n },\n align: 'center',\n columns: [{\n title: '操作',\n width: 70,\n slots: {\n default: 'operate'\n }\n }, {\n type: 'checkbox',\n width: 40\n }, {\n type: \"expand\",\n width: 61,\n title: \"序号\",\n className: 'colExpand',\n slots: {\n content: 'content',\n default: 'seq'\n }\n }, {\n field: 'prop',\n minWidth: 130,\n editRender: {\n props: {\n clearable: true\n },\n events: {\n change: refreshForm\n },\n name: 'input'\n },\n title: \"字段名\"\n }, {\n field: 'title',\n width: 80,\n title: \"原标题\"\n }, {\n field: 'showName',\n width: 120,\n title: \"label\",\n editRender: {\n props: {\n clearable: true\n },\n events: {\n change: refreshForm\n },\n name: 'input'\n }\n }, {\n title: '必填',\n field: 'required',\n width: 60,\n params: {\n all: null\n },\n slots: {\n header: 'checkedBox_header',\n default: 'checkedBox_default'\n }\n }, {\n title: ' 不保存',\n field: 'tableField',\n width: 60,\n params: {\n all: null\n },\n slots: {\n header: 'checkedBox_header',\n default: 'checkedBox_default'\n }\n }, {\n title: '控件类型',\n field: 'selectDom',\n width: 100,\n editRender: {\n props: {\n clearable: true,\n filterable: true\n },\n name: '$select',\n events: {\n change: refreshForm\n },\n options: dict.val('select_dom')\n }\n }, {\n title: '数据字典',\n field: 'dictCode',\n allowCreate: true,\n width: 120,\n filterable: true,\n //数据字典属性的配置对象\n props: {\n label: 'dictLabel',\n value: 'dictValue'\n },\n editRender: {\n props: {\n clearable: true,\n filterable: true\n },\n name: '$select',\n events: {\n change: refreshForm\n },\n options: dictType.val()\n }\n }, {\n title: '更新回调',\n field: 'change',\n width: 100,\n slots: {\n default: 'change'\n }\n }],\n data: []\n });\n //展开行表单\n const expandForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n submitBtn: false,\n emptyBtn: false,\n span: 8,\n column: [{\n label: '禁用',\n prop: 'disabled',\n type: 'switch',\n value: false,\n dicData: [{\n label: '否',\n value: false\n }, {\n label: '是',\n value: true\n }]\n }, {\n label: '隐藏',\n prop: 'display',\n type: 'switch',\n value: true,\n dicData: [{\n label: '否',\n value: true\n }, {\n label: '是',\n value: false\n }]\n }, {\n label: '标题宽度',\n prop: 'labelWidth'\n }, {\n label: '默认值',\n prop: 'value'\n }, {\n label: '输入框提示',\n prop: 'placeholder'\n }, {\n label: '数据字典表',\n prop: 'dictTable'\n }, {\n label: '字典dictUrl',\n prop: 'dictUrl'\n }, {\n label: '其他属性',\n prop: 'attrs',\n slots: {\n default: 'attrs'\n }\n }]\n });\n //自定义表单值\n const formJson = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({});\n const formData = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({});\n const formKey = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(0);\n const optionData = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({});\n const vFormRef = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(null);\n const customForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(\"\");\n const copeFiledMethod = value => {\n let checkboxRecords = vexGridRef.value.getCheckboxRecords();\n if (checkboxRecords.length != 0) {\n let filed = \"\";\n for (let {\n prop\n } of checkboxRecords) {\n if (filed.length != 0) {\n filed += \",\";\n }\n filed += prop;\n }\n if (value == 1) {\n filed = \"hideColumn('\" + filed + \"');\";\n } else if (value == 2) {\n filed = \"showColumn('\" + filed + \"');\";\n }\n navigator.clipboard.writeText(filed).then(() => {\n msg.success(\"复制成功!\" + filed);\n }).catch(err => {\n msg.error(\"复制失败!\" + filed);\n });\n }\n };\n //表头全选框更新\n const headerClick = column => {\n gridOptions.value.data.forEach(item => {\n if (column.params.all) {\n item.rules = [{\n required: true,\n message: '请输入' + item.title,\n trigger: 'blur'\n }];\n item[column.field] = '1';\n } else {\n item[column.field] = '0';\n item.rules = null;\n }\n });\n refreshForm();\n };\n\n //获取数据\n const setData = data => {\n if (!data) {\n return;\n }\n formType.value = parseInt(data.formMain.designer);\n for (let key of Object.keys(form)) {\n form[key] = data.formMain[key];\n }\n if (form.otherProp && form.otherProp.toString().trim()) {\n try {\n let otherPropJson = JSON.parse(form.otherProp);\n for (let key of Object.keys(otherProp)) {\n otherProp[key] = otherPropJson[key];\n }\n } catch (e) {\n console.error(e);\n }\n }\n customForm.value = data.formMain.customForm;\n //基础表单\n //JSON字符串\n if (data.formJson.optionJson) {\n codeForm.value = data.formJson.optionJson;\n codeToData();\n }\n if (data.formJson.customJson) {\n //自定义表单\n formJson.value = JSON.parse(data.formJson.customJson);\n }\n };\n function getColumn(item) {\n let obj = {\n prop: item.field,\n title: item.title || item.label,\n sort: gridOptions.value.data ? gridOptions.value.data.length : 0,\n //为空默认文本框\n selectDom: item.selectDom ? item.selectDom : 1,\n dictCode: item.dictCode,\n form: {\n dictTable: item.dictTable\n }\n };\n return obj;\n }\n\n //列配置新增多选更新\n const updateData = (row, column) => {\n if (row[column.field] == '1') {\n for (const item of gridOptions.value.data) {\n if (item.prop == row.field) return;\n }\n let tableObj = getColumn(row);\n gridOptions.value.data.push(tableObj);\n } else {\n gridOptions.value.data = gridOptions.value.data.filter(item => item.prop != row.field);\n }\n reloadData();\n refreshForm();\n };\n function parseJson(column) {\n let attrs = column.attrs;\n if (attrs) {\n try {\n attrs = JSON.parse(attrs);\n for (let key of Object.keys(attrs)) {\n column[key] = attrs;\n }\n } catch (e) {\n console.error(\"解析attrs异常\", attrs);\n }\n }\n }\n function reloadData(data) {\n if (data) {\n gridOptions.value.data = data;\n }\n if (vexGridRef.value) {\n vexGridRef.value.reloadData(gridOptions.value.data);\n }\n }\n\n //列配置新增全选与全不选\n const setAll = ({\n list,\n isAll\n }) => {\n let data = [];\n if (isAll) {\n for (let item of list) {\n data.push(getColumn(item));\n }\n }\n reloadData(data);\n refreshForm();\n };\n\n //基础表单 > 快捷设计表单更新\n const designFormChange = () => {\n //行数转换为尺寸\n baseOption.value.span = parseInt(24 / designForm.value.span);\n //JSON格式化\n codeForm.value = jsonFormat(baseOption.value);\n updateSort();\n };\n\n //控件类型更新\n const dictChange = ({\n row\n }) => {\n if (row.selectDom === '22') {\n //如果是表格选择器,则展开行,因为一定要配置其他属性,所以需要展开行\n if (row.form.attrs == null || row.form.attrs === '') {\n row.form.attrs = '{\\n' + ' \"olTableSelect\":{\\n' + ' \"uuid\":\"1901841070608990208\",\\n' + ' \"key\":\"id\",\\n' +\n //数据库要存的值,如:外键ID或某个编码\n ' \"label\":\"name\",\\n' +\n //选中数据后回显的数据\n ' \"labelIsAppendCode\":false,\\n' +\n //默认,可不填或不该\n ' \"otherResult\":\"目标字段1:源字段1,目标字段2:源字段2,目标字段3:源字段3\"\\n' +\n //需要额外字段数据格式配置:\"目标字段1:源字段1,目标字段2:源字段2\n ' }\\n' + '}';\n }\n vexGridRef.value.setRowExpand([row], true); //展开行\n }\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n baseOption.value.column.forEach(item => {\n if (item.prop == row.prop) {\n item.type = getFormType(row); //控件类型\n codeForm.value = jsonFormat(baseOption.value);\n return;\n }\n });\n });\n };\n let update = true;\n function refreshForm() {\n if (update != true) {\n setTimeout(() => {\n refreshForm();\n }, 200);\n }\n update = false;\n let data = JSON.parse(JSON.stringify(gridOptions.value.data));\n let columns = [];\n let index = 1;\n for (let d of data) {\n d.sort = index;\n let column = getCodeColumn(d);\n columns.push(column);\n index++;\n }\n columns.sort((a, b) => {\n return a.sort - b.sort;\n });\n setCodeForm(columns);\n setBaseOption(columns);\n update = true;\n }\n function setDictCode(column) {\n if (column.selectDom != 1 && (column.dictCode || column.dictTable || column.dictUrl)) {\n getDicData(column);\n }\n }\n function codeToData(alter) {\n try {\n getFormatter();\n let value = JSON.parse(codeForm.value);\n setSort(value);\n codeForm.value = jsonFormat(value);\n //更新快捷设计表格的数据\n setTableData(value);\n if (!value.labelWidth) value.labelWidth = 125;\n baseOption.value = value;\n setBaseOption(value.column);\n value.span = value.span ? value.span : 12;\n //计算表单每行个数\n designForm.value.span = parseInt(24 / value.span);\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n refreshForm();\n });\n if (alter) {\n msg.success(\"生成成功!\");\n }\n } catch (e) {\n console.error(e);\n msg.error('生成失败,请检查对象格式是否正确' + e);\n }\n }\n function setCodeForm(columns) {\n let option = JSON.parse(JSON.stringify(baseOption.value));\n option.column = JSON.parse(JSON.stringify(columns));\n codeForm.value = jsonFormat(option);\n }\n function setEvents(column) {\n for (let event of events) {\n if (column[event] != undefined && column[event] != '') {\n try {\n let e = replaceDollarBraces(column[event]);\n column[event] = eval(\"(params)=>{\" + e + \"}\");\n } catch (e) {\n console.error(e);\n }\n } else {\n delete column[event];\n }\n }\n }\n function replaceDollarBraces(str) {\n return str.replace(/\\$\\{?([^{}]+)\\}?/g, function (match, innerContent) {\n return innerContent ? `'${innerContent}'` : match;\n });\n }\n function setBaseOption(columns) {\n columns = JSON.parse(JSON.stringify(columns));\n for (let column of columns) {\n try {\n parseJson(column);\n setEvents(column);\n setDictCode(column);\n } catch (e) {\n console.error(e);\n }\n }\n baseOption.value.column = columns;\n }\n let events = ['change'];\n function getFormatter() {\n //正则表达式替换字符串的值\n let v = codeForm.value.replace(/,}/gi, \"}\").replace(/,]/gi, \"]\");\n codeForm.value = JSON.stringify(JSON.parse(v), null, 4);\n }\n function setSort(value) {\n value.column.sort((a, b) => {\n return a.sort - b.sort;\n });\n for (let i = 0; i < value.column.length; i++) {\n value.column.sort = i + 1;\n }\n }\n function getCodeColumn(row) {\n let columnObj = {};\n for (let column of gridOptions.value.columns) {\n if (column.field !== undefined && row[column.field] !== undefined && row[column.field] !== '' && row[column.field] !== null) {\n columnObj[column.field] = row[column.field];\n }\n }\n for (let column of expandForm.value.column) {\n if (column.prop !== undefined && row.form[column.prop] !== undefined && row.form[column.prop] !== '' && row.form[column.prop] !== null) {\n columnObj[column.prop] = row.form[column.prop];\n }\n }\n columnObj.label = columnObj.showName ? columnObj.showName : columnObj.title;\n if (columnObj.required == '1') {\n columnObj.rules = [{\n required: true,\n message: '请输入' + row.title,\n trigger: 'blur'\n }];\n }\n if (columnObj.required == '0') {\n delete columnObj.rules;\n delete columnObj.required;\n }\n if (columnObj != 1) {\n columnObj.type = getFormType(row);\n }\n return columnObj;\n }\n function getTableRow(data) {\n let obj = JSON.parse(JSON.stringify(data));\n obj.form = {};\n for (let column of gridOptions.value.columns) {\n if (column.field !== undefined && data[column.field] !== undefined && data[column.field].toString().trim() !== '') {\n obj[column.field] = data[column.field];\n }\n }\n for (let column of expandForm.value.column) {\n if (column.prop !== undefined && data[column.prop] !== undefined && data[column.prop].toString().trim() !== '') {\n obj.form[column.prop] = data[column.prop];\n }\n }\n for (let event of events) {\n if (obj[event] != undefined && !(obj[event] instanceof Function)) {\n obj[event] = obj[event].toString();\n }\n }\n if (data.label) {\n obj.showName = data.label;\n if (!obj.title) {\n obj.title = data.label;\n }\n }\n if (data.label) {\n obj.showName = data.label;\n obj.title = data.label;\n }\n delete obj.type;\n return obj;\n }\n\n //编码设计生成后更新快捷设计表格数据\n const setTableData = value => {\n let datas = [];\n for (let column of value.column) {\n let data = getTableRow(column);\n datas.push(data);\n }\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n gridOptions.value.data = datas;\n });\n };\n function setDicData(column) {\n baseOption.value.column.forEach(item => {\n if (item.prop == column.prop) {\n item.dicData = column.dicData;\n return;\n }\n });\n }\n const setDictUrl = column => {\n let dictUrl = column.dictUrl.split(\",\");\n let url;\n let label = 'label';\n let value = 'value';\n let parentId = 'parentId';\n // get,url,label,value,parent_id\n let doGet = true;\n if (dictUrl.length > 1) {\n if (dictUrl[0].toString().toLowerCase() == 'post') {\n doGet = false;\n }\n url = dictUrl[1];\n label = dictUrl[2];\n value = dictUrl[3];\n parentId = dictUrl[4];\n } else {\n url = dictUrl[0];\n }\n if (doGet) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.get)(http, url).then(data => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree)(data, value, parentId);\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n } else {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.post)(http, column.dictUrl, false, false).then(({\n data\n }) => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree)(data, value, parentId);\n } else {\n data.forEach(da => {\n da['label'] = da[label];\n da['value'] = da[value];\n column.dicData.push(da);\n });\n }\n });\n }\n };\n //获取字典\n const getDicData = column => {\n let code = column.dictCode;\n if (code == \"\" || !code) {\n delete column.dicData;\n } else if (column.dictTable) {\n getParameter(column);\n } else if (column.dictUrl) {\n setDictUrl(column);\n } else {\n const dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_14__.storeDict)();\n column.dicData = dict.val(column.dictCode);\n setDicData(column);\n }\n };\n function getParameter(column) {\n let params = {};\n let dictTable = JSON.parse(JSON.stringify(column.dictTable));\n if (dictTable instanceof Object) {\n params = dictTable;\n } else {\n dictTable = column.dictTable.split(\",\");\n params[\"dbName\"] = dictTable[0];\n params[\"tableName\"] = dictTable[1];\n params[\"label\"] = dictTable[2];\n params[\"value\"] = dictTable[3];\n if (dictTable[4]) {\n params[\"parentValue\"] = dictTable[4];\n }\n }\n (0,_api_dist__WEBPACK_IMPORTED_MODULE_17__.initDictTable)(http, params).then(data => {\n column.dicData.length = 0;\n for (let d of data) {\n d.label = d.dictLabel;\n d.value = d.dictValue;\n }\n if (params[\"parentValue\"]) {\n data = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree)(data, 'value', 'parentValue');\n column.dicData.push(data);\n } else {\n for (let d of data) {\n d.label = d.dictLabel;\n d.value = d.dictValue;\n column.dicData.push(d);\n }\n }\n setDicData(column);\n });\n }\n\n //JSON格式化\n const jsonFormat = val => {\n return JSON.stringify(JSON.parse(JSON.stringify(val)), null, 4);\n };\n\n //控件类型转换\n const getFormType = row => {\n let val = row.selectDom;\n if (val != '' || val != undefined || val) {\n let type = \"\";\n let map = {\n input: '1',\n select: '2',\n datetime: '3',\n time: '30',\n radio: '4',\n checkbox: '5',\n date: '6',\n number: '7',\n tree: '15',\n textarea: '10'\n };\n if (isNaN(val)) {\n //不是数字,通过健找值\n type = map[val];\n } else {\n //是数字,通过值找健\n // 使用 Object.values() 获取对象的所有值\n const arr = Object.values(map);\n // 使用 Array.prototype.indexOf() 查找指定值在数组中的索引位置\n const index = arr.indexOf(val);\n // 使用 Object.keys()[index] 获取对应索引位置的键名\n type = Object.keys(map)[index];\n if (type == \"\") {\n type = 'input';\n } else if (['select', 'checkbox', 'radio', 'tree'].indexOf(type) != -1) {\n getDicData(row);\n }\n }\n return type;\n }\n };\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.onMounted)(() => {\n updateSort();\n });\n function addColumn() {\n gridOptions.value.data.push({\n sort: gridOptions.value.data.length,\n prop: \"\",\n title: \"\",\n showName: \"\",\n selectDom: \"1\",\n label: \"\",\n type: \"input\",\n form: {}\n });\n refreshForm();\n }\n\n //表格拖动更新\n const updateSort = () => {\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n if (!vexGridRef.value) {\n return;\n }\n //el绑定元素需要找到vxe的DOM下的tbody元素\n sortablejs__WEBPACK_IMPORTED_MODULE_12__[\"default\"].create(vexGridRef.value.$el.querySelector('.body--wrapper>.vxe-table--body tbody'), {\n animation: 130,\n //拖拽动画过渡时间\n handle: '.vxe-icon-sort',\n // 结束拖拽\n onEnd: function (/**Event*/{\n oldIndex,\n newIndex\n }) {\n const list = JSON.parse(JSON.stringify(gridOptions.value.data)); //保存旧数据\n const targetRow = list.splice(oldIndex, 1)[0]; //保存移动的元素并删除原列表中移动的元素\n list.splice(newIndex, 0, targetRow); //插入到目标新索引中\n const newsArr = JSON.parse(JSON.stringify(list)); //重新赋值数组\n //将新表格数据重新排序\n for (let i = 0; i < newsArr.length; i++) {\n newsArr[i].sort = i;\n }\n gridOptions.value.data = newsArr;\n //把表单的排序号和表格的排序号保持一致\n newsArr.forEach(tableItem => {\n baseOption.value.column.forEach(formItem => {\n if (tableItem.prop == formItem.prop) {\n formItem.sort = tableItem.sort;\n }\n });\n });\n //将表单重新排序\n baseOption.value.column.sort((a, b) => {\n return a.sort - b.sort;\n });\n codeForm.value = jsonFormat(baseOption.value);\n }\n });\n });\n };\n const form = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({\n updateKey: '',\n createBy: '',\n updateBy: '',\n saveUrl: '',\n title: '',\n otherProp: {},\n requestType: 'post',\n formType: props.type\n });\n const state = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({\n extensions: [(0,_codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_21__.javascript)(), _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_22__.oneDark],\n values: null,\n err: false,\n baseForm: {},\n baseFormRender: {}\n });\n const formMap = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({});\n\n // 更换表单\n const onChangeForm = value => {\n if (value) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.get)(http, \"/online/formDesigner/queryById\", {\n id: value\n }).then(data => {\n formJson.value = JSON.parse(data.formJson);\n formKey.value++;\n });\n }\n };\n const getForm = () => {\n form.otherProp = JSON.stringify(otherProp);\n return (0,vue__WEBPACK_IMPORTED_MODULE_7__.markRaw)(form);\n };\n // 获取新增表单配置数据\n const getData = () => {\n if (formType.value == 0 && gridOptions.value.data.length == 0) {\n return undefined;\n }\n refreshForm();\n let obj = {\n vexTable: gridOptions.value,\n baseForm: baseOption.value,\n codeForm: codeForm.value,\n designer: formType.value,\n customJson: formJson.value,\n customForm: customForm.value\n };\n return obj;\n };\n /**\r\n * 右边字段配置删除行数据\r\n * @param row\r\n * @returns {Promise<void>}\r\n */\n const removeRowEvent = async row => {\n const type = await vxe_table__WEBPACK_IMPORTED_MODULE_15___default().modal.confirm('您确定要删除该数据?');\n const $grid = vexGridRef.value;\n if ($grid && type === 'confirm') {\n await $grid.remove(row);\n gridOptions.value.data = gridOptions.value.data.filter(item => item._X_ROW_KEY != row._X_ROW_KEY);\n removeColumnEvent(row);\n }\n };\n /**\r\n * 删除表单属性(快捷设计属性)\r\n * @param row\r\n */\n const removeColumnEvent = row => {\n baseOption.value.column = baseOption.value.column.filter(item => item.prop != row.prop);\n codeForm.value = jsonFormat(baseOption.value);\n };\n\n /**\r\n * 表格选择器回调函数\r\n * @param data\r\n */\n function olTableSelectChange(slotName, data) {\n console.info('插槽名称', slotName);\n console.info('表格回传的数据', data);\n }\n\n // 动态获取需要渲染的插槽名称列表\n const dynamicSlotsTable = (0,vue__WEBPACK_IMPORTED_MODULE_7__.computed)(() => {\n const result = baseOption.value.column.filter(item => item.selectDom === '22' || item.selectDom === '21') // 筛选出需要动态插槽的字段(表单选择)\n .map(item => {\n let slotObj = {\n slotName: item.prop\n };\n slotObj.config = item.attrs != null ? JSON.parse(item.attrs).olTableSelect : {};\n slotObj.type = item.selectDom;\n return slotObj;\n }); // 获取字段名作为插槽名\n return result;\n });\n\n // 对外暴露\n __expose({\n setData,\n updateData,\n setAll,\n getData,\n setShow,\n getForm,\n setUpdateKey\n });\n const __returned__ = {\n msg,\n http,\n dictType,\n props,\n customUrl,\n vexGridRef,\n vFormViewer,\n dialogTableVisible,\n setShow,\n setUpdateKey,\n showViewForm,\n otherProp,\n baseOption,\n codeForm,\n copeFiled,\n dict,\n formType,\n formConfig,\n designForm,\n gridOptions,\n expandForm,\n formJson,\n formData,\n formKey,\n optionData,\n vFormRef,\n customForm,\n copeFiledMethod,\n headerClick,\n setData,\n getColumn,\n updateData,\n parseJson,\n reloadData,\n setAll,\n designFormChange,\n dictChange,\n get update() {\n return update;\n },\n set update(v) {\n update = v;\n },\n refreshForm,\n setDictCode,\n codeToData,\n setCodeForm,\n setEvents,\n replaceDollarBraces,\n setBaseOption,\n get events() {\n return events;\n },\n set events(v) {\n events = v;\n },\n getFormatter,\n setSort,\n getCodeColumn,\n getTableRow,\n setTableData,\n setDicData,\n setDictUrl,\n getDicData,\n getParameter,\n jsonFormat,\n getFormType,\n addColumn,\n updateSort,\n form,\n state,\n formMap,\n onChangeForm,\n getForm,\n getData,\n removeRowEvent,\n removeColumnEvent,\n olTableSelectChange,\n dynamicSlotsTable,\n get vForm() {\n return _components_table_ol_form__WEBPACK_IMPORTED_MODULE_5__[\"default\"];\n },\n get Delete() {\n return _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__.Delete;\n },\n get Search() {\n return _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__.Search;\n },\n reactive: vue__WEBPACK_IMPORTED_MODULE_7__.reactive,\n ref: vue__WEBPACK_IMPORTED_MODULE_7__.ref,\n nextTick: vue__WEBPACK_IMPORTED_MODULE_7__.nextTick,\n onMounted: vue__WEBPACK_IMPORTED_MODULE_7__.onMounted,\n inject: vue__WEBPACK_IMPORTED_MODULE_7__.inject,\n markRaw: vue__WEBPACK_IMPORTED_MODULE_7__.markRaw,\n computed: vue__WEBPACK_IMPORTED_MODULE_7__.computed,\n vComponent: _components_v_component_index_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n get Codemirror() {\n return vue_codemirror__WEBPACK_IMPORTED_MODULE_9__.Codemirror;\n },\n get javascript() {\n return _codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_21__.javascript;\n },\n get oneDark() {\n return _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_22__.oneDark;\n },\n get useMessage() {\n return _utils_message__WEBPACK_IMPORTED_MODULE_10__.useMessage;\n },\n get get() {\n return _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.get;\n },\n get post() {\n return _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.post;\n },\n get Sortable() {\n return sortablejs__WEBPACK_IMPORTED_MODULE_12__[\"default\"];\n },\n get storeDictType() {\n return _store_dictType__WEBPACK_IMPORTED_MODULE_13__.storeDictType;\n },\n get storeDict() {\n return _store_dict__WEBPACK_IMPORTED_MODULE_14__.storeDict;\n },\n get VXETable() {\n return (vxe_table__WEBPACK_IMPORTED_MODULE_15___default());\n },\n get handleTree() {\n return _utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree;\n },\n get initDictTable() {\n return _api_dist__WEBPACK_IMPORTED_MODULE_17__.initDictTable;\n },\n OlTableSelect: _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_18__[\"default\"],\n OlTableSelectConfig: _components_ol_table_select_config_vue__WEBPACK_IMPORTED_MODULE_19__[\"default\"],\n get IconSelect() {\n return _components_Icon__WEBPACK_IMPORTED_MODULE_20__.IconSelect;\n }\n };\n Object.defineProperty(__returned__, '__isScriptSetup', {\n enumerable: false,\n value: true\n });\n return __returned__;\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/views/table/add-or-edit/config/form-config/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
963
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _components_table_ol_form__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/table/ol-form */ \"./src/components/table/ol-form/index.vue\");\n/* harmony import */ var _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @element-plus/icons-vue */ \"@element-plus/icons-vue\");\n/* harmony import */ var _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _components_v_component_index_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/v-component/index.vue */ \"./src/components/v-component/index.vue\");\n/* harmony import */ var vue_codemirror__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vue-codemirror */ \"./node_modules/vue-codemirror/dist/vue-codemirror.esm.js\");\n/* harmony import */ var _codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @codemirror/lang-javascript */ \"./node_modules/@codemirror/lang-javascript/dist/index.js\");\n/* harmony import */ var _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @codemirror/theme-one-dark */ \"./node_modules/@codemirror/theme-one-dark/dist/index.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var sortablejs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! sortablejs */ \"./node_modules/sortablejs/modular/sortable.esm.js\");\n/* harmony import */ var _store_dictType__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/store/dictType */ \"./src/store/dictType.js\");\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _api_dist__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/api/dist */ \"./src/api/dist.js\");\n/* harmony import */ var _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @/components/ol-table-select.vue */ \"./src/components/ol-table-select.vue\");\n/* harmony import */ var _components_ol_table_select_config_vue__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/components/ol-table-select-config.vue */ \"./src/components/ol-table-select-config.vue\");\n/* harmony import */ var _components_Icon__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @/components/Icon */ \"./src/components/Icon/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n __name: 'index',\n props: {\n type: {}\n },\n setup(__props, {\n expose: __expose\n }) {\n const msg = (0,_utils_message__WEBPACK_IMPORTED_MODULE_10__.useMessage)(); // 消息弹窗\n const http = (0,vue__WEBPACK_IMPORTED_MODULE_7__.inject)('http');\n const dictType = (0,_store_dictType__WEBPACK_IMPORTED_MODULE_13__.storeDictType)();\n const props = __props;\n const customUrl = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(undefined);\n const vexGridRef = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(null);\n const vFormViewer = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(null);\n const dialogTableVisible = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(false);\n function setShow() {\n updateSort();\n }\n\n /**\r\n * 设置新增、编辑表单uuid和更新条件\r\n * @param key\r\n */\n function setUpdateKey(key) {\n if (!form.updateKey) {\n form.updateKey = key;\n }\n }\n function showViewForm() {\n dialogTableVisible.value = true;\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n let data = {\n type: formType.value,\n theme: 't1',\n otherProp: otherProp,\n formData: {}\n };\n data.form = data.type == 0 ? baseOption.value : formJson.value;\n vFormViewer.value.init(data);\n });\n }\n const otherProp = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({\n beforeSave: '',\n afterSave: '',\n afterInit: '',\n beforeInit: '',\n createBy: '',\n updateBy: ''\n });\n // 基础表单\n const baseOption = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n submitBtn: false,\n emptyBtn: false,\n labelWidth: 125,\n comCommit: false,\n //如果为true,只提交form\n column: []\n });\n //编码设计\n const codeForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)();\n const copeFiled = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)();\n const dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_14__.storeDict)();\n //表单类型\n const formType = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(0);\n //表单设计\n const formConfig = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(0);\n //快捷设计表单\n const designForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n span: 2\n });\n //快捷设计表格\n const gridOptions = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n border: true,\n resizable: true,\n showOverflow: true,\n size: 'mini',\n height: '420px',\n editConfig: {\n trigger: 'click',\n mode: 'cell'\n },\n rowConfig: {\n useKey: true\n },\n align: 'center',\n columns: [{\n title: '操作',\n width: 70,\n slots: {\n default: 'operate'\n }\n }, {\n type: 'checkbox',\n width: 40\n }, {\n type: \"expand\",\n width: 61,\n title: \"序号\",\n className: 'colExpand',\n slots: {\n content: 'content',\n default: 'seq'\n }\n }, {\n field: 'prop',\n minWidth: 130,\n editRender: {\n props: {\n clearable: true\n },\n events: {\n change: refreshForm\n },\n name: 'input'\n },\n title: \"字段名\"\n }, {\n field: 'title',\n width: 80,\n title: \"原标题\"\n }, {\n field: 'showName',\n width: 120,\n title: \"label\",\n editRender: {\n props: {\n clearable: true\n },\n events: {\n change: refreshForm\n },\n name: 'input'\n }\n }, {\n title: '必填',\n field: 'required',\n width: 60,\n params: {\n all: null\n },\n slots: {\n header: 'checkedBox_header',\n default: 'checkedBox_default'\n }\n }, {\n title: ' 不保存',\n field: 'tableField',\n width: 60,\n params: {\n all: null\n },\n slots: {\n header: 'checkedBox_header',\n default: 'checkedBox_default'\n }\n }, {\n title: '控件类型',\n field: 'selectDom',\n width: 100,\n editRender: {\n props: {\n clearable: true,\n filterable: true\n },\n name: '$select',\n events: {\n change: refreshForm\n },\n options: dict.val('select_dom')\n }\n }, {\n title: '数据字典',\n field: 'dictCode',\n allowCreate: true,\n width: 120,\n filterable: true,\n //数据字典属性的配置对象\n props: {\n label: 'dictLabel',\n value: 'dictValue'\n },\n editRender: {\n props: {\n clearable: true,\n filterable: true\n },\n name: '$select',\n events: {\n change: refreshForm\n },\n options: dictType.val()\n }\n }, {\n title: '更新回调',\n field: 'change',\n width: 100,\n slots: {\n default: 'change'\n }\n }],\n data: []\n });\n //展开行表单\n const expandForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({\n submitBtn: false,\n emptyBtn: false,\n span: 8,\n column: [{\n label: '禁用',\n prop: 'disabled',\n type: 'switch',\n value: false,\n dicData: [{\n label: '否',\n value: false\n }, {\n label: '是',\n value: true\n }]\n }, {\n label: '隐藏',\n prop: 'display',\n type: 'switch',\n value: true,\n dicData: [{\n label: '否',\n value: true\n }, {\n label: '是',\n value: false\n }]\n }, {\n label: '多选',\n prop: 'multiple',\n type: 'switch',\n value: false,\n dicData: [{\n label: '否',\n value: false\n }, {\n label: '是',\n value: true\n }]\n }, {\n label: '标题宽度',\n prop: 'labelWidth'\n }, {\n label: '默认值',\n prop: 'value'\n }, {\n label: '输入框提示',\n prop: 'placeholder'\n }, {\n label: '数据字典表',\n prop: 'dictTable'\n }, {\n label: '字典dictUrl',\n prop: 'dictUrl'\n }, {\n label: '其他属性',\n prop: 'attrs',\n slots: {\n default: 'attrs'\n }\n }]\n });\n //自定义表单值\n const formJson = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)({});\n const formData = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({});\n const formKey = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(0);\n const optionData = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({});\n const vFormRef = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(null);\n const customForm = (0,vue__WEBPACK_IMPORTED_MODULE_7__.ref)(\"\");\n const copeFiledMethod = value => {\n let checkboxRecords = vexGridRef.value.getCheckboxRecords();\n if (checkboxRecords.length != 0) {\n let filed = \"\";\n for (let {\n prop\n } of checkboxRecords) {\n if (filed.length != 0) {\n filed += \",\";\n }\n filed += prop;\n }\n if (value == 1) {\n filed = \"hideColumn('\" + filed + \"');\";\n } else if (value == 2) {\n filed = \"showColumn('\" + filed + \"');\";\n }\n navigator.clipboard.writeText(filed).then(() => {\n msg.success(\"复制成功!\" + filed);\n }).catch(err => {\n msg.error(\"复制失败!\" + filed);\n });\n }\n };\n //表头全选框更新\n const headerClick = column => {\n gridOptions.value.data.forEach(item => {\n if (column.params.all) {\n item.rules = [{\n required: true,\n message: '请输入' + item.title,\n trigger: 'blur'\n }];\n item[column.field] = '1';\n } else {\n item[column.field] = '0';\n item.rules = null;\n }\n });\n refreshForm();\n };\n\n //获取数据\n const setData = data => {\n if (!data) {\n return;\n }\n formType.value = parseInt(data.formMain.designer);\n for (let key of Object.keys(form)) {\n form[key] = data.formMain[key];\n }\n if (form.otherProp && form.otherProp.toString().trim()) {\n try {\n let otherPropJson = JSON.parse(form.otherProp);\n for (let key of Object.keys(otherProp)) {\n otherProp[key] = otherPropJson[key];\n }\n } catch (e) {\n console.error(e);\n }\n }\n customForm.value = data.formMain.customForm;\n //基础表单\n //JSON字符串\n if (data.formJson.optionJson) {\n codeForm.value = data.formJson.optionJson;\n codeToData();\n }\n if (data.formJson.customJson) {\n //自定义表单\n formJson.value = JSON.parse(data.formJson.customJson);\n }\n };\n function getColumn(item) {\n let obj = {\n prop: item.field,\n title: item.title || item.label,\n sort: gridOptions.value.data ? gridOptions.value.data.length : 0,\n //为空默认文本框\n selectDom: item.selectDom ? item.selectDom : 1,\n dictCode: item.dictCode,\n form: {\n dictTable: item.dictTable\n }\n };\n return obj;\n }\n\n //列配置新增多选更新\n const updateData = (row, column) => {\n if (row[column.field] == '1') {\n for (const item of gridOptions.value.data) {\n if (item.prop == row.field) return;\n }\n let tableObj = getColumn(row);\n gridOptions.value.data.push(tableObj);\n } else {\n gridOptions.value.data = gridOptions.value.data.filter(item => item.prop != row.field);\n }\n reloadData();\n refreshForm();\n };\n function parseJson(column) {\n let attrs = column.attrs;\n if (attrs) {\n try {\n attrs = JSON.parse(attrs);\n for (let key of Object.keys(attrs)) {\n column[key] = attrs;\n }\n } catch (e) {\n console.error(\"解析attrs异常\", attrs);\n }\n }\n }\n function reloadData(data) {\n if (data) {\n gridOptions.value.data = data;\n }\n if (vexGridRef.value) {\n vexGridRef.value.reloadData(gridOptions.value.data);\n }\n }\n\n //列配置新增全选与全不选\n const setAll = ({\n list,\n isAll\n }) => {\n let data = [];\n if (isAll) {\n for (let item of list) {\n data.push(getColumn(item));\n }\n }\n reloadData(data);\n refreshForm();\n };\n\n //基础表单 > 快捷设计表单更新\n const designFormChange = () => {\n //行数转换为尺寸\n baseOption.value.span = parseInt(24 / designForm.value.span);\n //JSON格式化\n codeForm.value = jsonFormat(baseOption.value);\n updateSort();\n };\n\n //控件类型更新\n const dictChange = ({\n row\n }) => {\n if (row.selectDom === '22') {\n //如果是表格选择器,则展开行,因为一定要配置其他属性,所以需要展开行\n if (row.form.attrs == null || row.form.attrs === '') {\n row.form.attrs = '{\\n' + ' \"olTableSelect\":{\\n' + ' \"uuid\":\"1901841070608990208\",\\n' + ' \"key\":\"id\",\\n' +\n //数据库要存的值,如:外键ID或某个编码\n ' \"label\":\"name\",\\n' +\n //选中数据后回显的数据\n ' \"labelIsAppendCode\":false,\\n' +\n //默认,可不填或不该\n ' \"otherResult\":\"目标字段1:源字段1,目标字段2:源字段2,目标字段3:源字段3\"\\n' +\n //需要额外字段数据格式配置:\"目标字段1:源字段1,目标字段2:源字段2\n ' }\\n' + '}';\n }\n vexGridRef.value.setRowExpand([row], true); //展开行\n }\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n baseOption.value.column.forEach(item => {\n if (item.prop == row.prop) {\n item.type = getFormType(row); //控件类型\n if (row.selectDom == 8) {\n item.multiple = true;\n }\n codeForm.value = jsonFormat(baseOption.value);\n return;\n }\n });\n });\n };\n let update = true;\n function refreshForm() {\n if (update != true) {\n setTimeout(() => {\n refreshForm();\n }, 200);\n }\n update = false;\n let data = JSON.parse(JSON.stringify(gridOptions.value.data));\n let columns = [];\n let index = 1;\n for (let d of data) {\n d.sort = index;\n let column = getCodeColumn(d);\n columns.push(column);\n index++;\n }\n columns.sort((a, b) => {\n return a.sort - b.sort;\n });\n setCodeForm(columns);\n setBaseOption(columns);\n update = true;\n }\n function setDictCode(column) {\n if (column.selectDom != 1 && (column.dictCode || column.dictTable || column.dictUrl)) {\n getDicData(column);\n }\n }\n function codeToData(alter) {\n try {\n getFormatter();\n let value = JSON.parse(codeForm.value);\n setSort(value);\n codeForm.value = jsonFormat(value);\n //更新快捷设计表格的数据\n setTableData(value);\n if (!value.labelWidth) value.labelWidth = 125;\n baseOption.value = value;\n setBaseOption(value.column);\n value.span = value.span ? value.span : 12;\n //计算表单每行个数\n designForm.value.span = parseInt(24 / value.span);\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n refreshForm();\n });\n if (alter) {\n msg.success(\"生成成功!\");\n }\n } catch (e) {\n console.error(e);\n msg.error('生成失败,请检查对象格式是否正确' + e);\n }\n }\n function setCodeForm(columns) {\n let option = JSON.parse(JSON.stringify(baseOption.value));\n option.column = JSON.parse(JSON.stringify(columns));\n codeForm.value = jsonFormat(option);\n }\n function setEvents(column) {\n for (let event of events) {\n if (column[event] != undefined && column[event] != '') {\n try {\n let e = replaceDollarBraces(column[event]);\n column[event] = eval(\"(params)=>{\" + e + \"}\");\n } catch (e) {\n console.error(e);\n }\n } else {\n delete column[event];\n }\n }\n }\n function replaceDollarBraces(str) {\n return str.replace(/\\$\\{?([^{}]+)\\}?/g, function (match, innerContent) {\n return innerContent ? `'${innerContent}'` : match;\n });\n }\n function setBaseOption(columns) {\n columns = JSON.parse(JSON.stringify(columns));\n for (let column of columns) {\n try {\n parseJson(column);\n setEvents(column);\n setDictCode(column);\n } catch (e) {\n console.error(e);\n }\n }\n baseOption.value.column = columns;\n }\n let events = ['change'];\n function getFormatter() {\n //正则表达式替换字符串的值\n let v = codeForm.value.replace(/,}/gi, \"}\").replace(/,]/gi, \"]\");\n codeForm.value = JSON.stringify(JSON.parse(v), null, 4);\n }\n function setSort(value) {\n value.column.sort((a, b) => {\n return a.sort - b.sort;\n });\n for (let i = 0; i < value.column.length; i++) {\n value.column.sort = i + 1;\n }\n }\n function getCodeColumn(row) {\n let columnObj = {};\n for (let column of gridOptions.value.columns) {\n if (column.field !== undefined && row[column.field] !== undefined && row[column.field] !== '' && row[column.field] !== null) {\n columnObj[column.field] = row[column.field];\n }\n }\n for (let column of expandForm.value.column) {\n if (column.prop !== undefined && row.form[column.prop] !== undefined && row.form[column.prop] !== '' && row.form[column.prop] !== null) {\n columnObj[column.prop] = row.form[column.prop];\n }\n }\n columnObj.label = columnObj.showName ? columnObj.showName : columnObj.title;\n if (columnObj.required == '1') {\n columnObj.rules = [{\n required: true,\n message: '请输入' + row.title,\n trigger: 'blur'\n }];\n }\n if (columnObj.required == '0') {\n delete columnObj.rules;\n delete columnObj.required;\n }\n if (columnObj != 1) {\n columnObj.type = getFormType(row);\n if (row.selectDom == 8) {\n columnObj.multiple = true;\n }\n }\n return columnObj;\n }\n function getTableRow(data) {\n let obj = JSON.parse(JSON.stringify(data));\n obj.form = {};\n for (let column of gridOptions.value.columns) {\n if (column.field !== undefined && data[column.field] !== undefined && data[column.field].toString().trim() !== '') {\n obj[column.field] = data[column.field];\n }\n }\n for (let column of expandForm.value.column) {\n if (column.prop !== undefined && data[column.prop] !== undefined && data[column.prop].toString().trim() !== '') {\n obj.form[column.prop] = data[column.prop];\n }\n }\n for (let event of events) {\n if (obj[event] != undefined && !(obj[event] instanceof Function)) {\n obj[event] = obj[event].toString();\n }\n }\n if (data.label) {\n obj.showName = data.label;\n if (!obj.title) {\n obj.title = data.label;\n }\n }\n if (data.label) {\n obj.showName = data.label;\n obj.title = data.label;\n }\n delete obj.type;\n return obj;\n }\n\n //编码设计生成后更新快捷设计表格数据\n const setTableData = value => {\n let datas = [];\n for (let column of value.column) {\n let data = getTableRow(column);\n datas.push(data);\n }\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n gridOptions.value.data = datas;\n });\n };\n function setDicData(column) {\n baseOption.value.column.forEach(item => {\n if (item.prop == column.prop) {\n item.dicData = column.dicData;\n return;\n }\n });\n }\n const setDictUrl = column => {\n let dictUrl = column.dictUrl.split(\",\");\n let url;\n let label = 'label';\n let value = 'value';\n let parentId = 'parentId';\n // get,url,label,value,parent_id\n let doGet = true;\n if (dictUrl.length > 1) {\n if (dictUrl[0].toString().toLowerCase() == 'post') {\n doGet = false;\n }\n url = dictUrl[1];\n label = dictUrl[2];\n value = dictUrl[3];\n parentId = dictUrl[4];\n } else {\n url = dictUrl[0];\n }\n if (doGet) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.get)(http, url).then(data => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree)(data, value, parentId);\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n } else {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.post)(http, column.dictUrl, false, false).then(({\n data\n }) => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree)(data, value, parentId);\n } else {\n data.forEach(da => {\n da['label'] = da[label];\n da['value'] = da[value];\n column.dicData.push(da);\n });\n }\n });\n }\n };\n //获取字典\n const getDicData = column => {\n let code = column.dictCode;\n if (code == \"\" || !code) {\n delete column.dicData;\n } else if (column.dictTable) {\n getParameter(column);\n } else if (column.dictUrl) {\n setDictUrl(column);\n } else {\n const dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_14__.storeDict)();\n column.dicData = dict.val(column.dictCode);\n setDicData(column);\n }\n };\n function getParameter(column) {\n let params = {};\n let dictTable = JSON.parse(JSON.stringify(column.dictTable));\n if (dictTable instanceof Object) {\n params = dictTable;\n } else {\n dictTable = column.dictTable.split(\",\");\n params[\"dbName\"] = dictTable[0];\n params[\"tableName\"] = dictTable[1];\n params[\"label\"] = dictTable[2];\n params[\"value\"] = dictTable[3];\n if (dictTable[4]) {\n params[\"parentValue\"] = dictTable[4];\n }\n }\n (0,_api_dist__WEBPACK_IMPORTED_MODULE_17__.initDictTable)(http, params).then(data => {\n column.dicData.length = 0;\n for (let d of data) {\n d.label = d.dictLabel;\n d.value = d.dictValue;\n }\n if (params[\"parentValue\"]) {\n data = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree)(data, 'value', 'parentValue');\n column.dicData.push(data);\n } else {\n for (let d of data) {\n d.label = d.dictLabel;\n d.value = d.dictValue;\n column.dicData.push(d);\n }\n }\n setDicData(column);\n });\n }\n\n //JSON格式化\n const jsonFormat = val => {\n return JSON.stringify(JSON.parse(JSON.stringify(val)), null, 4);\n };\n\n //控件类型转换\n const getFormType = row => {\n let val = row.selectDom;\n if (val != '' || val != undefined || val) {\n let type;\n let map = {\n input: '1',\n select: '2',\n datetime: '3',\n time: '30',\n radio: '4',\n checkbox: '5',\n date: '6',\n number: '7',\n tree: '15',\n textarea: '10'\n };\n if (isNaN(val)) {\n //不是数字,通过健找值\n type = map[val];\n } else {\n if (val == 8) {\n type = \"select\";\n } else {\n //是数字,通过值找健\n // 使用 Object.values() 获取对象的所有值\n const arr = Object.values(map);\n // 使用 Array.prototype.indexOf() 查找指定值在数组中的索引位置\n const index = arr.indexOf(val);\n // 使用 Object.keys()[index] 获取对应索引位置的键名\n type = Object.keys(map)[index];\n }\n if (type == null) {\n type = 'input';\n } else if (['select', 'checkbox', 'radio', 'tree'].indexOf(type) != -1) {\n getDicData(row);\n }\n }\n return type;\n }\n };\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.onMounted)(() => {\n updateSort();\n });\n function addColumn() {\n gridOptions.value.data.push({\n sort: gridOptions.value.data.length,\n prop: \"\",\n title: \"\",\n showName: \"\",\n selectDom: \"1\",\n label: \"\",\n type: \"input\",\n form: {}\n });\n refreshForm();\n }\n\n //表格拖动更新\n const updateSort = () => {\n (0,vue__WEBPACK_IMPORTED_MODULE_7__.nextTick)(() => {\n if (!vexGridRef.value) {\n return;\n }\n //el绑定元素需要找到vxe的DOM下的tbody元素\n sortablejs__WEBPACK_IMPORTED_MODULE_12__[\"default\"].create(vexGridRef.value.$el.querySelector('.body--wrapper>.vxe-table--body tbody'), {\n animation: 130,\n //拖拽动画过渡时间\n handle: '.vxe-icon-sort',\n // 结束拖拽\n onEnd: function (/**Event*/{\n oldIndex,\n newIndex\n }) {\n const list = JSON.parse(JSON.stringify(gridOptions.value.data)); //保存旧数据\n const targetRow = list.splice(oldIndex, 1)[0]; //保存移动的元素并删除原列表中移动的元素\n list.splice(newIndex, 0, targetRow); //插入到目标新索引中\n const newsArr = JSON.parse(JSON.stringify(list)); //重新赋值数组\n //将新表格数据重新排序\n for (let i = 0; i < newsArr.length; i++) {\n newsArr[i].sort = i;\n }\n gridOptions.value.data = newsArr;\n //把表单的排序号和表格的排序号保持一致\n newsArr.forEach(tableItem => {\n baseOption.value.column.forEach(formItem => {\n if (tableItem.prop == formItem.prop) {\n formItem.sort = tableItem.sort;\n }\n });\n });\n //将表单重新排序\n baseOption.value.column.sort((a, b) => {\n return a.sort - b.sort;\n });\n codeForm.value = jsonFormat(baseOption.value);\n }\n });\n });\n };\n const form = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({\n updateKey: '',\n createBy: '',\n updateBy: '',\n saveUrl: '',\n title: '',\n otherProp: {},\n requestType: 'post',\n formType: props.type\n });\n const state = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({\n extensions: [(0,_codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_21__.javascript)(), _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_22__.oneDark],\n values: null,\n err: false,\n baseForm: {},\n baseFormRender: {}\n });\n const formMap = (0,vue__WEBPACK_IMPORTED_MODULE_7__.reactive)({});\n\n // 更换表单\n const onChangeForm = value => {\n if (value) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.get)(http, \"/online/formDesigner/queryById\", {\n id: value\n }).then(data => {\n formJson.value = JSON.parse(data.formJson);\n formKey.value++;\n });\n }\n };\n const getForm = () => {\n form.otherProp = JSON.stringify(otherProp);\n return (0,vue__WEBPACK_IMPORTED_MODULE_7__.markRaw)(form);\n };\n // 获取新增表单配置数据\n const getData = () => {\n if (formType.value == 0 && gridOptions.value.data.length == 0) {\n return undefined;\n }\n refreshForm();\n let obj = {\n vexTable: gridOptions.value,\n baseForm: baseOption.value,\n codeForm: codeForm.value,\n designer: formType.value,\n customJson: formJson.value,\n customForm: customForm.value\n };\n return obj;\n };\n /**\r\n * 右边字段配置删除行数据\r\n * @param row\r\n * @returns {Promise<void>}\r\n */\n const removeRowEvent = async row => {\n const type = await vxe_table__WEBPACK_IMPORTED_MODULE_15___default().modal.confirm('您确定要删除该数据?');\n const $grid = vexGridRef.value;\n if ($grid && type === 'confirm') {\n await $grid.remove(row);\n gridOptions.value.data = gridOptions.value.data.filter(item => item._X_ROW_KEY != row._X_ROW_KEY);\n removeColumnEvent(row);\n }\n };\n /**\r\n * 删除表单属性(快捷设计属性)\r\n * @param row\r\n */\n const removeColumnEvent = row => {\n baseOption.value.column = baseOption.value.column.filter(item => item.prop != row.prop);\n codeForm.value = jsonFormat(baseOption.value);\n };\n\n /**\r\n * 表格选择器回调函数\r\n * @param data\r\n */\n function olTableSelectChange(slotName, data) {\n console.info('插槽名称', slotName);\n console.info('表格回传的数据', data);\n }\n\n // 动态获取需要渲染的插槽名称列表\n const dynamicSlotsTable = (0,vue__WEBPACK_IMPORTED_MODULE_7__.computed)(() => {\n const result = baseOption.value.column.filter(item => item.selectDom === '22' || item.selectDom === '21') // 筛选出需要动态插槽的字段(表单选择)\n .map(item => {\n let slotObj = {\n slotName: item.prop\n };\n slotObj.config = item.attrs != null ? JSON.parse(item.attrs).olTableSelect : {};\n slotObj.type = item.selectDom;\n return slotObj;\n }); // 获取字段名作为插槽名\n return result;\n });\n\n // 对外暴露\n __expose({\n setData,\n updateData,\n setAll,\n getData,\n setShow,\n getForm,\n setUpdateKey\n });\n const __returned__ = {\n msg,\n http,\n dictType,\n props,\n customUrl,\n vexGridRef,\n vFormViewer,\n dialogTableVisible,\n setShow,\n setUpdateKey,\n showViewForm,\n otherProp,\n baseOption,\n codeForm,\n copeFiled,\n dict,\n formType,\n formConfig,\n designForm,\n gridOptions,\n expandForm,\n formJson,\n formData,\n formKey,\n optionData,\n vFormRef,\n customForm,\n copeFiledMethod,\n headerClick,\n setData,\n getColumn,\n updateData,\n parseJson,\n reloadData,\n setAll,\n designFormChange,\n dictChange,\n get update() {\n return update;\n },\n set update(v) {\n update = v;\n },\n refreshForm,\n setDictCode,\n codeToData,\n setCodeForm,\n setEvents,\n replaceDollarBraces,\n setBaseOption,\n get events() {\n return events;\n },\n set events(v) {\n events = v;\n },\n getFormatter,\n setSort,\n getCodeColumn,\n getTableRow,\n setTableData,\n setDicData,\n setDictUrl,\n getDicData,\n getParameter,\n jsonFormat,\n getFormType,\n addColumn,\n updateSort,\n form,\n state,\n formMap,\n onChangeForm,\n getForm,\n getData,\n removeRowEvent,\n removeColumnEvent,\n olTableSelectChange,\n dynamicSlotsTable,\n get vForm() {\n return _components_table_ol_form__WEBPACK_IMPORTED_MODULE_5__[\"default\"];\n },\n get Delete() {\n return _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__.Delete;\n },\n get Search() {\n return _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_6__.Search;\n },\n reactive: vue__WEBPACK_IMPORTED_MODULE_7__.reactive,\n ref: vue__WEBPACK_IMPORTED_MODULE_7__.ref,\n nextTick: vue__WEBPACK_IMPORTED_MODULE_7__.nextTick,\n onMounted: vue__WEBPACK_IMPORTED_MODULE_7__.onMounted,\n inject: vue__WEBPACK_IMPORTED_MODULE_7__.inject,\n markRaw: vue__WEBPACK_IMPORTED_MODULE_7__.markRaw,\n computed: vue__WEBPACK_IMPORTED_MODULE_7__.computed,\n vComponent: _components_v_component_index_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n get Codemirror() {\n return vue_codemirror__WEBPACK_IMPORTED_MODULE_9__.Codemirror;\n },\n get javascript() {\n return _codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_21__.javascript;\n },\n get oneDark() {\n return _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_22__.oneDark;\n },\n get useMessage() {\n return _utils_message__WEBPACK_IMPORTED_MODULE_10__.useMessage;\n },\n get get() {\n return _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.get;\n },\n get post() {\n return _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_11__.post;\n },\n get Sortable() {\n return sortablejs__WEBPACK_IMPORTED_MODULE_12__[\"default\"];\n },\n get storeDictType() {\n return _store_dictType__WEBPACK_IMPORTED_MODULE_13__.storeDictType;\n },\n get storeDict() {\n return _store_dict__WEBPACK_IMPORTED_MODULE_14__.storeDict;\n },\n get VXETable() {\n return (vxe_table__WEBPACK_IMPORTED_MODULE_15___default());\n },\n get handleTree() {\n return _utils_tree__WEBPACK_IMPORTED_MODULE_16__.handleTree;\n },\n get initDictTable() {\n return _api_dist__WEBPACK_IMPORTED_MODULE_17__.initDictTable;\n },\n OlTableSelect: _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_18__[\"default\"],\n OlTableSelectConfig: _components_ol_table_select_config_vue__WEBPACK_IMPORTED_MODULE_19__[\"default\"],\n get IconSelect() {\n return _components_Icon__WEBPACK_IMPORTED_MODULE_20__.IconSelect;\n }\n };\n Object.defineProperty(__returned__, '__isScriptSetup', {\n enumerable: false,\n value: true\n });\n return __returned__;\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/views/table/add-or-edit/config/form-config/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
964
964
|
|
|
965
965
|
/***/ }),
|
|
966
966
|
|
|
@@ -1312,7 +1312,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _vie
|
|
|
1312
1312
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1313
1313
|
|
|
1314
1314
|
"use strict";
|
|
1315
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.find.js */ \"./node_modules/core-js/modules/es.iterator.find.js\");\n/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _views_table_add_or_edit_config_field_config_index_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/views/table/add-or-edit/config/field-config/index.vue */ \"./src/views/table/add-or-edit/config/field-config/index.vue\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n\n\n\n\n\n\n\nconst msg = (0,_utils_message__WEBPACK_IMPORTED_MODULE_6__.useMessage)(); // 消息弹窗\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'configCoreTable',\n components: {\n FieldConfig: _views_table_add_or_edit_config_field_config_index_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n },\n props: {\n item: {}\n },\n inject: ['treeConfigAll', 'syncFormConfig', 'http'],\n data() {\n return {\n data: [{\n index: \"t1\",\n type: \"主表\",\n joinTable: \"\",\n joinFiled: \"/\",\n deleteWhere: 'id=${id}'\n }],\n isHovering: false,\n dict: (0,_store_dict__WEBPACK_IMPORTED_MODULE_3__.storeDict)(),\n dicData: {\n joinFiledDicData: [],\n joinTableDicData: []\n },\n url: {\n joinTableUrl: '/online/getDBTableList/',\n columnsListUrl: '/online/getDBTableColumnList/'\n }\n };\n },\n created() {\n this.init();\n },\n methods: {\n init() {},\n formatType(value) {\n if (value === '1') {\n return '男';\n }\n if (value === '0') {\n return '女';\n }\n return value;\n },\n beforeEditMethod({\n rowIndex,\n columnIndex\n }) {\n if (rowIndex === 0 && (columnIndex === 3 || columnIndex === 5)) {\n return true;\n }\n return false;\n },\n cellMouseenter({\n row,\n column,\n $event,\n property,\n $index\n }) {\n console.log('cellMouseenter', row, column, $event, property, $index);\n this.isHovering = true;\n },\n async insertEvent(row) {\n const $table = this.$refs.tableRef;\n if ($table) {\n let record = {\n index: 't' + (this.data.length + 1),\n type: 'join',\n joinTable: '',\n joinFiled: 't' + this.data.length + '.=t' + (this.data.length + 1) + '.'\n };\n row = -1;\n const {\n row: newRow\n } = await $table.insertAt(record, row);\n this.data.push(record);\n await $table.setEditCell(newRow, 'name');\n $table.updateData();\n console.log('this.data:', this.data);\n }\n },\n removeEvent(row, index) {\n if (index == 0) {\n msg.error(\"主表不能删除!\");\n return;\n }\n this.setSql(index);\n },\n showAction(row) {\n this.isHovering = true;\n },\n hideAction() {\n this.isHovering = false;\n },\n handleClick(row) {\n // 处理按钮点击事件\n console.log('row:', row);\n },\n setFieldEvent(row, column, rowIndex) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.post)(this.http, '/online/getTableSetFiled', {\n sql: this.treeConfigAll.treeConfig.executeSql,\n where: this.treeConfigAll.treeConfig.where,\n dbName: this.treeConfigAll.treeConfig.dbName,\n uuid: this.treeConfigAll.treeConfig.uuid\n }, undefined, false).then(data => {\n row.columnList = Object.values(data.data[row.joinTable]);\n this.$refs.filedConfig.init(row);\n });\n },\n filedConfigClose(data) {\n if (!data) return;\n for (let j = 0; j < this.treeConfigAll.treeConfig.table.length; j++) {\n let obj = this.treeConfigAll.treeConfig.table[j];\n if (Object.keys(data).includes(obj.index)) {\n this.treeConfigAll.treeConfig.table[j].columnList = data[obj.index];\n }\n }\n this.setSql();\n },\n setTable() {\n let promise = [];\n for (let i = 0; i < this.treeConfigAll.treeConfig.table.length; i++) {\n promise.push((0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.get)(this.http, this.url.columnsListUrl + this.treeConfigAll.treeConfig.dbName, {\n tableName: this.treeConfigAll.treeConfig.table[i].joinTable\n }));\n }\n Promise.all(promise).then(result => {\n for (let i = 0; i < result.length; i++) {\n this.treeConfigAll.treeConfig.table[i]['columnList'] = result[i];\n }\n this.setSql();\n });\n },\n setSql(index, seq) {\n if (seq != undefined && seq != 0) {\n let arr = this.treeConfigAll.treeConfig.table.find(item => {\n return item.index == seq;\n });\n if (!arr || !arr.joinTable) {\n return;\n }\n }\n if (index != undefined && index != 0) {\n this.treeConfigAll.treeConfig.table.splice(index, 1);\n }\n let sqlTableOn = this.treeConfigAll.treeConfig.table[0].joinTable + \" t1 \";\n let sqlFiled = \"\";\n let tableColumns = [];\n let sort = 0;\n for (let i = 0; i < this.treeConfigAll.treeConfig.table.length; i++) {\n if (i === index) {\n continue;\n }\n let obj = this.treeConfigAll.treeConfig.table[i];\n for (let j = 0; j < obj.columnList.length; j++) {\n let column = obj.columnList[j];\n if (column.checked == 0) {\n continue;\n }\n if (sqlFiled.length != 0) {\n sqlFiled += \",\";\n }\n sort++;\n sqlFiled += obj.index + \".\" + column.column_name + \" AS \" + column.column_name;\n let column_name = column.column_name;\n let column_comment = column.column_comment ? column.column_comment : column_name;\n tableColumns.push({\n sort: sort,\n tableField: column_name,\n field: column_name,\n title: column_comment,\n label: column_comment,\n visible: column.visible,\n display: 1,\n asName: column_name\n });\n }\n if (i != 0) {\n sqlTableOn += \" \" + obj.type + \" \" + obj.joinTable + \" \" + obj.index + \" on \" + obj.joinFiled;\n }\n }\n // 新增字段\n this.addColumn(tableColumns);\n // 删除字段\n this.removeColumn(tableColumns);\n this.treeConfigAll.treeConfig.executeSql = \"select \" + sqlFiled + \" from \" + sqlTableOn;\n this.syncFormConfig();\n },\n removeColumn(tableColumns) {\n for (let i = 0; i < this.treeConfigAll.tableColumn.length; i++) {\n let remove = true;\n for (let tableColumn of tableColumns) {\n if (this.treeConfigAll.tableColumn[i].field == tableColumn.field) {\n remove = false;\n break;\n }\n }\n if (remove) {\n this.treeConfigAll.tableColumn.splice(i, 1);\n }\n }\n },\n addColumn(tableColumns) {\n for (let tableColumn of tableColumns) {\n let add = true;\n for (let column of this.treeConfigAll.tableColumn) {\n if (column.field == tableColumn.field) {\n add = false;\n break;\n }\n }\n if (add) {\n this.treeConfigAll.tableColumn.push(tableColumn);\n }\n }\n },\n setFieldConfig(filedConf) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.post)(this.http, '/online/getTableSetFiled', {\n sql: this.treeConfigAll.treeConfig.executeSql,\n where: this.treeConfigAll.treeConfig.where,\n dbName: this.treeConfigAll.treeConfig.dbName,\n uuid: this.treeConfigAll.treeConfig.uuid\n }, undefined, false).then(data => {\n this.setFormTable(data.data);\n if (filedConf) {\n this.$refs.filedConfig.init(this.treeConfigAll.treeConfig.table);\n }\n });\n },\n setFormTable(data) {\n let tableNames = this.getTableNamesByFormSql();\n let tables = [];\n for (const key of Object.keys(data)) {\n let table = {\n index: 't1',\n type: '主表',\n joinTable: key,\n joinFiled: '/',\n deleteWhere: '',\n columnList: [],\n tableComment: this.getTableComment(key)\n };\n table.columnList = Object.values(data[key]);\n tables.push(table);\n }\n this.treeConfigAll.treeConfig.table = [];\n for (let i = 0; i < tableNames.length; i++) {\n const tableName = tableNames[i];\n for (const table of tables) {\n if (tableName.includes(table.joinTable)) {\n if (i == 0) {\n table.deleteWhere = 'id=${id}';\n table.mainTable = table.joinTable;\n }\n if (i != 0) {\n table.index = 't' + (i + 1);\n table.type = 'join';\n let joinFiled = tableName.substring(tableName.indexOf('on') + 2).replace(/[\\n\\t\\s]+/g, '');\n if (tableNames[i - 1].includes('left')) {\n table.type = 'left join';\n joinFiled = joinFiled.replace('left', '');\n }\n if (tableNames[i - 1].includes('right')) {\n table.type = 'right join';\n joinFiled = joinFiled.replace('right', '');\n }\n table.joinFiled = joinFiled;\n }\n this.treeConfigAll.treeConfig.table.push(table);\n break;\n }\n }\n }\n },\n getTableNamesByFormSql() {\n let formSql = this.treeConfigAll.treeConfig.executeSql.substring(this.treeConfigAll.treeConfig.executeSql.indexOf('from') + 4);\n let tableNames = [];\n for (const join of formSql.split('join')) {\n tableNames.push(join);\n }\n return tableNames;\n },\n getTableComment(key) {\n for (const item of this.treeConfigAll.dicData.joinTableDicData) {\n if (item.value == key) return item.label;\n }\n }\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/config-core-table.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
1315
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.find.js */ \"./node_modules/core-js/modules/es.iterator.find.js\");\n/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _views_table_add_or_edit_config_field_config_index_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/views/table/add-or-edit/config/field-config/index.vue */ \"./src/views/table/add-or-edit/config/field-config/index.vue\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _components_lazy_load_select_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/lazy-load-select.vue */ \"./src/components/lazy-load-select.vue\");\n\n\n\n\n\n\n\n\n\nconst msg = (0,_utils_message__WEBPACK_IMPORTED_MODULE_6__.useMessage)(); // 消息弹窗\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'configCoreTable',\n components: {\n LazyLoadSelect: _components_lazy_load_select_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n FieldConfig: _views_table_add_or_edit_config_field_config_index_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n },\n props: {\n item: {}\n },\n inject: ['treeConfigAll', 'syncFormConfig', 'http'],\n data() {\n return {\n data: [{\n index: \"t1\",\n type: \"主表\",\n joinTable: \"\",\n joinFiled: \"/\",\n deleteWhere: 'id=${id}'\n }],\n isHovering: false,\n dict: (0,_store_dict__WEBPACK_IMPORTED_MODULE_3__.storeDict)(),\n dicData: {\n joinFiledDicData: [],\n joinTableDicData: []\n },\n url: {\n joinTableUrl: '/online/getDBTableList/',\n columnsListUrl: '/online/getDBTableColumnList/'\n }\n };\n },\n created() {\n this.init();\n },\n methods: {\n init() {},\n formatType(value) {\n if (value === '1') {\n return '男';\n }\n if (value === '0') {\n return '女';\n }\n return value;\n },\n beforeEditMethod({\n rowIndex,\n columnIndex\n }) {\n if (rowIndex === 0 && (columnIndex === 3 || columnIndex === 5)) {\n return true;\n }\n return false;\n },\n cellMouseenter({\n row,\n column,\n $event,\n property,\n $index\n }) {\n console.log('cellMouseenter', row, column, $event, property, $index);\n this.isHovering = true;\n },\n async insertEvent(row) {\n const $table = this.$refs.tableRef;\n if ($table) {\n let record = {\n index: 't' + (this.data.length + 1),\n type: 'join',\n joinTable: '',\n joinFiled: 't' + this.data.length + '.=t' + (this.data.length + 1) + '.'\n };\n row = -1;\n const {\n row: newRow\n } = await $table.insertAt(record, row);\n this.data.push(record);\n await $table.setEditCell(newRow, 'name');\n $table.updateData();\n console.log('this.data:', this.data);\n }\n },\n removeEvent(row, index) {\n if (index == 0) {\n msg.error(\"主表不能删除!\");\n return;\n }\n this.setSql(index);\n },\n showAction(row) {\n this.isHovering = true;\n },\n hideAction() {\n this.isHovering = false;\n },\n handleClick(row) {\n // 处理按钮点击事件\n console.log('row:', row);\n },\n setFieldEvent(row, column, rowIndex) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.post)(this.http, '/online/getTableSetFiled', {\n sql: this.treeConfigAll.treeConfig.executeSql,\n definitionSql: this.treeConfigAll.treeConfig.dataSource,\n where: this.treeConfigAll.treeConfig.where,\n dbName: this.treeConfigAll.treeConfig.dbName,\n uuid: this.treeConfigAll.treeConfig.uuid\n }, undefined, false).then(data => {\n row.columnList = Object.values(data.data[row.joinTable]);\n this.$refs.filedConfig.init(row);\n });\n },\n filedConfigClose(data) {\n if (!data) return;\n for (let j = 0; j < this.treeConfigAll.treeConfig.table.length; j++) {\n let obj = this.treeConfigAll.treeConfig.table[j];\n if (Object.keys(data).includes(obj.index)) {\n this.treeConfigAll.treeConfig.table[j].columnList = data[obj.index];\n }\n }\n this.setSql();\n },\n setTable() {\n let promise = [];\n for (let i = 0; i < this.treeConfigAll.treeConfig.table.length; i++) {\n promise.push((0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.get)(this.http, this.url.columnsListUrl + this.treeConfigAll.treeConfig.dbName, {\n tableName: this.treeConfigAll.treeConfig.table[i].joinTable\n }));\n }\n Promise.all(promise).then(result => {\n for (let i = 0; i < result.length; i++) {\n this.treeConfigAll.treeConfig.table[i]['columnList'] = result[i];\n }\n this.setSql();\n });\n },\n setSql(index, seq) {\n if (seq != undefined && seq != 0) {\n let arr = this.treeConfigAll.treeConfig.table.find(item => {\n return item.index == seq;\n });\n if (!arr || !arr.joinTable) {\n return;\n }\n }\n if (index != undefined && index != 0) {\n this.treeConfigAll.treeConfig.table.splice(index, 1);\n }\n let sqlTableOn = this.treeConfigAll.treeConfig.table[0].joinTable + \" t1 \";\n let sqlFiled = \"\";\n let tableColumns = [];\n let sort = 0;\n for (let i = 0; i < this.treeConfigAll.treeConfig.table.length; i++) {\n if (i === index) {\n continue;\n }\n let obj = this.treeConfigAll.treeConfig.table[i];\n for (let j = 0; j < obj.columnList.length; j++) {\n let column = obj.columnList[j];\n if (column.checked == 0) {\n continue;\n }\n if (sqlFiled.length != 0) {\n sqlFiled += \",\";\n }\n sort++;\n sqlFiled += obj.index + \".\" + column.column_name + \" AS \" + column.column_name;\n let column_name = column.column_name;\n let column_comment = column.column_comment ? column.column_comment : column_name;\n tableColumns.push({\n sort: sort,\n tableField: column_name,\n field: column_name,\n title: column_comment,\n label: column_comment,\n visible: column.visible,\n display: 1,\n asName: column_name\n });\n }\n if (i != 0) {\n sqlTableOn += \" \" + obj.type + \" \" + obj.joinTable + \" \" + obj.index + \" on \" + obj.joinFiled;\n }\n }\n // 新增字段\n this.addColumn(tableColumns);\n // 删除字段\n this.removeColumn(tableColumns);\n this.treeConfigAll.treeConfig.executeSql = \"select \" + sqlFiled + \" from \" + sqlTableOn;\n this.syncFormConfig();\n },\n removeColumn(tableColumns) {\n for (let i = 0; i < this.treeConfigAll.tableColumn.length; i++) {\n let remove = true;\n for (let tableColumn of tableColumns) {\n if (this.treeConfigAll.tableColumn[i].field == tableColumn.field) {\n remove = false;\n break;\n }\n }\n if (remove) {\n this.treeConfigAll.tableColumn.splice(i, 1);\n }\n }\n },\n addColumn(tableColumns) {\n for (let tableColumn of tableColumns) {\n let add = true;\n for (let column of this.treeConfigAll.tableColumn) {\n if (column.field == tableColumn.field) {\n add = false;\n break;\n }\n }\n if (add) {\n this.treeConfigAll.tableColumn.push(tableColumn);\n }\n }\n },\n setFieldConfig(filedConf) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.post)(this.http, '/online/getTableSetFiled', {\n sql: this.treeConfigAll.treeConfig.executeSql,\n definitionSql: this.treeConfigAll.treeConfig.dataSource,\n where: this.treeConfigAll.treeConfig.where,\n dbName: this.treeConfigAll.treeConfig.dbName,\n uuid: this.treeConfigAll.treeConfig.uuid\n }, undefined, false).then(data => {\n this.setFormTable(data.data);\n if (filedConf) {\n this.$refs.filedConfig.init(this.treeConfigAll.treeConfig.table);\n }\n });\n },\n setFormTable(data) {\n let tableNames = this.getTableNamesByFormSql();\n let tables = [];\n for (const key of Object.keys(data)) {\n let table = {\n index: 't1',\n type: '主表',\n joinTable: key,\n joinFiled: '/',\n deleteWhere: '',\n columnList: [],\n tableComment: this.getTableComment(key)\n };\n table.columnList = Object.values(data[key]);\n tables.push(table);\n }\n this.treeConfigAll.treeConfig.table = [];\n for (let i = 0; i < tableNames.length; i++) {\n const tableName = tableNames[i];\n for (const table of tables) {\n if (tableName.includes(table.joinTable)) {\n if (i == 0) {\n table.deleteWhere = 'id=${id}';\n table.mainTable = table.joinTable;\n }\n if (i != 0) {\n table.index = 't' + (i + 1);\n table.type = 'join';\n let joinFiled = tableName.substring(tableName.indexOf('on') + 2).replace(/[\\n\\t\\s]+/g, '');\n if (tableNames[i - 1].includes('left')) {\n table.type = 'left join';\n joinFiled = joinFiled.replace('left', '');\n }\n if (tableNames[i - 1].includes('right')) {\n table.type = 'right join';\n joinFiled = joinFiled.replace('right', '');\n }\n table.joinFiled = joinFiled;\n }\n this.treeConfigAll.treeConfig.table.push(table);\n break;\n }\n }\n }\n },\n getTableNamesByFormSql() {\n let formSql = this.treeConfigAll.treeConfig.executeSql.substring(this.treeConfigAll.treeConfig.executeSql.indexOf('from') + 4);\n let tableNames = [];\n for (const join of formSql.split('join')) {\n tableNames.push(join);\n }\n return tableNames;\n },\n remoteMethod() {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_4__.get)(this.http, \"/online/getDBTableList\", {\n dbName: this.treeConfigAll.treeConfig.dbName\n }).then(data => {\n this.treeConfigAll.dicData.joinTableDicData = data;\n });\n },\n getTableComment(key) {\n for (const item of this.treeConfigAll.dicData.joinTableDicData) {\n if (item.value == key) return item.label;\n }\n }\n },\n mounted() {\n this.remoteMethod();\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/config-core-table.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
1316
1316
|
|
|
1317
1317
|
/***/ }),
|
|
1318
1318
|
|
|
@@ -1327,17 +1327,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core
|
|
|
1327
1327
|
|
|
1328
1328
|
/***/ }),
|
|
1329
1329
|
|
|
1330
|
-
/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=script&lang=js":
|
|
1331
|
-
/*!**************************************************************************************************************************************************************************************************************!*\
|
|
1332
|
-
!*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=script&lang=js ***!
|
|
1333
|
-
\**************************************************************************************************************************************************************************************************************/
|
|
1334
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1335
|
-
|
|
1336
|
-
"use strict";
|
|
1337
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _components_table_ol_form__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/table/ol-form */ \"./src/components/table/ol-form/index.vue\");\n/* harmony import */ var _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @element-plus/icons-vue */ \"@element-plus/icons-vue\");\n/* harmony import */ var _element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_element_plus_icons_vue__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _components_v_component_index_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/v-component/index.vue */ \"./src/components/v-component/index.vue\");\n/* harmony import */ var vue_codemirror__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vue-codemirror */ \"./node_modules/vue-codemirror/dist/vue-codemirror.esm.js\");\n/* harmony import */ var _codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @codemirror/lang-javascript */ \"./node_modules/@codemirror/lang-javascript/dist/index.js\");\n/* harmony import */ var _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @codemirror/theme-one-dark */ \"./node_modules/@codemirror/theme-one-dark/dist/index.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var sortablejs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! sortablejs */ \"./node_modules/sortablejs/modular/sortable.esm.js\");\n/* harmony import */ var _store_dictType__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/store/dictType */ \"./src/store/dictType.js\");\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_14__);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'FormConfig',\n components: {},\n props: {\n type: {}\n },\n inject: ['treeConfigAll', 'addOrEditRootData', 'http'],\n data() {\n return {\n data: [{\n index: \"t1\",\n type: \"主表\",\n joinTable: \"\",\n joinFiled: \"/\",\n deleteWhere: 'id=${id}'\n }],\n isHovering: false,\n dict: (0,_store_dict__WEBPACK_IMPORTED_MODULE_13__.storeDict)(),\n dictType: (0,_store_dictType__WEBPACK_IMPORTED_MODULE_12__.storeDictType)(),\n customUrl: '',\n vexGridRef: '',\n vFormViewer: '',\n dialogTableVisible: false,\n events: ['change'],\n // 基础表单\n baseOption: {\n submitBtn: false,\n emptyBtn: false,\n labelWidth: 125,\n column: []\n },\n //编码设计\n codeForm: {},\n form: {\n updateKey: '',\n saveUrl: ''\n },\n state: {\n show: false,\n extensions: [(0,_codemirror_lang_javascript__WEBPACK_IMPORTED_MODULE_15__.javascript)(), _codemirror_theme_one_dark__WEBPACK_IMPORTED_MODULE_16__.oneDark],\n values: null,\n err: false,\n baseForm: {},\n baseFormRender: {}\n },\n formMap: {},\n update: true,\n //表单类型\n formType: 0,\n //表单设计\n formConfig: 0,\n //快捷设计表单\n designForm: {\n span: 2\n },\n //快捷设计表格\n gridOptions: {\n border: true,\n resizable: true,\n showOverflow: true,\n height: 400,\n columns: [{\n type: \"expand\",\n width: 61,\n title: \"序号\",\n fixed: \"left\",\n slots: {\n content: 'content',\n default: 'seq'\n }\n }, {\n field: 'prop',\n width: 80,\n className: 'move',\n title: \"字段名\"\n }, {\n title: '必填',\n field: 'required',\n params: {\n all: null\n },\n slots: {\n header: 'checkedBox_header',\n default: 'checkedBox_default'\n }\n }, {\n field: 'title',\n title: \"标题\"\n }, {\n field: 'showName',\n title: \"label\",\n slots: {\n default: 'input_default'\n }\n }, {\n title: '控件类型',\n field: 'selectDom',\n width: 200,\n slots: {\n default: 'select_default'\n }\n }, {\n title: '更新回调',\n field: 'change',\n width: 100,\n slots: {\n default: 'change'\n }\n }, {\n title: '操作',\n width: 60,\n fixed: 'right',\n slots: {\n default: 'operate'\n }\n }],\n data: []\n },\n //展开行表单\n expandForm: {\n submitBtn: false,\n emptyBtn: false,\n span: 8,\n column: [{\n label: '禁用',\n prop: 'disabled',\n type: 'switch',\n dicData: [{\n label: '关',\n value: 0\n }, {\n label: '开',\n value: 1\n }]\n }, {\n label: '标题宽度',\n prop: 'labelWidth'\n }, {\n label: '数据字典',\n prop: 'dictCode',\n type: 'select',\n allowCreate: true,\n filterable: true,\n //数据字典属性的配置对象\n props: {\n label: 'dictLabel',\n value: 'dictValue'\n },\n dicData: []\n }, {\n label: '默认值',\n prop: 'value'\n }, {\n label: '输入框提示',\n prop: 'placeholder'\n }, {\n label: '数据字典表',\n prop: 'dictTable'\n }]\n },\n //自定义表单值\n formJson: {},\n formData: {},\n formKey: 0,\n optionData: {},\n vFormRef: null,\n customForm: \"\",\n customOptions: []\n };\n },\n created() {\n this.initConfigDict();\n },\n methods: {\n initConfigDict() {\n for (const col of this.expandForm.column) {\n if (col.prop == 'dictCode') {\n col.dicData = this.dictType.val();\n break;\n }\n }\n },\n showViewForm() {\n this.dialogTableVisible = true;\n this.$nextTick(() => {\n let data = {\n type: this.formType,\n title: \"新增\",\n theme: 't1'\n };\n data.form = data.type == 0 ? this.baseOption : this.formJson;\n this.$ref.vFormViewer.init(data);\n });\n },\n //表头全选框更新\n headerClick(column) {\n this.gridOptions.data.forEach(item => {\n if (column.params.all) {\n item.rules = [{\n required: true,\n message: '请输入' + item.title,\n trigger: 'blur'\n }];\n item[column.field] = '1';\n } else {\n item[column.field] = '0';\n item.rules = null;\n }\n this.checkBoxChange(item);\n });\n },\n //表格多选框更新\n checkBoxClick(column, row) {\n if (row.required == '1') {\n row.rules = [{\n required: true,\n message: '请输入' + row.title,\n trigger: 'blur'\n }];\n }\n if (row.required == '0') {\n row.rules = null;\n }\n this.checkBoxChange(row);\n },\n checkBoxChange(row) {\n this.$nextTick(() => {\n this.baseOption.column.forEach(item => {\n if (item.prop == row.prop) {\n item.rules = row.rules;\n this.codeForm = this.jsonFormat(this.baseOption);\n return;\n }\n });\n });\n },\n //获取数据\n setData(data) {\n if (!data) return;\n this.formType = parseInt(data.formMain.designer);\n this.form.updateKey = data.formMain.updateKey;\n this.form.saveUrl = data.formMain.saveUrl;\n this.customForm = data.formMain.customForm;\n //基础表单\n //JSON字符串\n if (data.formJson.optionJson) {\n this.codeForm = data.formJson.optionJson;\n this.codeToData();\n }\n if (data.formJson.customJson) {\n //自定义表单\n this.formJson = JSON.parse(data.formJson.customJson);\n }\n },\n codeToData() {\n try {\n this.getFormatter();\n let value = JSON.parse(this.codeForm);\n this.setSort(value);\n this.codeForm = this.jsonFormat(value);\n //更新快捷设计表格的数据\n this.setTableData(value);\n if (!value.labelWidth) value.labelWidth = 125;\n this.baseOption = value;\n this.setBaseOption(value.column);\n value.span = value.span ? value.span : 12;\n //计算表单每行个数\n this.designForm.span = this.parseInt(24 / value.span);\n } catch (e) {\n console.error(e);\n const msg = (0,_utils_message__WEBPACK_IMPORTED_MODULE_9__.useMessage)(); // 消息弹窗\n msg.error('生成失败,请检查对象格式是否正确' + e);\n }\n },\n getFormatter() {\n //正则表达式替换字符串的值\n let v = this.codeForm.replace(/,}/gi, \"}\").replace(/,]/gi, \"]\");\n this.codeForm = JSON.stringify(JSON.parse(v), null, 4);\n },\n setSort(value) {\n value.column.sort((a, b) => {\n return a.sort - b.sort;\n });\n for (let i = 0; i < value.column.length; i++) {\n value.column.sort = i + 1;\n }\n },\n //JSON格式化\n jsonFormat(val) {\n return JSON.stringify(JSON.parse(JSON.stringify(val)), null, 4);\n },\n //编码设计生成后更新快捷设计表格数据\n setTableData(value) {\n let data = [];\n for (let item of value.column) {\n let tableObj = this.getTableObject(item);\n data.push(tableObj);\n }\n this.$nextTick(() => {\n this.gridOptions.data = data;\n });\n },\n setBaseOption(columns) {\n columns = JSON.parse(JSON.stringify(columns));\n for (let column of columns) {\n try {\n if (column.disabled == 1) {\n column.disabled = true;\n }\n this.setEvents(column);\n this.setDictCode(column);\n } catch (e) {\n console.error(e);\n }\n }\n this.baseOption.column = columns;\n },\n setDictCode(column) {\n if (column.selectDom != 1 && column.dictCode) {\n this.getDicData(column.dictCode, column);\n }\n },\n setEvents(column) {\n for (let event of this.events) {\n if (column[event] != undefined && column[event] != '') {\n try {\n column[event] = eval(\"(params)=>{try{\" + this.replaceDollarBraces(column[event]) + \"}catch (e) {}}\");\n } catch (e) {\n console.error(e);\n }\n } else {\n delete column[event];\n }\n }\n },\n replaceDollarBraces(str) {\n return str.replace(/\\$\\{?([^{}]+)\\}?/g, function (match, innerContent) {\n return innerContent ? `'${innerContent}'` : match;\n });\n },\n getTableObject(item) {\n let obj = {\n prop: item.prop || item.field,\n title: item.title || item.label,\n showName: item.title ? item.label : \"\",\n required: item.rules ? '1' : '0',\n change: item.change ? item.change : null,\n selectDom: this.getFormType({\n selectDom: item.type ? item.type : 'input'\n }),\n //有字典值则赋值否则为空对象\n form: {}\n };\n for (let key of Object.keys(item)) {\n if (!obj[key]) {\n obj.form[key] = item[key];\n }\n }\n return obj;\n },\n //控件类型转换\n getFormType(row) {\n let val = row.selectDom;\n if (val != '' || val != undefined || val) {\n let type = \"\";\n let map = {\n input: '1',\n select: '2',\n time: '3',\n radio: '4',\n checkbox: '5',\n date: '6',\n number: '7'\n };\n if (isNaN(val)) {\n //不是数字,通过健找值\n type = map[val];\n } else {\n //是数字,通过值找健\n // 使用 Object.values() 获取对象的所有值\n const arr = Object.values(map);\n // 使用 Array.prototype.indexOf() 查找指定值在数组中的索引位置\n const index = arr.indexOf(val);\n // 使用 Object.keys()[index] 获取对应索引位置的键名\n type = Object.keys(map)[index];\n if (type == \"\") {\n type = 'input';\n } else if (type == \"select\" || type == \"checkbox\" || type == \"radio\") {\n this.getDicData(row.dictCode, row);\n }\n }\n return type;\n }\n },\n //获取字典\n getDicData(code, row) {\n if (code == \"\" || !code) {\n delete row.dicData;\n } else {\n row.dicData = this.dict.val(code);\n this.setDicData(row);\n }\n },\n setDicData(row) {\n this.baseOption.column.forEach(item => {\n if (item.prop == row.prop) {\n item.dicData = row.dicData;\n return;\n }\n });\n },\n //初始化数据\n init(data) {\n //基础表单\n const option = {\n submitBtn: false,\n emptyBtn: false,\n span: 12,\n labelWidth: 80,\n column: []\n };\n //快捷设计表格\n const tableData = [];\n let index = 0;\n\n //将列配置的新增赋值到表单和表格中\n data.forEach(item => {\n if (item[this.type + 'Display'] == 1) {\n const formObj = {\n label: item.label,\n prop: item.field,\n sort: index,\n type: this.getFormType(item)\n };\n const tableObj = {\n prop: item.field,\n title: item.title,\n sort: index,\n //为空默认文本框\n selectDom: item.selectDom ? item.selectDom : 1,\n required: item.required,\n //有字典值则赋值否则为空对象\n form: {}\n };\n if (item.dictCode != '' || item.dictCode != null) {\n tableObj.form = {\n dictCode: item.dictCode\n };\n }\n if (item.dictTable != '' || item.dictTable != null) {\n tableObj.form = {\n dictTable: item.dictTable\n };\n }\n for (let key of Object.keys(item)) {\n if (!tableObj[key]) {\n tableObj.form[key] = item[key];\n }\n }\n for (let event of this.events) {\n if (item[event] != undefined && !(item[event] instanceof Function)) {\n formObj[event] = eval(\"(params)=>{\" + item[event] + \"}\");\n }\n }\n index++;\n option.column.push(formObj);\n tableData.push(tableObj);\n }\n });\n this.baseOption = option;\n this.gridOptions.data = tableData;\n //计算每行列数\n this.designForm.span = 24 / this.baseOption.span;\n this.codeForm = this.jsonFormat(this.baseOption);\n this.updateSort();\n },\n getColumn(item) {\n let obj = {\n prop: item.field,\n title: item.title || item.label,\n sort: this.gridOptions.data ? this.gridOptions.data.length : 0,\n //为空默认文本框\n selectDom: item.selectDom ? item.selectDom : 1,\n //有字典值则赋值否则为空对象\n form: item.dictCode != '' || item.dictCode ? {\n dictCode: item.dictCode\n } : {}\n };\n return obj;\n },\n //列配置新增多选更新\n updateData(row, column) {\n if (row[column.field] == '1') {\n for (const item of this.gridOptions.data) {\n if (item.prop == row.field) return;\n }\n let tableObj = this.getColumn(row);\n this.gridOptions.data.push(tableObj);\n } else {\n this.gridOptions.data = this.gridOptions.data.filter(item => item.prop != row.field);\n }\n this.reloadData();\n this.refreshForm();\n },\n reloadData(data) {\n if (data) {\n this.gridOptions.data = data;\n }\n this.$ref.vexGridRef.reloadData(this.gridOptions.data);\n },\n //列配置新增全选与全不选\n setAll({\n list,\n isAll\n }) {\n let data = [];\n if (isAll) {\n for (let item of list) {\n data.push(this.getColumn(item));\n }\n }\n this.reloadData(data);\n this.refreshForm();\n },\n //基础表单 > 快捷设计表单更新\n designFormChange() {\n //行数转换为尺寸\n this.baseOption.span = this.parseInt(24 / this.designForm.span);\n //JSON格式化\n this.codeForm = this.jsonFormat(this.baseOption);\n },\n codeMirrorChange(row) {\n for (const row of this.gridOptions.data) {\n this.setChange(row);\n }\n },\n setChange(row) {\n this.$nextTick(() => {\n if (row.prop && row.change) {\n for (let item of this.baseOption.column) {\n if (item.prop == row.prop) {\n item.change = row.change;\n }\n }\n }\n this.codeForm = this.jsonFormat(this.baseOption);\n });\n },\n //基础表单 > 快捷设计表格输入框更新\n inputChange(row) {\n this.$nextTick(() => {\n if (row.prop != \"\") {\n for (let item of this.baseOption.column) {\n if (item.prop == row.prop) {\n //将表格的label变成显示名或标题\n if (row.showName != \"\") {\n item.label = row.showName;\n item.title = row.title;\n } else {\n item.label = row.title;\n delete item.title;\n }\n }\n break;\n }\n }\n this.codeForm = this.jsonFormat(this.baseOption);\n });\n },\n //控件类型更新\n dictChange(row) {\n this.$nextTick(() => {\n this.baseOption.column.forEach(item => {\n if (item.prop == row.prop) {\n item.type = this.getFormType(row);\n this.codeForm = this.jsonFormat(this.baseOption);\n return;\n }\n });\n });\n },\n refreshForm() {\n if (this.update != true) {\n setTimeout(() => {\n this.refreshForm();\n }, 200);\n }\n this.update = false;\n let data = JSON.parse(JSON.stringify(this.gridOptions.data));\n let columns = [];\n let index = 1;\n for (let d of data) {\n d.sort = index;\n d.change = '';\n columns.push(this.dataToCode(d));\n index++;\n }\n columns.sort((a, b) => {\n return a.sort - b.sort;\n });\n this.setCodeForm(columns);\n this.setBaseOption(columns);\n this.update = true;\n },\n setCodeForm(columns) {\n let option = JSON.parse(JSON.stringify(this.baseOption));\n option.column = JSON.parse(JSON.stringify(columns));\n this.codeForm = this.jsonFormat(option);\n },\n dataToCode({\n form,\n prop,\n selectDom,\n title\n }) {\n let item = {\n prop: prop,\n selectDom: selectDom,\n label: form.showName ? form.showName : title\n };\n if (selectDom != 1) {\n item.type = this.getFormType({\n selectDom: selectDom\n });\n }\n for (let key of Object.keys(form)) {\n if (form[key] != undefined && form[key] != '' && key.indexOf('$') == -1) {\n item[key] = form[key];\n }\n }\n return item;\n },\n //表格拖动更新\n updateSort() {\n this.$nextTick(() => {\n //el绑定元素需要找到vxe的DOM下的tbody元素\n let $vxeGrid = this.$refs.vexGridRef;\n let that = this;\n sortablejs__WEBPACK_IMPORTED_MODULE_11__[\"default\"].create($vxeGrid.$el.querySelector('.body--wrapper>.vxe-table--body tbody'), {\n animation: 150,\n //拖拽动画过渡时间\n sort: true,\n handle: '.move',\n //必须设置该属性,属性值为你要拖动的该单元格的样式名\n // 元素被选中\n onStart: function (/**Event*/evt) {\n //关闭所有展开行\n $vxeGrid?.clearRowExpand();\n evt.oldIndex; // element index within parent\n },\n // 结束拖拽\n onEnd: function (/**Event*/{\n oldIndex,\n newIndex\n }) {\n const list = JSON.parse(JSON.stringify(that.gridOptions.data)); //保存旧数据\n const targetRow = list.splice(oldIndex, 1)[0]; //保存移动的元素并删除原列表中移动的元素\n list.splice(newIndex, 0, targetRow); //插入到目标新索引中\n const newsArr = JSON.parse(JSON.stringify(list)); //重新赋值数组\n //将新表格数据重新排序\n for (let i = 0; i < newsArr.length; i++) {\n newsArr[i].sort = i;\n }\n that.gridOptions.data = newsArr;\n //把表单的排序号和表格的排序号保持一致\n newsArr.forEach(tableItem => {\n that.baseOption.column.forEach(formItem => {\n if (tableItem.prop == formItem.prop) {\n formItem.sort = tableItem.sort;\n }\n });\n });\n //将表单重新排序\n that.baseOption.column.sort((a, b) => {\n return a.sort - b.sort;\n });\n that.codeForm = that.jsonFormat(that.baseOption);\n }\n });\n });\n },\n // 更换表单\n onChangeForm(value) {\n if (value) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_10__.get)(this.http, \"/online/formDesigner/queryById\", {\n id: value\n }).then(data => {\n this.formJson = JSON.parse(data.formJson);\n this.formKey++;\n });\n }\n },\n // 获取新增表单配置数据\n getData() {\n if (this.formType == 0 && this.gridOptions.data.length == 0) {\n return undefined;\n }\n let obj = {\n vexTable: this.gridOptions,\n baseForm: this.baseOption,\n codeForm: this.codeForm,\n designer: this.formType,\n updateKey: this.form.updateKey,\n saveUrl: this.form.saveUrl,\n customJson: this.formJson,\n customForm: this.customForm\n };\n return obj;\n },\n /**\r\n * 右边字段配置删除行数据\r\n * @param row\r\n * @returns {Promise<void>}\r\n */\n async removeRowEvent(row) {\n const type = await vxe_table__WEBPACK_IMPORTED_MODULE_14___default().modal.confirm('您确定要删除该数据?');\n const $grid = this.$ref.vexGridRef;\n if ($grid && type === 'confirm') {\n await $grid.remove(row);\n this.gridOptions.data = this.gridOptions.data.filter(item => item._X_ROW_KEY != row._X_ROW_KEY);\n this.removeColumnEvent(row);\n }\n },\n /**\r\n * 删除表单属性(快捷设计属性)\r\n * @param row\r\n */\n removeColumnEvent(row) {\n this.baseOption.column = this.baseOption.column.filter(item => item.prop != row.prop);\n this.codeForm = this.jsonFormat(this.baseOption);\n }\n },\n mounted() {\n this.updateSort();\n }\n});\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
1338
|
-
|
|
1339
|
-
/***/ }),
|
|
1340
|
-
|
|
1341
1330
|
/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/index.vue?vue&type=script&lang=js":
|
|
1342
1331
|
/*!***************************************************************************************************************************************************************************************!*\
|
|
1343
1332
|
!*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/index.vue?vue&type=script&lang=js ***!
|
|
@@ -1664,7 +1653,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
1664
1653
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1665
1654
|
|
|
1666
1655
|
"use strict";
|
|
1667
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ol_table_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"ol-table-select\");\n const _component_IconSelect = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"IconSelect\");\n const _component_FileUpload = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"FileUpload\");\n const _component_avue_form = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"avue-form\");\n const _component_VFormRender = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"VFormRender\");\n const _component_el_scrollbar = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-scrollbar\");\n const _component_el_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-button\");\n const _component_el_dialog = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-dialog\");\n const _directive_loading = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDirective)(\"loading\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [$props.isDialog === true && $data.state.isDialog === true ? (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)(((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_dialog, {\n key: 0,\n modelValue: $data.state.dialogVisible,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => $data.state.dialogVisible = $event),\n title: $data.state.title,\n \"align-center\": \"\",\n \"destroy-on-close\": \"\",\n width: $data.state.width,\n \"close-on-click-modal\": false\n }, {\n footer: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n onClick: _cache[1] || (_cache[1] = $event => {\n $data.state.dialogVisible = false;\n })\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[5] || (_cache[5] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"返 回\")])),\n _: 1 /* STABLE */,\n __: [5]\n }), $data.show ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_button, {\n key: 0,\n type: \"primary\",\n loading: $data.state.loading,\n onClick: $options.doSave\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[6] || (_cache[6] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"保 存\")])),\n _: 1 /* STABLE */,\n __: [6]\n }, 8 /* PROPS */, [\"loading\", \"onClick\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_scrollbar, {\n \"max-height\": $data.state.maxHeight,\n style: {\n \"padding-right\": \"10px\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [$data.state.type == '0' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_avue_form, {\n key: $data.state.key,\n ref: \"formRef\",\n option: $data.form,\n modelValue: $data.formData,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => $data.formData = $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($data.dynamicSlotsTable, slotRow => {\n return {\n name: slotRow.slotName,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n disabled,\n size\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 根据配置动态渲染插槽内容 \"), slotRow.type == '22' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_ol_table_select, {\n key: 0,\n onOlTableSelectChange: $options.olTableSelectChange,\n slotName: slotRow.slotName,\n http: $options.http,\n defaultValue: $data.formData[slotRow.slotName],\n uuid: slotRow.config.uuid,\n disabled: disabled,\n size: size,\n config: slotRow.config\n }, null, 8 /* PROPS */, [\"onOlTableSelectChange\", \"slotName\", \"http\", \"defaultValue\", \"uuid\", \"disabled\", \"size\", \"config\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type == '21' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_IconSelect, {\n key: 1,\n modelValue: $data.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => $data.formData[slotRow.slotName] = $event,\n clearable: \"\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type === '20' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_FileUpload, {\n key: 2,\n modelValue: $data.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => $data.formData[slotRow.slotName] = $event,\n limit: 1,\n onEmits: eventData => $options.handleEmits(eventData, slotRow.slotName)\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onEmits\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"option\", \"modelValue\"])) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_VFormRender, {\n key: 1,\n \"form-json\": $data.form,\n \"form-data\": $data.formData,\n \"option-data\": $data.optionData,\n ref: \"formRef\"\n }, null, 8 /* PROPS */, [\"form-json\", \"form-data\", \"option-data\"]))]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"max-height\"])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\", \"title\", \"width\"])), [[_directive_loading, $data.state.loading]]) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_scrollbar, {\n key: 1,\n modelValue: $data.state.dialogVisible,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => $data.state.dialogVisible = $event),\n \"max-height\": $data.state.maxHeight\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [$data.state.type == '0' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_avue_form, {\n key: $data.state.key,\n ref: \"formRef\",\n option: $data.form,\n modelValue: $data.formData,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => $data.formData = $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($data.dynamicSlotsTable, slotRow => {\n return {\n name: slotRow.slotName,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n disabled,\n size\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 根据配置动态渲染插槽内容 \"), slotRow.type == '22' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_ol_table_select, {\n key: 0,\n onOlTableSelectChange: $options.olTableSelectChange,\n slotName: slotRow.slotName,\n http: $options.http,\n defaultValue: $data.formData[slotRow.slotName],\n uuid: slotRow.config.uuid,\n disabled: disabled,\n size: size,\n config: slotRow.config\n }, null, 8 /* PROPS */, [\"onOlTableSelectChange\", \"slotName\", \"http\", \"defaultValue\", \"uuid\", \"disabled\", \"size\", \"config\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type == '21' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_IconSelect, {\n key: 1,\n modelValue: $data.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => $data.formData[slotRow.slotName] = $event,\n clearable: \"\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type === '20' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_FileUpload, {\n key: 2,\n modelValue: $data.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => $data.formData[slotRow.slotName] = $event,\n limit: 1,\n onEmits: _ctx.emits\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onEmits\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"option\", \"modelValue\"])) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_VFormRender, {\n key: 1,\n \"form-json\": $data.form,\n \"form-data\": $data.formData,\n \"option-data\": $data.optionData,\n ref: \"formRef\"\n }, null, 8 /* PROPS */, [\"form-json\", \"form-data\", \"option-data\"]))]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\", \"max-height\"]))]);\n}\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-form/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
1656
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ol_table_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"ol-table-select\");\n const _component_IconSelect = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"IconSelect\");\n const _component_FileUpload = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"FileUpload\");\n const _component_avue_form = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"avue-form\");\n const _component_VFormRender = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"VFormRender\");\n const _component_el_scrollbar = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-scrollbar\");\n const _component_el_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-button\");\n const _component_el_dialog = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-dialog\");\n const _directive_loading = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDirective)(\"loading\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [_ctx.isDialog === true && _ctx.state.isDialog === true ? (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)(((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_dialog, {\n key: 0,\n modelValue: _ctx.state.dialogVisible,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => _ctx.state.dialogVisible = $event),\n title: _ctx.state.title,\n \"align-center\": \"\",\n \"destroy-on-close\": \"\",\n width: _ctx.state.width,\n \"close-on-click-modal\": false\n }, {\n footer: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n onClick: _cache[1] || (_cache[1] = $event => {\n _ctx.state.dialogVisible = false;\n })\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[5] || (_cache[5] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"返 回\")])),\n _: 1 /* STABLE */,\n __: [5]\n }), _ctx.show ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_button, {\n key: 0,\n type: \"primary\",\n loading: _ctx.state.loading,\n onClick: _ctx.doSave\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[6] || (_cache[6] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"保 存\")])),\n _: 1 /* STABLE */,\n __: [6]\n }, 8 /* PROPS */, [\"loading\", \"onClick\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_scrollbar, {\n \"max-height\": _ctx.state.maxHeight,\n style: {\n \"padding-right\": \"10px\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [_ctx.state.type == '0' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_avue_form, {\n key: _ctx.state.key,\n ref: \"formRef\",\n option: _ctx.form,\n modelValue: _ctx.formData,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => _ctx.formData = $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.dynamicSlotsTable, slotRow => {\n return {\n name: slotRow.slotName,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n disabled,\n size\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 根据配置动态渲染插槽内容 \"), slotRow.type == '22' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_ol_table_select, {\n key: 0,\n onOlTableSelectChange: _ctx.olTableSelectChange,\n slotName: slotRow.slotName,\n http: _ctx.http,\n defaultValue: _ctx.formData[slotRow.slotName],\n uuid: slotRow.config.uuid,\n disabled: disabled,\n size: size,\n config: slotRow.config\n }, null, 8 /* PROPS */, [\"onOlTableSelectChange\", \"slotName\", \"http\", \"defaultValue\", \"uuid\", \"disabled\", \"size\", \"config\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type == '21' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_IconSelect, {\n key: 1,\n modelValue: _ctx.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => _ctx.formData[slotRow.slotName] = $event,\n clearable: \"\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type === '20' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_FileUpload, {\n key: 2,\n modelValue: _ctx.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => _ctx.formData[slotRow.slotName] = $event,\n limit: 1,\n onEmits: eventData => _ctx.handleEmits(eventData, slotRow.slotName)\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onEmits\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"option\", \"modelValue\"])) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_VFormRender, {\n key: 1,\n \"form-json\": _ctx.form,\n \"form-data\": _ctx.formData,\n \"option-data\": _ctx.optionData,\n ref: \"formRef\"\n }, null, 8 /* PROPS */, [\"form-json\", \"form-data\", \"option-data\"]))]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"max-height\"])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\", \"title\", \"width\"])), [[_directive_loading, _ctx.state.loading]]) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_scrollbar, {\n key: 1,\n modelValue: _ctx.state.dialogVisible,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => _ctx.state.dialogVisible = $event),\n \"max-height\": _ctx.state.maxHeight\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [_ctx.state.type == '0' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_avue_form, {\n key: _ctx.state.key,\n ref: \"formRef\",\n option: _ctx.form,\n modelValue: _ctx.formData,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => _ctx.formData = $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.dynamicSlotsTable, slotRow => {\n return {\n name: slotRow.slotName,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n disabled,\n size\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 根据配置动态渲染插槽内容 \"), slotRow.type == '22' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_ol_table_select, {\n key: 0,\n onOlTableSelectChange: _ctx.olTableSelectChange,\n slotName: slotRow.slotName,\n http: _ctx.http,\n defaultValue: _ctx.formData[slotRow.slotName],\n uuid: slotRow.config.uuid,\n disabled: disabled,\n size: size,\n config: slotRow.config\n }, null, 8 /* PROPS */, [\"onOlTableSelectChange\", \"slotName\", \"http\", \"defaultValue\", \"uuid\", \"disabled\", \"size\", \"config\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type == '21' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_IconSelect, {\n key: 1,\n modelValue: _ctx.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => _ctx.formData[slotRow.slotName] = $event,\n clearable: \"\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type === '20' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_FileUpload, {\n key: 2,\n modelValue: _ctx.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => _ctx.formData[slotRow.slotName] = $event,\n limit: 1,\n onEmits: _ctx.emits\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onEmits\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"option\", \"modelValue\"])) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_VFormRender, {\n key: 1,\n \"form-json\": _ctx.form,\n \"form-data\": _ctx.formData,\n \"option-data\": _ctx.optionData,\n ref: \"formRef\"\n }, null, 8 /* PROPS */, [\"form-json\", \"form-data\", \"option-data\"]))]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\", \"max-height\"]))]);\n}\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-form/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
1668
1657
|
|
|
1669
1658
|
/***/ }),
|
|
1670
1659
|
|
|
@@ -1675,7 +1664,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
1675
1664
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1676
1665
|
|
|
1677
1666
|
"use strict";
|
|
1678
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nconst _hoisted_1 = {\n style: {\n \"padding-right\": \"10px\",\n \"height\": \"86vh\"\n }\n};\nconst _hoisted_2 = {\n class: \"footer-container\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ol_table_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"ol-table-select\");\n const _component_IconSelect = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"IconSelect\");\n const _component_avue_form = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"avue-form\");\n const _component_model_index = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"model-index\");\n const _component_el_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-button\");\n const _component_el_row = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-row\");\n const _component_el_dialog = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-dialog\");\n const _directive_loading = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDirective)(\"loading\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)(((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_dialog, {\n modelValue:
|
|
1667
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nconst _hoisted_1 = {\n style: {\n \"padding-right\": \"10px\",\n \"height\": \"86vh\"\n }\n};\nconst _hoisted_2 = {\n class: \"footer-container\"\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_ol_table_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"ol-table-select\");\n const _component_IconSelect = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"IconSelect\");\n const _component_avue_form = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"avue-form\");\n const _component_model_index = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"model-index\");\n const _component_el_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-button\");\n const _component_el_row = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-row\");\n const _component_el_dialog = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-dialog\");\n const _directive_loading = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDirective)(\"loading\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)(((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_dialog, {\n modelValue: _ctx.state.dialogVisible,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => _ctx.state.dialogVisible = $event),\n title: _ctx.state.title,\n \"align-center\": \"\",\n \"destroy-on-close\": \"\",\n fullscreen: \"\",\n \"close-on-click-modal\": false\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_1, [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_avue_form, {\n key: _ctx.state.key,\n ref: \"formRef\",\n option: _ctx.form,\n modelValue: _ctx.formData,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => _ctx.formData = $event)\n }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createSlots)({\n _: 2 /* DYNAMIC */\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)(_ctx.dynamicSlotsTable, slotRow => {\n return {\n name: slotRow.slotName,\n fn: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n disabled,\n size\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 根据配置动态渲染插槽内容 \"), slotRow.type == '22' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_ol_table_select, {\n key: 0,\n onOlTableSelectChange: $options.olTableSelectChange,\n slotName: slotRow.slotName,\n http: _ctx.http,\n defaultValue: _ctx.formData[slotRow.slotName],\n uuid: slotRow.config.uuid,\n disabled: disabled,\n size: size,\n config: slotRow.config\n }, null, 8 /* PROPS */, [\"onOlTableSelectChange\", \"slotName\", \"http\", \"defaultValue\", \"uuid\", \"disabled\", \"size\", \"config\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), slotRow.type == '21' ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_IconSelect, {\n key: 1,\n modelValue: _ctx.formData[slotRow.slotName],\n \"onUpdate:modelValue\": $event => _ctx.formData[slotRow.slotName] = $event,\n clearable: \"\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)])\n };\n })]), 1032 /* PROPS, DYNAMIC_SLOTS */, [\"option\", \"modelValue\"])), _ctx.state.uuid ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_model_index, {\n key: 0,\n ref: \"subTable\",\n uuid: _ctx.state.uuid,\n http: $options.https,\n onInitOk: $options.ok\n }, null, 8 /* PROPS */, [\"uuid\", \"http\", \"onInitOk\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_row, {\n style: {\n \"height\": \"50px\",\n \"padding\": \"10px 20px 0 0\",\n \"border-top\": \"1px solid #e8eaec\",\n \"background\": \"white\",\n \"justify-content\": \"right\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n onClick: _cache[1] || (_cache[1] = $event => {\n _ctx.state.dialogVisible = false;\n })\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[3] || (_cache[3] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"返 回\")])),\n _: 1 /* STABLE */,\n __: [3]\n }), _ctx.show ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_button, {\n key: 0,\n type: \"primary\",\n loading: _ctx.state.loading,\n onClick: _ctx.doSave\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[4] || (_cache[4] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"保 存\")])),\n _: 1 /* STABLE */,\n __: [4]\n }, 8 /* PROPS */, [\"loading\", \"onClick\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 1 /* STABLE */\n })])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\", \"title\"])), [[_directive_loading, _ctx.state.loading]]);\n}\n\n//# sourceURL=webpack://olp-table/./src/components/table/ol-main-form-sub-table/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
1679
1668
|
|
|
1680
1669
|
/***/ }),
|
|
1681
1670
|
|
|
@@ -2379,7 +2368,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
2379
2368
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
2380
2369
|
|
|
2381
2370
|
"use strict";
|
|
2382
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nconst _hoisted_1 = {\n style: {\n \"padding\": \"0px\",\n \"flex\": \"1\"\n }\n};\nconst _hoisted_2 = {\n key: 1\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_vxe_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-button\");\n const _component_vxe_column = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-column\");\n const _component_vxe_option = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-option\");\n const _component_vxe_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-select\");\n const _component_vxe_input = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-input\");\n const _component_vxe_table = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-table\");\n const _component_field_config = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"field-config\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_table, {\n \"min-height\": \"100px\",\n border: \"\",\n \"max-height\": \"170px\",\n data: this.treeConfigAll.treeConfig.table,\n stripe: true,\n align: \"center\",\n size: \"small\",\n ref: \"tableRef\",\n onMouseover: _cache[0] || (_cache[0] = $event => $options.showAction()),\n onMouseleave: _cache[1] || (_cache[1] = $event => $options.hideAction()),\n \"row-config\": {\n height: 50\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n type: \"seq\",\n width: \"50\"\n }, {\n header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_button, {\n status: \"primary\",\n icon: \"vxe-icon-add\",\n onClick: $options.insertEvent,\n circle: \"\"\n }, null, 8 /* PROPS */, [\"onClick\"])]),\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row,\n $rowIndex\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 在这里添加你的按钮 \"), $data.isHovering ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_vxe_button, {\n key: 0,\n status: \"danger\",\n icon: \"vxe-icon-delete\",\n onClick: $event => $options.removeEvent(row, $rowIndex),\n circle: \"\"\n }, null, 8 /* PROPS */, [\"onClick\"])) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_2, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($rowIndex + 1), 1 /* TEXT */))])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"index\",\n title: \"序号\",\n width: \"50\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"type\",\n title: \"类型\",\n \"min-width\": \"100\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row,\n $rowIndex\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_select, {\n modelValue: row.type,\n \"onUpdate:modelValue\": $event => row.type = $event,\n transfer: \"\",\n disabled: $rowIndex == 0\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($options.treeConfigAll.dicData.joinFiledDicData, item => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_vxe_option, {\n key: item.value,\n value: item.value,\n label: item.label\n }, null, 8 /* PROPS */, [\"value\", \"label\"]);\n }), 128 /* KEYED_FRAGMENT */))]),\n _: 2 /* DYNAMIC */\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"modelValue\", \"onUpdate:modelValue\", \"disabled\"])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"joinTable\",\n title: \"数据表\",\n \"min-width\": \"120\",\n \"show-overflow\": \"\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.
|
|
2371
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nconst _hoisted_1 = {\n style: {\n \"padding\": \"0px\",\n \"flex\": \"1\"\n }\n};\nconst _hoisted_2 = {\n key: 1\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_vxe_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-button\");\n const _component_vxe_column = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-column\");\n const _component_vxe_option = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-option\");\n const _component_vxe_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-select\");\n const _component_lazy_load_select = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"lazy-load-select\");\n const _component_vxe_input = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-input\");\n const _component_vxe_table = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-table\");\n const _component_field_config = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"field-config\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_table, {\n \"min-height\": \"100px\",\n border: \"\",\n \"max-height\": \"170px\",\n data: this.treeConfigAll.treeConfig.table,\n stripe: true,\n align: \"center\",\n size: \"small\",\n ref: \"tableRef\",\n onMouseover: _cache[0] || (_cache[0] = $event => $options.showAction()),\n onMouseleave: _cache[1] || (_cache[1] = $event => $options.hideAction()),\n \"row-config\": {\n height: 50\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n type: \"seq\",\n width: \"50\"\n }, {\n header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_button, {\n status: \"primary\",\n icon: \"vxe-icon-add\",\n onClick: $options.insertEvent,\n circle: \"\"\n }, null, 8 /* PROPS */, [\"onClick\"])]),\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row,\n $rowIndex\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 在这里添加你的按钮 \"), $data.isHovering ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_vxe_button, {\n key: 0,\n status: \"danger\",\n icon: \"vxe-icon-delete\",\n onClick: $event => $options.removeEvent(row, $rowIndex),\n circle: \"\"\n }, null, 8 /* PROPS */, [\"onClick\"])) : ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"span\", _hoisted_2, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($rowIndex + 1), 1 /* TEXT */))])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"index\",\n title: \"序号\",\n width: \"50\"\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"type\",\n title: \"类型\",\n \"min-width\": \"100\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row,\n $rowIndex\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_select, {\n modelValue: row.type,\n \"onUpdate:modelValue\": $event => row.type = $event,\n transfer: \"\",\n disabled: $rowIndex == 0\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(vue__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.renderList)($options.treeConfigAll.dicData.joinFiledDicData, item => {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_vxe_option, {\n key: item.value,\n value: item.value,\n label: item.label\n }, null, 8 /* PROPS */, [\"value\", \"label\"]);\n }), 128 /* KEYED_FRAGMENT */))]),\n _: 2 /* DYNAMIC */\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"modelValue\", \"onUpdate:modelValue\", \"disabled\"])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"joinTable\",\n title: \"数据表\",\n \"min-width\": \"120\",\n \"show-overflow\": \"\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" <vxe-select v-model=\\\"row.joinTable\\\" filterable transfer @change=\\\"setTable\\\">\"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" <vxe-option v-for=\\\"item in treeConfigAll.dicData.joinTableDicData\\\" :key=\\\"item.value\\\" :value=\\\"item.value\\\"\"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" :label=\\\"item.label\\\"/>\"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" </vxe-select>\"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_lazy_load_select, {\n modelValue: row.joinTable,\n \"onUpdate:modelValue\": $event => row.joinTable = $event,\n placeholder: \"请选择数据表\",\n data: $options.treeConfigAll.dicData.joinTableDicData,\n onChange: $options.setTable\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"data\", \"onChange\"])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"joinFiled\",\n title: \"on\",\n \"min-width\": \"110\",\n \"show-overflow\": \"\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row,\n $rowIndex\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_input, {\n modelValue: row.joinFiled,\n \"onUpdate:modelValue\": $event => row.joinFiled = $event,\n onChange: $event => $options.setSql('', row.index),\n type: \"text\",\n disabled: $rowIndex == 0\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onChange\", \"disabled\"])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"deleteWhere\",\n title: \"删除条件\",\n \"min-width\": \"110\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_input, {\n modelValue: row.deleteWhere,\n \"onUpdate:modelValue\": $event => row.deleteWhere = $event,\n type: \"text\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_column, {\n field: \"fields\",\n title: \"操作\",\n \"min-width\": \"110\",\n \"show-overflow\": \"\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_button, {\n status: \"primary\",\n onClick: $event => $options.setFieldEvent(row)\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[2] || (_cache[2] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"字段配置\")])),\n _: 2 /* DYNAMIC */,\n __: [2]\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"onClick\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"data\"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_field_config, {\n ref: \"filedConfig\",\n onClose: $options.filedConfigClose\n }, null, 8 /* PROPS */, [\"onClose\"])], 64 /* STABLE_FRAGMENT */);\n}\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/config-core-table.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
2383
2372
|
|
|
2384
2373
|
/***/ }),
|
|
2385
2374
|
|
|
@@ -2394,17 +2383,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
2394
2383
|
|
|
2395
2384
|
/***/ }),
|
|
2396
2385
|
|
|
2397
|
-
/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=template&id=79de929c&scoped=true":
|
|
2398
|
-
/*!******************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
2399
|
-
!*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=template&id=79de929c&scoped=true ***!
|
|
2400
|
-
\******************************************************************************************************************************************************************************************************************************************************************************************************/
|
|
2401
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
2402
|
-
|
|
2403
|
-
"use strict";
|
|
2404
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* binding */ render; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n\nconst _hoisted_1 = {\n class: \"header\"\n};\nconst _hoisted_2 = {\n style: {\n \"display\": \"flex\",\n \"align-items\": \"center\"\n }\n};\nconst _hoisted_3 = {\n style: {\n \"margin-left\": \"5px\"\n }\n};\nconst _hoisted_4 = {\n style: {\n \"padding\": \"30px 0 12px\",\n \"display\": \"flex\"\n }\n};\nconst _hoisted_5 = {\n style: {\n \"width\": \"100%\",\n \"height\": \"calc(100% - 40px)\",\n \"position\": \"relative\"\n }\n};\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n const _component_el_radio = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-radio\");\n const _component_el_radio_group = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-radio-group\");\n const _component_el_form_item = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-form-item\");\n const _component_el_col = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-col\");\n const _component_olDictTag = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"olDictTag\");\n const _component_el_button = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-button\");\n const _component_el_input = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-input\");\n const _component_vForm = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vForm\");\n const _component_el_row = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-row\");\n const _component_el_form = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-form\");\n const _component_avue_form = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"avue-form\");\n const _component_el_scrollbar = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-scrollbar\");\n const _component_el_card = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-card\");\n const _component_el_input_number = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-input-number\");\n const _component_olCodemirrorTag = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"olCodemirrorTag\");\n const _component_el_checkbox = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-checkbox\");\n const _component_Delete = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"Delete\");\n const _component_el_icon = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"el-icon\");\n const _component_vxe_grid = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-grid\");\n const _component_codemirror = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"codemirror\");\n const _component_VFormRender = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"VFormRender\");\n const _component_vComponent = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vComponent\");\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)(\"div\", null, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form, {\n \"label-width\": \"80\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_row, null, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 5\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"表单类型\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_radio_group, {\n modelValue: $data.formType,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => $data.formType = $event)\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_radio, {\n value: 0,\n label: 0,\n size: \"large\",\n style: {\n \"font-size\": \"20px\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[14] || (_cache[14] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"基础表单\")])),\n _: 1 /* STABLE */,\n __: [14]\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_radio, {\n value: 1,\n label: 1,\n size: \"large\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[15] || (_cache[15] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"设计器表单\")])),\n _: 1 /* STABLE */,\n __: [15]\n })]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }), $data.formType == 0 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 0,\n span: 5\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"表单设计\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 表单设计 \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_radio_group, {\n modelValue: $data.formConfig,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => $data.formConfig = $event),\n style: {\n \"margin-left\": \"50px\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_radio, {\n value: 0,\n label: 0,\n size: \"large\",\n style: {\n \"font-size\": \"20px\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[16] || (_cache[16] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"快捷设计\")])),\n _: 1 /* STABLE */,\n __: [16]\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_radio, {\n value: 1,\n label: 1,\n size: \"large\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[17] || (_cache[17] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"编码设计\")])),\n _: 1 /* STABLE */,\n __: [17]\n })]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $data.formType == 1 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 1,\n span: 4\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"表单名称\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_olDictTag, {\n modelValue: $data.customForm,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => $data.customForm = $event),\n onChange: $options.onChangeForm,\n placeholder: \"请输入表单名称\",\n code: \"online,form_designer,description,id\",\n like: \"desc_code\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onChange\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $data.formType == 2 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 2,\n span: 4\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"表单文件路径\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input, {\n style: {\n \"margin-left\": \"20px\",\n \"width\": \"500px\"\n },\n modelValue: $data.customUrl,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => $data.customUrl = $event),\n size: \"large\",\n placeholder: \"请输入表单文件路径:views/xxx\"\n }, {\n append: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n icon: _ctx.Search,\n onClick: _cache[3] || (_cache[3] = $event => _ctx.$refs.vComponent.setComponent($data.customUrl, 'init'))\n }, null, 8 /* PROPS */, [\"icon\"])]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"modelValue\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 5\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"保存路径\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input, {\n modelValue: $data.form.saveUrl,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => $data.form.saveUrl = $event),\n style: {\n \"margin-left\": \"20px\"\n }\n }, null, 8 /* PROPS */, [\"modelValue\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }), $props.type == 'edit' && $data.formType == 0 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 3,\n span: 4\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"更新条件\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input, {\n modelValue: $data.form.updateKey,\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = $event => $data.form.updateKey = $event),\n style: {\n \"margin-left\": \"20px\"\n }\n }, null, 8 /* PROPS */, [\"modelValue\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 4\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n type: \"primary\",\n style: {\n \"margin-left\": \"40px\"\n },\n onClick: $options.showViewForm\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[18] || (_cache[18] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"表单弹框预览\")])),\n _: 1 /* STABLE */,\n __: [18]\n }, 8 /* PROPS */, [\"onClick\"]), $data.dialogTableVisible ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_vForm, {\n key: 0,\n ref: \"vFormViewer\"\n }, null, 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_row, {\n style: {\n \"height\": \"565px\"\n },\n gutter: 24\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 基础表单 \"), $data.formType == 0 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 0,\n span: 12\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_card, {\n class: \"box-card\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_scrollbar, {\n \"max-height\": \"500px\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_avue_form, {\n modelValue: $data.state.baseForm,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => $data.state.baseForm = $event),\n option: $data.baseOption\n }, null, 8 /* PROPS */, [\"modelValue\", \"option\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 表单设计 \"), $data.formType == 0 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 1,\n span: 12\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 快捷设计 \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_card, {\n class: \"box-card\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 表单 \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form, {\n inline: true,\n model: $data.baseOption,\n class: \"demo-form-inline\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_row, null, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 12\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"每行个数\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input_number, {\n style: {\n \"width\": \"240px\"\n },\n modelValue: $data.designForm.span,\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => $data.designForm.span = $event),\n placeholder: \"请输入每行的个数\",\n onChange: $options.designFormChange,\n min: 1,\n max: 4\n }, null, 8 /* PROPS */, [\"modelValue\", \"onChange\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 12\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"label宽度\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input_number, {\n style: {\n \"width\": \"240px\"\n },\n modelValue: $data.baseOption.labelWidth,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => $data.baseOption.labelWidth = $event),\n placeholder: \"label宽度\",\n onChange: $options.designFormChange\n }, null, 8 /* PROPS */, [\"modelValue\", \"onChange\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 12\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"弹窗宽度\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input_number, {\n style: {\n \"width\": \"240px\"\n },\n modelValue: $data.baseOption.diaLogWidth,\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => $data.baseOption.diaLogWidth = $event),\n placeholder: \"请输入弹窗宽度\",\n onChange: $options.designFormChange,\n min: 100,\n max: 1920\n }, null, 8 /* PROPS */, [\"modelValue\", \"onChange\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_col, {\n span: 12\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_form_item, {\n label: \"弹窗高度\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input_number, {\n style: {\n \"width\": \"240px\"\n },\n modelValue: $data.baseOption.diaLogHeight,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => $data.baseOption.diaLogHeight = $event),\n placeholder: \"请输入弹窗高度\",\n onChange: $options.designFormChange,\n min: 50,\n max: 1080\n }, null, 8 /* PROPS */, [\"modelValue\", \"onChange\"])]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n }, 8 /* PROPS */, [\"model\"]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 表格 \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_vxe_grid, (0,vue__WEBPACK_IMPORTED_MODULE_0__.mergeProps)($data.gridOptions, {\n ref: \"vexGridRef\",\n \"expand-config\": {\n labelField: 'seq'\n },\n resizable: \"\",\n \"row-key\": \"\"\n }), {\n change: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n column,\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_olCodemirrorTag, {\n modelValue: row[column.field],\n \"onUpdate:modelValue\": $event => row[column.field] = $event,\n onConfirm: $event => $options.codeMirrorChange(row)\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onConfirm\"])]),\n input_default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n column,\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_input, {\n modelValue: row[column.field],\n \"onUpdate:modelValue\": $event => row[column.field] = $event,\n onChange: $event => $options.inputChange(row)\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onChange\"])]),\n checkedBox_header: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n column\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_2, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_checkbox, {\n modelValue: column.params.all,\n \"onUpdate:modelValue\": $event => column.params.all = $event,\n onChange: $event => $options.headerClick(column)\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onChange\"]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", _hoisted_3, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(column.title), 1 /* TEXT */)])]),\n checkedBox_default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n column,\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_checkbox, {\n modelValue: row[column.field],\n \"onUpdate:modelValue\": $event => row[column.field] = $event,\n onChange: $event => $options.checkBoxClick(column, row),\n \"true-value\": \"1\",\n \"true-label\": 0,\n \"false-label\": 1,\n \"false-value\": \"0\"\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onChange\"])]),\n select_default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n column,\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_olDictTag, {\n code: \"select_dom\",\n modelValue: row[column.field],\n \"onUpdate:modelValue\": $event => row[column.field] = $event,\n onChange: $event => $options.dictChange(row)\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\", \"onChange\"])]),\n seq: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n rowIndex\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"span\", null, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)(rowIndex + 1), 1 /* TEXT */)]),\n content: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_4, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_avue_form, {\n ref: \"formRef\",\n option: $data.expandForm,\n modelValue: row.form,\n \"onUpdate:modelValue\": $event => row.form = $event,\n onChange: _cache[12] || (_cache[12] = $event => $options.refreshForm())\n }, {\n change1: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_olCodemirrorTag, {\n modelValue: row.form.change,\n \"onUpdate:modelValue\": $event => row.form.change = $event\n }, null, 8 /* PROPS */, [\"modelValue\", \"onUpdate:modelValue\"])]),\n _: 2 /* DYNAMIC */\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"option\", \"modelValue\", \"onUpdate:modelValue\"])])]),\n operate: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(({\n row\n }) => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n onClick: $event => $options.removeRowEvent(row),\n type: \"danger\",\n circle: \"\",\n plain: \"\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_icon, null, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_Delete)]),\n _: 1 /* STABLE */\n })]),\n _: 2 /* DYNAMIC */\n }, 1032 /* PROPS, DYNAMIC_SLOTS */, [\"onClick\"])]),\n _: 1 /* STABLE */\n }, 16 /* FULL_PROPS */)]),\n _: 1 /* STABLE */\n }, 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.formConfig == 0]]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 编码设计 \"), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)(\"div\", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_codemirror, {\n ref: \"mycode\",\n style: {\n \"height\": \"92%\",\n \"max-height\": \"510px\",\n \"text-align\": \"left\"\n },\n modelValue: $data.codeForm,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => $data.codeForm = $event),\n autofocus: true,\n lint: true,\n \"indent-with-tab\": true,\n lineWrapping: true,\n tabSize: 2,\n extensions: $data.state.extensions\n }, null, 8 /* PROPS */, [\"modelValue\", \"extensions\"]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_button, {\n onClick: $options.codeToData,\n type: \"primary\",\n style: {\n \"height\": \"40px\",\n \"width\": \"100%\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => _cache[19] || (_cache[19] = [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(\"生成\")])),\n _: 1 /* STABLE */,\n __: [19]\n }, 8 /* PROPS */, [\"onClick\"])], 512 /* NEED_PATCH */), [[vue__WEBPACK_IMPORTED_MODULE_0__.vShow, $data.formConfig == 1]])]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\" 自定义表单 \"), $data.formType == 1 || $data.formType == 2 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_el_col, {\n key: 2,\n span: 24,\n style: {\n \"height\": \"100%\"\n }\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_card, {\n class: \"box-card\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_el_scrollbar, {\n \"max-height\": \"500px\"\n }, {\n default: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(() => [$data.formType == 1 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_VFormRender, {\n key: $data.formKey,\n \"form-json\": $data.formJson,\n \"form-data\": $data.formData,\n \"option-data\": $data.optionData,\n ref: \"vFormRef\"\n }, null, 8 /* PROPS */, [\"form-json\", \"form-data\", \"option-data\"])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true), $data.formType == 2 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createBlock)(_component_vComponent, {\n key: 1,\n ref: \"vComponent\"\n }, null, 512 /* NEED_PATCH */)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })]),\n _: 1 /* STABLE */\n })) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)(\"v-if\", true)]),\n _: 1 /* STABLE */\n })]);\n}\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use%5B0%5D!./node_modules/vue-loader/dist/templateLoader.js??ruleSet%5B1%5D.rules%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
2405
|
-
|
|
2406
|
-
/***/ }),
|
|
2407
|
-
|
|
2408
2386
|
/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/index.vue?vue&type=template&id=7db5a03b&scoped=true":
|
|
2409
2387
|
/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
2410
2388
|
!*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/index.vue?vue&type=template&id=7db5a03b&scoped=true ***!
|
|
@@ -5162,17 +5140,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
5162
5140
|
|
|
5163
5141
|
/***/ }),
|
|
5164
5142
|
|
|
5165
|
-
/***/ "./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true":
|
|
5166
|
-
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
5167
|
-
!*** ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true ***!
|
|
5168
|
-
\*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
|
|
5169
|
-
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
5170
|
-
|
|
5171
|
-
"use strict";
|
|
5172
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ \"./node_modules/css-loader/dist/runtime/noSourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".cm-editor[data-v-79de929c] {\\n height: 100%;\\n}\\n.box-card[data-v-79de929c] {\\n width: calc(100% - 24px);\\n height: calc(100% - 24px);\\n}\", \"\"]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
5173
|
-
|
|
5174
|
-
/***/ }),
|
|
5175
|
-
|
|
5176
5143
|
/***/ "./node_modules/css-loader/dist/cjs.js??clonedRuleSet-23.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-23.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-23.use[3]!./src/styles/global.module.scss":
|
|
5177
5144
|
/*!*****************************************************************************************************************************************************************************************************************************************!*\
|
|
5178
5145
|
!*** ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-23.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-23.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-23.use[3]!./src/styles/global.module.scss ***!
|
|
@@ -8242,16 +8209,6 @@ eval("// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// lo
|
|
|
8242
8209
|
|
|
8243
8210
|
/***/ }),
|
|
8244
8211
|
|
|
8245
|
-
/***/ "./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true":
|
|
8246
|
-
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
8247
|
-
!*** ./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true ***!
|
|
8248
|
-
\***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
|
|
8249
|
-
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
8250
|
-
|
|
8251
|
-
eval("// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../../../../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!../../../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true */ \"./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = (__webpack_require__(/*! !../../../../../node_modules/vue-style-loader/lib/addStylesClient.js */ \"./node_modules/vue-style-loader/lib/addStylesClient.js\")[\"default\"])\nvar update = add(\"6b50089e\", content, false, {\"sourceMap\":false,\"shadowMode\":false});\n// Hot Module Replacement\nif(false) // removed by dead control flow\n{}\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use%5B0%5D!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use%5B1%5D!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use%5B2%5D!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use%5B3%5D!./node_modules/vue-loader/dist/index.js??ruleSet%5B0%5D.use%5B0%5D");
|
|
8252
|
-
|
|
8253
|
-
/***/ }),
|
|
8254
|
-
|
|
8255
8212
|
/***/ "./node_modules/vue-style-loader/index.js??clonedRuleSet-32.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-32.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-32.use[2]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-32.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/App.vue?vue&type=style&index=0&id=7ba5bd90&lang=less&scoped=true":
|
|
8256
8213
|
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
8257
8214
|
!*** ./node_modules/vue-style-loader/index.js??clonedRuleSet-32.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-32.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-32.use[2]!./node_modules/less-loader/dist/cjs.js??clonedRuleSet-32.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/App.vue?vue&type=style&index=0&id=7ba5bd90&lang=less&scoped=true ***!
|
|
@@ -10768,7 +10725,7 @@ eval("var values = __webpack_require__(/*! ./values */ \"./node_modules/xe-utils
|
|
|
10768
10725
|
\****************************/
|
|
10769
10726
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
10770
10727
|
|
|
10771
|
-
eval("var map = {\n\t\"./App\": \"./src/App.vue\",\n\t\"./App.vue\": \"./src/App.vue\",\n\t\"./api/dist\": \"./src/api/dist.js\",\n\t\"./api/dist.js\": \"./src/api/dist.js\",\n\t\"./assets/iconfont/iconfont\": \"./src/assets/iconfont/iconfont.json\",\n\t\"./assets/iconfont/iconfont.css\": \"./src/assets/iconfont/iconfont.css\",\n\t\"./assets/iconfont/iconfont.json\": \"./src/assets/iconfont/iconfont.json\",\n\t\"./assets/iconfont/iconfont.ttf\": \"./src/assets/iconfont/iconfont.ttf\",\n\t\"./assets/iconfont/iconfont.woff\": \"./src/assets/iconfont/iconfont.woff\",\n\t\"./assets/iconfont/iconfont.woff2\": \"./src/assets/iconfont/iconfont.woff2\",\n\t\"./components/FileUpload\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/FileUpload/\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/FileUpload/index\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/FileUpload/index.vue\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/Icon\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/index\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/index.js\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/src/Icon\": \"./src/components/Icon/src/Icon.vue\",\n\t\"./components/Icon/src/Icon.vue\": \"./src/components/Icon/src/Icon.vue\",\n\t\"./components/Icon/src/IconSelect\": \"./src/components/Icon/src/IconSelect.vue\",\n\t\"./components/Icon/src/IconSelect.vue\": \"./src/components/Icon/src/IconSelect.vue\",\n\t\"./components/Icon/src/data\": \"./src/components/Icon/src/data.js\",\n\t\"./components/Icon/src/data.js\": \"./src/components/Icon/src/data.js\",\n\t\"./components/auto-height\": \"./src/components/auto-height/index.vue\",\n\t\"./components/auto-height/\": \"./src/components/auto-height/index.vue\",\n\t\"./components/auto-height/index\": \"./src/components/auto-height/index.vue\",\n\t\"./components/auto-height/index.vue\": \"./src/components/auto-height/index.vue\",\n\t\"./components/codemirror-tag\": \"./src/components/codemirror-tag.vue\",\n\t\"./components/codemirror-tag.vue\": \"./src/components/codemirror-tag.vue\",\n\t\"./components/lazy-load-select\": \"./src/components/lazy-load-select.vue\",\n\t\"./components/lazy-load-select.vue\": \"./src/components/lazy-load-select.vue\",\n\t\"./components/ol-dialog-excel\": \"./src/components/ol-dialog-excel.vue\",\n\t\"./components/ol-dialog-excel.vue\": \"./src/components/ol-dialog-excel.vue\",\n\t\"./components/ol-dialog-import\": \"./src/components/ol-dialog-import.vue\",\n\t\"./components/ol-dialog-import.vue\": \"./src/components/ol-dialog-import.vue\",\n\t\"./components/ol-dialog-json\": \"./src/components/ol-dialog-json.vue\",\n\t\"./components/ol-dialog-json.vue\": \"./src/components/ol-dialog-json.vue\",\n\t\"./components/ol-dialog-table\": \"./src/components/ol-dialog-table.vue\",\n\t\"./components/ol-dialog-table.vue\": \"./src/components/ol-dialog-table.vue\",\n\t\"./components/ol-dialog-tagForm\": \"./src/components/ol-dialog-tagForm.vue\",\n\t\"./components/ol-dialog-tagForm.vue\": \"./src/components/ol-dialog-tagForm.vue\",\n\t\"./components/ol-dialog-upload-file\": \"./src/components/ol-dialog-upload-file.vue\",\n\t\"./components/ol-dialog-upload-file.vue\": \"./src/components/ol-dialog-upload-file.vue\",\n\t\"./components/ol-dict-tag\": \"./src/components/ol-dict-tag.vue\",\n\t\"./components/ol-dict-tag.vue\": \"./src/components/ol-dict-tag.vue\",\n\t\"./components/ol-select-dom\": \"./src/components/ol-select-dom.vue\",\n\t\"./components/ol-select-dom.vue\": \"./src/components/ol-select-dom.vue\",\n\t\"./components/ol-sql-preview\": \"./src/components/ol-sql-preview.vue\",\n\t\"./components/ol-sql-preview.vue\": \"./src/components/ol-sql-preview.vue\",\n\t\"./components/ol-table-filter\": \"./src/components/ol-table-filter.vue\",\n\t\"./components/ol-table-filter.vue\": \"./src/components/ol-table-filter.vue\",\n\t\"./components/ol-table-render\": \"./src/components/ol-table-render.vue\",\n\t\"./components/ol-table-render.vue\": \"./src/components/ol-table-render.vue\",\n\t\"./components/ol-table-select\": \"./src/components/ol-table-select.vue\",\n\t\"./components/ol-table-select-config\": \"./src/components/ol-table-select-config.vue\",\n\t\"./components/ol-table-select-config.vue\": \"./src/components/ol-table-select-config.vue\",\n\t\"./components/ol-table-select.vue\": \"./src/components/ol-table-select.vue\",\n\t\"./components/pinia-init\": \"./src/components/pinia-init.vue\",\n\t\"./components/pinia-init.vue\": \"./src/components/pinia-init.vue\",\n\t\"./components/table/model/ModelMixins\": \"./src/components/table/model/ModelMixins.js\",\n\t\"./components/table/model/ModelMixins.js\": \"./src/components/table/model/ModelMixins.js\",\n\t\"./components/table/model/model-index\": \"./src/components/table/model/model-index.vue\",\n\t\"./components/table/model/model-index.vue\": \"./src/components/table/model/model-index.vue\",\n\t\"./components/table/model/ot-left-right\": \"./src/components/table/model/ot-left-right.vue\",\n\t\"./components/table/model/ot-left-right.vue\": \"./src/components/table/model/ot-left-right.vue\",\n\t\"./components/table/model/ot-left-tree-right-table\": \"./src/components/table/model/ot-left-tree-right-table.vue\",\n\t\"./components/table/model/ot-left-tree-right-table.scss\": \"./src/components/table/model/ot-left-tree-right-table.scss\",\n\t\"./components/table/model/ot-left-tree-right-table.vue\": \"./src/components/table/model/ot-left-tree-right-table.vue\",\n\t\"./components/table/model/ot-top-1-bottom-2\": \"./src/components/table/model/ot-top-1-bottom-2.vue\",\n\t\"./components/table/model/ot-top-1-bottom-2.vue\": \"./src/components/table/model/ot-top-1-bottom-2.vue\",\n\t\"./components/table/model/ot-top-2-bottom-1\": \"./src/components/table/model/ot-top-2-bottom-1.vue\",\n\t\"./components/table/model/ot-top-2-bottom-1.vue\": \"./src/components/table/model/ot-top-2-bottom-1.vue\",\n\t\"./components/table/model/ot-top-2-bottom-2\": \"./src/components/table/model/ot-top-2-bottom-2.vue\",\n\t\"./components/table/model/ot-top-2-bottom-2.vue\": \"./src/components/table/model/ot-top-2-bottom-2.vue\",\n\t\"./components/table/model/ot-top-bottom\": \"./src/components/table/model/ot-top-bottom.vue\",\n\t\"./components/table/model/ot-top-bottom.vue\": \"./src/components/table/model/ot-top-bottom.vue\",\n\t\"./components/table/model/splitpanesModel\": \"./src/components/table/model/splitpanesModel.vue\",\n\t\"./components/table/model/splitpanesModel.css\": \"./src/components/table/model/splitpanesModel.css\",\n\t\"./components/table/model/splitpanesModel.vue\": \"./src/components/table/model/splitpanesModel.vue\",\n\t\"./components/table/ol-form\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-form/\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-form/index\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-form/index.vue\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-main-form-sub-table\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-main-form-sub-table/\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-main-form-sub-table/index\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-main-form-sub-table/index.vue\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-pager\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-pager/\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-pager/index\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-pager/index.vue\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-tab-table\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-tab-table/\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-tab-table/index\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-tab-table/index.vue\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-table\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/table/ol-table-operate\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-operate/\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-operate/index\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-operate/index.vue\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-search\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-search/\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-search/index\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-search/index.vue\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-tool-btn\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table-tool-btn/\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table-tool-btn/index\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table-tool-btn/index.vue\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table/\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/columnIndex\": \"./src/components/table/ol-table/components/ol-table-column-config/columnIndex.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/columnIndex.vue\": \"./src/components/table/ol-table/components/ol-table-column-config/columnIndex.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/index\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/index.vue\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color/\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color/index\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color/index.vue\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-filter-render/filterRender\": \"./src/components/table/ol-table/components/ol-table-filter-render/filterRender.vue\",\n\t\"./components/table/ol-table/components/ol-table-filter-render/filterRender.vue\": \"./src/components/table/ol-table/components/ol-table-filter-render/filterRender.vue\",\n\t\"./components/table/ol-table/index\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/table/ol-table/index.vue\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/tree\": \"./src/components/tree/index.vue\",\n\t\"./components/tree/\": \"./src/components/tree/index.vue\",\n\t\"./components/tree/components/o-tree\": \"./src/components/tree/components/o-tree.vue\",\n\t\"./components/tree/components/o-tree.vue\": \"./src/components/tree/components/o-tree.vue\",\n\t\"./components/tree/index\": \"./src/components/tree/index.vue\",\n\t\"./components/tree/index.vue\": \"./src/components/tree/index.vue\",\n\t\"./components/v-component\": \"./src/components/v-component/index.vue\",\n\t\"./components/v-component/\": \"./src/components/v-component/index.vue\",\n\t\"./components/v-component/index\": \"./src/components/v-component/index.vue\",\n\t\"./components/v-component/index.vue\": \"./src/components/v-component/index.vue\",\n\t\"./config/dev-config\": \"./src/config/dev-config.js\",\n\t\"./config/dev-config.js\": \"./src/config/dev-config.js\",\n\t\"./config/prod-config\": \"./src/config/prod-config.js\",\n\t\"./config/prod-config.js\": \"./src/config/prod-config.js\",\n\t\"./config/shared-config\": \"./src/config/shared-config.js\",\n\t\"./config/shared-config.js\": \"./src/config/shared-config.js\",\n\t\"./directives/permission/hasPermi\": \"./src/directives/permission/hasPermi.js\",\n\t\"./directives/permission/hasPermi.js\": \"./src/directives/permission/hasPermi.js\",\n\t\"./directives/permission/hasRole\": \"./src/directives/permission/hasRole.js\",\n\t\"./directives/permission/hasRole.js\": \"./src/directives/permission/hasRole.js\",\n\t\"./main\": \"./src/main.js\",\n\t\"./main.js\": \"./src/main.js\",\n\t\"./mixins/VTMixin\": \"./src/mixins/VTMixin/index.js\",\n\t\"./mixins/VTMixin/\": \"./src/mixins/VTMixin/index.js\",\n\t\"./mixins/VTMixin/DefaultMethods\": \"./src/mixins/VTMixin/DefaultMethods.js\",\n\t\"./mixins/VTMixin/DefaultMethods.js\": \"./src/mixins/VTMixin/DefaultMethods.js\",\n\t\"./mixins/VTMixin/OTMixinBody\": \"./src/mixins/VTMixin/OTMixinBody.js\",\n\t\"./mixins/VTMixin/OTMixinBody.js\": \"./src/mixins/VTMixin/OTMixinBody.js\",\n\t\"./mixins/VTMixin/OTMixinBodyFooter\": \"./src/mixins/VTMixin/OTMixinBodyFooter.js\",\n\t\"./mixins/VTMixin/OTMixinBodyFooter.js\": \"./src/mixins/VTMixin/OTMixinBodyFooter.js\",\n\t\"./mixins/VTMixin/OTMixinBodyMethods\": \"./src/mixins/VTMixin/OTMixinBodyMethods.js\",\n\t\"./mixins/VTMixin/OTMixinBodyMethods.js\": \"./src/mixins/VTMixin/OTMixinBodyMethods.js\",\n\t\"./mixins/VTMixin/OTMixinColumnMethod\": \"./src/mixins/VTMixin/OTMixinColumnMethod.js\",\n\t\"./mixins/VTMixin/OTMixinColumnMethod.js\": \"./src/mixins/VTMixin/OTMixinColumnMethod.js\",\n\t\"./mixins/VTMixin/OTMixinInitMethod\": \"./src/mixins/VTMixin/OTMixinInitMethod.js\",\n\t\"./mixins/VTMixin/OTMixinInitMethod.js\": \"./src/mixins/VTMixin/OTMixinInitMethod.js\",\n\t\"./mixins/VTMixin/OTMixinPager\": \"./src/mixins/VTMixin/OTMixinPager.js\",\n\t\"./mixins/VTMixin/OTMixinPager.js\": \"./src/mixins/VTMixin/OTMixinPager.js\",\n\t\"./mixins/VTMixin/OTMixinSortable\": \"./src/mixins/VTMixin/OTMixinSortable.js\",\n\t\"./mixins/VTMixin/OTMixinSortable.js\": \"./src/mixins/VTMixin/OTMixinSortable.js\",\n\t\"./mixins/VTMixin/index\": \"./src/mixins/VTMixin/index.js\",\n\t\"./mixins/VTMixin/index.js\": \"./src/mixins/VTMixin/index.js\",\n\t\"./package\": \"./src/package/index.js\",\n\t\"./package/\": \"./src/package/index.js\",\n\t\"./package/index\": \"./src/package/index.js\",\n\t\"./package/index.js\": \"./src/package/index.js\",\n\t\"./store/dict\": \"./src/store/dict.js\",\n\t\"./store/dict.js\": \"./src/store/dict.js\",\n\t\"./store/dictType\": \"./src/store/dictType.js\",\n\t\"./store/dictType.js\": \"./src/store/dictType.js\",\n\t\"./store/permi\": \"./src/store/permi.js\",\n\t\"./store/permi.js\": \"./src/store/permi.js\",\n\t\"./styles/common.scss\": \"./src/styles/common.scss\",\n\t\"./styles/global.module.scss\": \"./src/styles/global.module.scss\",\n\t\"./styles/index.scss\": \"./src/styles/index.scss\",\n\t\"./styles/theme.scss\": \"./src/styles/theme.scss\",\n\t\"./styles/variables.scss\": \"./src/styles/variables.scss\",\n\t\"./utils/AESCRUDUtils\": \"./src/utils/AESCRUDUtils.js\",\n\t\"./utils/AESCRUDUtils.js\": \"./src/utils/AESCRUDUtils.js\",\n\t\"./utils/DateUtils\": \"./src/utils/DateUtils.js\",\n\t\"./utils/DateUtils.js\": \"./src/utils/DateUtils.js\",\n\t\"./utils/ExcelUtil\": \"./src/utils/ExcelUtil.js\",\n\t\"./utils/ExcelUtil.js\": \"./src/utils/ExcelUtil.js\",\n\t\"./utils/FilterType\": \"./src/utils/FilterType.js\",\n\t\"./utils/FilterType.js\": \"./src/utils/FilterType.js\",\n\t\"./utils/NumberGenerator\": \"./src/utils/NumberGenerator.mjs\",\n\t\"./utils/NumberGenerator.mjs\": \"./src/utils/NumberGenerator.mjs\",\n\t\"./utils/TableSortUtil\": \"./src/utils/TableSortUtil.js\",\n\t\"./utils/TableSortUtil.js\": \"./src/utils/TableSortUtil.js\",\n\t\"./utils/columnProp\": \"./src/utils/columnProp.js\",\n\t\"./utils/columnProp.js\": \"./src/utils/columnProp.js\",\n\t\"./utils/filterUtil\": \"./src/utils/filterUtil.js\",\n\t\"./utils/filterUtil.js\": \"./src/utils/filterUtil.js\",\n\t\"./utils/formUtils\": \"./src/utils/formUtils.js\",\n\t\"./utils/formUtils.js\": \"./src/utils/formUtils.js\",\n\t\"./utils/groupCompute\": \"./src/utils/groupCompute.js\",\n\t\"./utils/groupCompute.js\": \"./src/utils/groupCompute.js\",\n\t\"./utils/http/httpFactory\": \"./src/utils/http/httpFactory.js\",\n\t\"./utils/http/httpFactory.js\": \"./src/utils/http/httpFactory.js\",\n\t\"./utils/http/httpFactory2\": \"./src/utils/http/httpFactory2.js\",\n\t\"./utils/http/httpFactory2.js\": \"./src/utils/http/httpFactory2.js\",\n\t\"./utils/http/httpUtil\": \"./src/utils/http/httpUtil.js\",\n\t\"./utils/http/httpUtil.js\": \"./src/utils/http/httpUtil.js\",\n\t\"./utils/http/httpUtils\": \"./src/utils/http/httpUtils.js\",\n\t\"./utils/http/httpUtils.js\": \"./src/utils/http/httpUtils.js\",\n\t\"./utils/loadStyle\": \"./src/utils/loadStyle.js\",\n\t\"./utils/loadStyle.js\": \"./src/utils/loadStyle.js\",\n\t\"./utils/message\": \"./src/utils/message.js\",\n\t\"./utils/message.js\": \"./src/utils/message.js\",\n\t\"./utils/object\": \"./src/utils/object.js\",\n\t\"./utils/object.js\": \"./src/utils/object.js\",\n\t\"./utils/propTypes\": \"./src/utils/propTypes.js\",\n\t\"./utils/propTypes.js\": \"./src/utils/propTypes.js\",\n\t\"./utils/tree\": \"./src/utils/tree.js\",\n\t\"./utils/tree.js\": \"./src/utils/tree.js\",\n\t\"./utils/useDesign\": \"./src/utils/useDesign.js\",\n\t\"./utils/useDesign.js\": \"./src/utils/useDesign.js\",\n\t\"./utils/util\": \"./src/utils/util.js\",\n\t\"./utils/util.js\": \"./src/utils/util.js\",\n\t\"./views/components/btn-config\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/btn-config/\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/btn-config/index\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/btn-config/index.vue\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/option-config\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/components/option-config/\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/components/option-config/index\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/components/option-config/index.vue\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/db\": \"./src/views/db/index.vue\",\n\t\"./views/db/\": \"./src/views/db/index.vue\",\n\t\"./views/db/chineseToEnglish\": \"./src/views/db/chineseToEnglish.vue\",\n\t\"./views/db/chineseToEnglish.vue\": \"./src/views/db/chineseToEnglish.vue\",\n\t\"./views/db/filed\": \"./src/views/db/filed.vue\",\n\t\"./views/db/filed.vue\": \"./src/views/db/filed.vue\",\n\t\"./views/db/index\": \"./src/views/db/index.vue\",\n\t\"./views/db/index.vue\": \"./src/views/db/index.vue\",\n\t\"./views/db/preview\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/index\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/index.vue\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/left\": \"./src/views/db/preview/left.vue\",\n\t\"./views/db/preview/left.vue\": \"./src/views/db/preview/left.vue\",\n\t\"./views/db/preview/right\": \"./src/views/db/preview/right.vue\",\n\t\"./views/db/preview/right.vue\": \"./src/views/db/preview/right.vue\",\n\t\"./views/table\": \"./src/views/table/index.vue\",\n\t\"./views/table/\": \"./src/views/table/index.vue\",\n\t\"./views/table/add-or-edit\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/config\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/card-form\": \"./src/views/table/add-or-edit/config/base-config/card-form.vue\",\n\t\"./views/table/add-or-edit/config/base-config/card-form.vue\": \"./src/views/table/add-or-edit/config/base-config/card-form.vue\",\n\t\"./views/table/add-or-edit/config/base-config/index\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/index.vue\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/table-form\": \"./src/views/table/add-or-edit/config/base-config/table-form.vue\",\n\t\"./views/table/add-or-edit/config/base-config/table-form.vue\": \"./src/views/table/add-or-edit/config/base-config/table-form.vue\",\n\t\"./views/table/add-or-edit/config/card-config\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/card-config/\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-config\": \"./src/views/table/add-or-edit/config/card-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-config.vue\": \"./src/views/table/add-or-edit/config/card-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-sort\": \"./src/views/table/add-or-edit/config/card-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-sort.vue\": \"./src/views/table/add-or-edit/config/card-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/card-config/index\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/card-config/index.vue\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config/\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config/header-config\": \"./src/views/table/add-or-edit/config/column-config/header-config.vue\",\n\t\"./views/table/add-or-edit/config/column-config/header-config.vue\": \"./src/views/table/add-or-edit/config/column-config/header-config.vue\",\n\t\"./views/table/add-or-edit/config/column-config/index\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config/index.vue\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/data/column\": \"./src/views/table/add-or-edit/config/data/column.js\",\n\t\"./views/table/add-or-edit/config/data/column.js\": \"./src/views/table/add-or-edit/config/data/column.js\",\n\t\"./views/table/add-or-edit/config/data/crud\": \"./src/views/table/add-or-edit/config/data/crud.js\",\n\t\"./views/table/add-or-edit/config/data/crud.js\": \"./src/views/table/add-or-edit/config/data/crud.js\",\n\t\"./views/table/add-or-edit/config/data/events\": \"./src/views/table/add-or-edit/config/data/events.js\",\n\t\"./views/table/add-or-edit/config/data/events.js\": \"./src/views/table/add-or-edit/config/data/events.js\",\n\t\"./views/table/add-or-edit/config/data/method\": \"./src/views/table/add-or-edit/config/data/method.js\",\n\t\"./views/table/add-or-edit/config/data/method.js\": \"./src/views/table/add-or-edit/config/data/method.js\",\n\t\"./views/table/add-or-edit/config/data/option\": \"./src/views/table/add-or-edit/config/data/option.js\",\n\t\"./views/table/add-or-edit/config/data/option.js\": \"./src/views/table/add-or-edit/config/data/option.js\",\n\t\"./views/table/add-or-edit/config/data/page\": \"./src/views/table/add-or-edit/config/data/page.js\",\n\t\"./views/table/add-or-edit/config/data/page.js\": \"./src/views/table/add-or-edit/config/data/page.js\",\n\t\"./views/table/add-or-edit/config/field-config\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/field-config/\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/field-config/filed-config-table\": \"./src/views/table/add-or-edit/config/field-config/filed-config-table.vue\",\n\t\"./views/table/add-or-edit/config/field-config/filed-config-table.vue\": \"./src/views/table/add-or-edit/config/field-config/filed-config-table.vue\",\n\t\"./views/table/add-or-edit/config/field-config/index\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/field-config/index.vue\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config/\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config/index\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config/index.vue\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/index\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/index.vue\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/initFormObject\": \"./src/views/table/add-or-edit/config/initFormObject.js\",\n\t\"./views/table/add-or-edit/config/initFormObject.js\": \"./src/views/table/add-or-edit/config/initFormObject.js\",\n\t\"./views/table/add-or-edit/config/script-config\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/script-config/\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/script-config/LeftMeun\": \"./src/views/table/add-or-edit/config/script-config/LeftMeun.vue\",\n\t\"./views/table/add-or-edit/config/script-config/LeftMeun.vue\": \"./src/views/table/add-or-edit/config/script-config/LeftMeun.vue\",\n\t\"./views/table/add-or-edit/config/script-config/index\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/script-config/index.vue\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config/\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-config\": \"./src/views/table/add-or-edit/config/table-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-config.vue\": \"./src/views/table/add-or-edit/config/table-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-sort\": \"./src/views/table/add-or-edit/config/table-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-sort.vue\": \"./src/views/table/add-or-edit/config/table-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/table-config/index\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config/index.vue\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/configOld\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config-table-model\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config-table-model.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config-table-model.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config-table-model.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/index\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/index.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/set-table-sql\": \"./src/views/table/add-or-edit/configOld/dataTags/set-table-sql.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/set-table-sql.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/set-table-sql.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/table-on-config\": \"./src/views/table/add-or-edit/configOld/dataTags/table-on-config.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/table-on-config.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/table-on-config.vue\",\n\t\"./views/table/add-or-edit/configOld/index\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/index.vue\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/columnConfig\": \"./src/views/table/add-or-edit/configOld/tableTags/columnConfig.js\",\n\t\"./views/table/add-or-edit/configOld/tableTags/columnConfig.js\": \"./src/views/table/add-or-edit/configOld/tableTags/columnConfig.js\",\n\t\"./views/table/add-or-edit/configOld/tableTags/index\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/index.vue\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/operation-but-config\": \"./src/views/table/add-or-edit/configOld/tableTags/operation-but-config.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/operation-but-config.vue\": \"./src/views/table/add-or-edit/configOld/tableTags/operation-but-config.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/tool-but-config\": \"./src/views/table/add-or-edit/configOld/tableTags/tool-but-config.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/tool-but-config.vue\": \"./src/views/table/add-or-edit/configOld/tableTags/tool-but-config.vue\",\n\t\"./views/table/add-or-edit/index\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/index.vue\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/themeModel\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/index\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/index.vue\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model\": \"./src/views/table/add-or-edit/themeModel/init-model.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model-table\": \"./src/views/table/add-or-edit/themeModel/init-model-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model-table.vue\": \"./src/views/table/add-or-edit/themeModel/init-model-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model.vue\": \"./src/views/table/add-or-edit/themeModel/init-model.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-right\": \"./src/views/table/add-or-edit/themeModel/left-right.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-right.vue\": \"./src/views/table/add-or-edit/themeModel/left-right.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-tree-right-table\": \"./src/views/table/add-or-edit/themeModel/left-tree-right-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-tree-right-table.vue\": \"./src/views/table/add-or-edit/themeModel/left-tree-right-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/olTableSearchModelMixins\": \"./src/views/table/add-or-edit/themeModel/olTableSearchModelMixins.js\",\n\t\"./views/table/add-or-edit/themeModel/olTableSearchModelMixins.js\": \"./src/views/table/add-or-edit/themeModel/olTableSearchModelMixins.js\",\n\t\"./views/table/add-or-edit/themeModel/splitpanesThemeModel\": \"./src/views/table/add-or-edit/themeModel/splitpanesThemeModel.vue\",\n\t\"./views/table/add-or-edit/themeModel/splitpanesThemeModel.vue\": \"./src/views/table/add-or-edit/themeModel/splitpanesThemeModel.vue\",\n\t\"./views/table/add-or-edit/themeModel/tab-table\": \"./src/views/table/add-or-edit/themeModel/tab-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/tab-table.vue\": \"./src/views/table/add-or-edit/themeModel/tab-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-1-bottom-2\": \"./src/views/table/add-or-edit/themeModel/top-1-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-1-bottom-2.vue\": \"./src/views/table/add-or-edit/themeModel/top-1-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-1\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-1.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-1.vue\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-1.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-2\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-2.vue\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-bottom\": \"./src/views/table/add-or-edit/themeModel/top-bottom.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-bottom.vue\": \"./src/views/table/add-or-edit/themeModel/top-bottom.vue\",\n\t\"./views/table/index\": \"./src/views/table/index.vue\",\n\t\"./views/table/index.vue\": \"./src/views/table/index.vue\",\n\t\"./views/table/index2\": \"./src/views/table/index2.vue\",\n\t\"./views/table/index2.vue\": \"./src/views/table/index2.vue\",\n\t\"./views/table/preview\": \"./src/views/table/preview/index.vue\",\n\t\"./views/table/preview/\": \"./src/views/table/preview/index.vue\",\n\t\"./views/table/preview/index\": \"./src/views/table/preview/index.vue\",\n\t\"./views/table/preview/index.vue\": \"./src/views/table/preview/index.vue\",\n\t\"./views/tree\": \"./src/views/tree/index.vue\",\n\t\"./views/tree/\": \"./src/views/tree/index.vue\",\n\t\"./views/tree/components/config-core-data\": \"./src/views/tree/components/config-core-data.vue\",\n\t\"./views/tree/components/config-core-data.vue\": \"./src/views/tree/components/config-core-data.vue\",\n\t\"./views/tree/components/config-core-table\": \"./src/views/tree/components/config-core-table.vue\",\n\t\"./views/tree/components/config-core-table.vue\": \"./src/views/tree/components/config-core-table.vue\",\n\t\"./views/tree/components/config-core-tree\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/config-core-tree/\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/config-core-tree/data/events\": \"./src/views/tree/components/config-core-tree/data/events.js\",\n\t\"./views/tree/components/config-core-tree/data/events.js\": \"./src/views/tree/components/config-core-tree/data/events.js\",\n\t\"./views/tree/components/config-core-tree/data/option\": \"./src/views/tree/components/config-core-tree/data/option.js\",\n\t\"./views/tree/components/config-core-tree/data/option.js\": \"./src/views/tree/components/config-core-tree/data/option.js\",\n\t\"./views/tree/components/config-core-tree/data/prop\": \"./src/views/tree/components/config-core-tree/data/prop.js\",\n\t\"./views/tree/components/config-core-tree/data/prop.js\": \"./src/views/tree/components/config-core-tree/data/prop.js\",\n\t\"./views/tree/components/config-core-tree/index\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/config-core-tree/index.vue\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/form-config\": \"./src/views/tree/components/form-config/index.vue\",\n\t\"./views/tree/components/form-config/\": \"./src/views/tree/components/form-config/index.vue\",\n\t\"./views/tree/components/form-config/index\": \"./src/views/tree/components/form-config/index.vue\",\n\t\"./views/tree/components/form-config/index.vue\": \"./src/views/tree/components/form-config/index.vue\",\n\t\"./views/tree/index\": \"./src/views/tree/index.vue\",\n\t\"./views/tree/index.vue\": \"./src/views/tree/index.vue\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./src sync recursive ^\\\\.\\\\/.*$\";\n\n//# sourceURL=webpack://olp-table/./src/_sync_^\\.\\/.*$?");
|
|
10728
|
+
eval("var map = {\n\t\"./App\": \"./src/App.vue\",\n\t\"./App.vue\": \"./src/App.vue\",\n\t\"./api/dist\": \"./src/api/dist.js\",\n\t\"./api/dist.js\": \"./src/api/dist.js\",\n\t\"./assets/iconfont/iconfont\": \"./src/assets/iconfont/iconfont.json\",\n\t\"./assets/iconfont/iconfont.css\": \"./src/assets/iconfont/iconfont.css\",\n\t\"./assets/iconfont/iconfont.json\": \"./src/assets/iconfont/iconfont.json\",\n\t\"./assets/iconfont/iconfont.ttf\": \"./src/assets/iconfont/iconfont.ttf\",\n\t\"./assets/iconfont/iconfont.woff\": \"./src/assets/iconfont/iconfont.woff\",\n\t\"./assets/iconfont/iconfont.woff2\": \"./src/assets/iconfont/iconfont.woff2\",\n\t\"./components/FileUpload\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/FileUpload/\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/FileUpload/index\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/FileUpload/index.vue\": \"./src/components/FileUpload/index.vue\",\n\t\"./components/Icon\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/index\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/index.js\": \"./src/components/Icon/index.js\",\n\t\"./components/Icon/src/Icon\": \"./src/components/Icon/src/Icon.vue\",\n\t\"./components/Icon/src/Icon.vue\": \"./src/components/Icon/src/Icon.vue\",\n\t\"./components/Icon/src/IconSelect\": \"./src/components/Icon/src/IconSelect.vue\",\n\t\"./components/Icon/src/IconSelect.vue\": \"./src/components/Icon/src/IconSelect.vue\",\n\t\"./components/Icon/src/data\": \"./src/components/Icon/src/data.js\",\n\t\"./components/Icon/src/data.js\": \"./src/components/Icon/src/data.js\",\n\t\"./components/auto-height\": \"./src/components/auto-height/index.vue\",\n\t\"./components/auto-height/\": \"./src/components/auto-height/index.vue\",\n\t\"./components/auto-height/index\": \"./src/components/auto-height/index.vue\",\n\t\"./components/auto-height/index.vue\": \"./src/components/auto-height/index.vue\",\n\t\"./components/codemirror-tag\": \"./src/components/codemirror-tag.vue\",\n\t\"./components/codemirror-tag.vue\": \"./src/components/codemirror-tag.vue\",\n\t\"./components/lazy-load-select\": \"./src/components/lazy-load-select.vue\",\n\t\"./components/lazy-load-select.vue\": \"./src/components/lazy-load-select.vue\",\n\t\"./components/ol-dialog-excel\": \"./src/components/ol-dialog-excel.vue\",\n\t\"./components/ol-dialog-excel.vue\": \"./src/components/ol-dialog-excel.vue\",\n\t\"./components/ol-dialog-import\": \"./src/components/ol-dialog-import.vue\",\n\t\"./components/ol-dialog-import.vue\": \"./src/components/ol-dialog-import.vue\",\n\t\"./components/ol-dialog-json\": \"./src/components/ol-dialog-json.vue\",\n\t\"./components/ol-dialog-json.vue\": \"./src/components/ol-dialog-json.vue\",\n\t\"./components/ol-dialog-table\": \"./src/components/ol-dialog-table.vue\",\n\t\"./components/ol-dialog-table.vue\": \"./src/components/ol-dialog-table.vue\",\n\t\"./components/ol-dialog-tagForm\": \"./src/components/ol-dialog-tagForm.vue\",\n\t\"./components/ol-dialog-tagForm.vue\": \"./src/components/ol-dialog-tagForm.vue\",\n\t\"./components/ol-dialog-upload-file\": \"./src/components/ol-dialog-upload-file.vue\",\n\t\"./components/ol-dialog-upload-file.vue\": \"./src/components/ol-dialog-upload-file.vue\",\n\t\"./components/ol-dict-tag\": \"./src/components/ol-dict-tag.vue\",\n\t\"./components/ol-dict-tag.vue\": \"./src/components/ol-dict-tag.vue\",\n\t\"./components/ol-select-dom\": \"./src/components/ol-select-dom.vue\",\n\t\"./components/ol-select-dom.vue\": \"./src/components/ol-select-dom.vue\",\n\t\"./components/ol-sql-preview\": \"./src/components/ol-sql-preview.vue\",\n\t\"./components/ol-sql-preview.vue\": \"./src/components/ol-sql-preview.vue\",\n\t\"./components/ol-table-filter\": \"./src/components/ol-table-filter.vue\",\n\t\"./components/ol-table-filter.vue\": \"./src/components/ol-table-filter.vue\",\n\t\"./components/ol-table-render\": \"./src/components/ol-table-render.vue\",\n\t\"./components/ol-table-render.vue\": \"./src/components/ol-table-render.vue\",\n\t\"./components/ol-table-select\": \"./src/components/ol-table-select.vue\",\n\t\"./components/ol-table-select-config\": \"./src/components/ol-table-select-config.vue\",\n\t\"./components/ol-table-select-config.vue\": \"./src/components/ol-table-select-config.vue\",\n\t\"./components/ol-table-select.vue\": \"./src/components/ol-table-select.vue\",\n\t\"./components/pinia-init\": \"./src/components/pinia-init.vue\",\n\t\"./components/pinia-init.vue\": \"./src/components/pinia-init.vue\",\n\t\"./components/table/model/ModelMixins\": \"./src/components/table/model/ModelMixins.js\",\n\t\"./components/table/model/ModelMixins.js\": \"./src/components/table/model/ModelMixins.js\",\n\t\"./components/table/model/model-index\": \"./src/components/table/model/model-index.vue\",\n\t\"./components/table/model/model-index.vue\": \"./src/components/table/model/model-index.vue\",\n\t\"./components/table/model/ot-left-right\": \"./src/components/table/model/ot-left-right.vue\",\n\t\"./components/table/model/ot-left-right.vue\": \"./src/components/table/model/ot-left-right.vue\",\n\t\"./components/table/model/ot-left-tree-right-table\": \"./src/components/table/model/ot-left-tree-right-table.vue\",\n\t\"./components/table/model/ot-left-tree-right-table.scss\": \"./src/components/table/model/ot-left-tree-right-table.scss\",\n\t\"./components/table/model/ot-left-tree-right-table.vue\": \"./src/components/table/model/ot-left-tree-right-table.vue\",\n\t\"./components/table/model/ot-top-1-bottom-2\": \"./src/components/table/model/ot-top-1-bottom-2.vue\",\n\t\"./components/table/model/ot-top-1-bottom-2.vue\": \"./src/components/table/model/ot-top-1-bottom-2.vue\",\n\t\"./components/table/model/ot-top-2-bottom-1\": \"./src/components/table/model/ot-top-2-bottom-1.vue\",\n\t\"./components/table/model/ot-top-2-bottom-1.vue\": \"./src/components/table/model/ot-top-2-bottom-1.vue\",\n\t\"./components/table/model/ot-top-2-bottom-2\": \"./src/components/table/model/ot-top-2-bottom-2.vue\",\n\t\"./components/table/model/ot-top-2-bottom-2.vue\": \"./src/components/table/model/ot-top-2-bottom-2.vue\",\n\t\"./components/table/model/ot-top-bottom\": \"./src/components/table/model/ot-top-bottom.vue\",\n\t\"./components/table/model/ot-top-bottom.vue\": \"./src/components/table/model/ot-top-bottom.vue\",\n\t\"./components/table/model/splitpanesModel\": \"./src/components/table/model/splitpanesModel.vue\",\n\t\"./components/table/model/splitpanesModel.css\": \"./src/components/table/model/splitpanesModel.css\",\n\t\"./components/table/model/splitpanesModel.vue\": \"./src/components/table/model/splitpanesModel.vue\",\n\t\"./components/table/ol-form\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-form/\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-form/index\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-form/index.vue\": \"./src/components/table/ol-form/index.vue\",\n\t\"./components/table/ol-main-form-sub-table\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-main-form-sub-table/\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-main-form-sub-table/index\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-main-form-sub-table/index.vue\": \"./src/components/table/ol-main-form-sub-table/index.vue\",\n\t\"./components/table/ol-pager\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-pager/\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-pager/index\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-pager/index.vue\": \"./src/components/table/ol-pager/index.vue\",\n\t\"./components/table/ol-tab-table\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-tab-table/\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-tab-table/index\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-tab-table/index.vue\": \"./src/components/table/ol-tab-table/index.vue\",\n\t\"./components/table/ol-table\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/table/ol-table-operate\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-operate/\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-operate/index\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-operate/index.vue\": \"./src/components/table/ol-table-operate/index.vue\",\n\t\"./components/table/ol-table-search\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-search/\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-search/index\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-search/index.vue\": \"./src/components/table/ol-table-search/index.vue\",\n\t\"./components/table/ol-table-tool-btn\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table-tool-btn/\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table-tool-btn/index\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table-tool-btn/index.vue\": \"./src/components/table/ol-table-tool-btn/index.vue\",\n\t\"./components/table/ol-table/\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/columnIndex\": \"./src/components/table/ol-table/components/ol-table-column-config/columnIndex.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/columnIndex.vue\": \"./src/components/table/ol-table/components/ol-table-column-config/columnIndex.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/index\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-config/index.vue\": \"./src/components/table/ol-table/components/ol-table-column-config/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color/\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color/index\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-column-dict-color/index.vue\": \"./src/components/table/ol-table/components/ol-table-column-dict-color/index.vue\",\n\t\"./components/table/ol-table/components/ol-table-filter-render/filterRender\": \"./src/components/table/ol-table/components/ol-table-filter-render/filterRender.vue\",\n\t\"./components/table/ol-table/components/ol-table-filter-render/filterRender.vue\": \"./src/components/table/ol-table/components/ol-table-filter-render/filterRender.vue\",\n\t\"./components/table/ol-table/index\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/table/ol-table/index.vue\": \"./src/components/table/ol-table/index.vue\",\n\t\"./components/tree\": \"./src/components/tree/index.vue\",\n\t\"./components/tree/\": \"./src/components/tree/index.vue\",\n\t\"./components/tree/components/o-tree\": \"./src/components/tree/components/o-tree.vue\",\n\t\"./components/tree/components/o-tree.vue\": \"./src/components/tree/components/o-tree.vue\",\n\t\"./components/tree/index\": \"./src/components/tree/index.vue\",\n\t\"./components/tree/index.vue\": \"./src/components/tree/index.vue\",\n\t\"./components/v-component\": \"./src/components/v-component/index.vue\",\n\t\"./components/v-component/\": \"./src/components/v-component/index.vue\",\n\t\"./components/v-component/index\": \"./src/components/v-component/index.vue\",\n\t\"./components/v-component/index.vue\": \"./src/components/v-component/index.vue\",\n\t\"./config/dev-config\": \"./src/config/dev-config.js\",\n\t\"./config/dev-config.js\": \"./src/config/dev-config.js\",\n\t\"./config/prod-config\": \"./src/config/prod-config.js\",\n\t\"./config/prod-config.js\": \"./src/config/prod-config.js\",\n\t\"./config/shared-config\": \"./src/config/shared-config.js\",\n\t\"./config/shared-config.js\": \"./src/config/shared-config.js\",\n\t\"./directives/permission/hasPermi\": \"./src/directives/permission/hasPermi.js\",\n\t\"./directives/permission/hasPermi.js\": \"./src/directives/permission/hasPermi.js\",\n\t\"./directives/permission/hasRole\": \"./src/directives/permission/hasRole.js\",\n\t\"./directives/permission/hasRole.js\": \"./src/directives/permission/hasRole.js\",\n\t\"./main\": \"./src/main.js\",\n\t\"./main.js\": \"./src/main.js\",\n\t\"./mixins/VTMixin\": \"./src/mixins/VTMixin/index.js\",\n\t\"./mixins/VTMixin/\": \"./src/mixins/VTMixin/index.js\",\n\t\"./mixins/VTMixin/DefaultMethods\": \"./src/mixins/VTMixin/DefaultMethods.js\",\n\t\"./mixins/VTMixin/DefaultMethods.js\": \"./src/mixins/VTMixin/DefaultMethods.js\",\n\t\"./mixins/VTMixin/OForm\": \"./src/mixins/VTMixin/OForm.js\",\n\t\"./mixins/VTMixin/OForm.js\": \"./src/mixins/VTMixin/OForm.js\",\n\t\"./mixins/VTMixin/OTMixinBody\": \"./src/mixins/VTMixin/OTMixinBody.js\",\n\t\"./mixins/VTMixin/OTMixinBody.js\": \"./src/mixins/VTMixin/OTMixinBody.js\",\n\t\"./mixins/VTMixin/OTMixinBodyFooter\": \"./src/mixins/VTMixin/OTMixinBodyFooter.js\",\n\t\"./mixins/VTMixin/OTMixinBodyFooter.js\": \"./src/mixins/VTMixin/OTMixinBodyFooter.js\",\n\t\"./mixins/VTMixin/OTMixinBodyMethods\": \"./src/mixins/VTMixin/OTMixinBodyMethods.js\",\n\t\"./mixins/VTMixin/OTMixinBodyMethods.js\": \"./src/mixins/VTMixin/OTMixinBodyMethods.js\",\n\t\"./mixins/VTMixin/OTMixinColumnMethod\": \"./src/mixins/VTMixin/OTMixinColumnMethod.js\",\n\t\"./mixins/VTMixin/OTMixinColumnMethod.js\": \"./src/mixins/VTMixin/OTMixinColumnMethod.js\",\n\t\"./mixins/VTMixin/OTMixinInitMethod\": \"./src/mixins/VTMixin/OTMixinInitMethod.js\",\n\t\"./mixins/VTMixin/OTMixinInitMethod.js\": \"./src/mixins/VTMixin/OTMixinInitMethod.js\",\n\t\"./mixins/VTMixin/OTMixinPager\": \"./src/mixins/VTMixin/OTMixinPager.js\",\n\t\"./mixins/VTMixin/OTMixinPager.js\": \"./src/mixins/VTMixin/OTMixinPager.js\",\n\t\"./mixins/VTMixin/OTMixinSortable\": \"./src/mixins/VTMixin/OTMixinSortable.js\",\n\t\"./mixins/VTMixin/OTMixinSortable.js\": \"./src/mixins/VTMixin/OTMixinSortable.js\",\n\t\"./mixins/VTMixin/index\": \"./src/mixins/VTMixin/index.js\",\n\t\"./mixins/VTMixin/index.js\": \"./src/mixins/VTMixin/index.js\",\n\t\"./package\": \"./src/package/index.js\",\n\t\"./package/\": \"./src/package/index.js\",\n\t\"./package/index\": \"./src/package/index.js\",\n\t\"./package/index.js\": \"./src/package/index.js\",\n\t\"./store/dict\": \"./src/store/dict.js\",\n\t\"./store/dict.js\": \"./src/store/dict.js\",\n\t\"./store/dictType\": \"./src/store/dictType.js\",\n\t\"./store/dictType.js\": \"./src/store/dictType.js\",\n\t\"./store/permi\": \"./src/store/permi.js\",\n\t\"./store/permi.js\": \"./src/store/permi.js\",\n\t\"./styles/common.scss\": \"./src/styles/common.scss\",\n\t\"./styles/global.module.scss\": \"./src/styles/global.module.scss\",\n\t\"./styles/index.scss\": \"./src/styles/index.scss\",\n\t\"./styles/theme.scss\": \"./src/styles/theme.scss\",\n\t\"./styles/variables.scss\": \"./src/styles/variables.scss\",\n\t\"./utils/AESCRUDUtils\": \"./src/utils/AESCRUDUtils.js\",\n\t\"./utils/AESCRUDUtils.js\": \"./src/utils/AESCRUDUtils.js\",\n\t\"./utils/DateUtils\": \"./src/utils/DateUtils.js\",\n\t\"./utils/DateUtils.js\": \"./src/utils/DateUtils.js\",\n\t\"./utils/ExcelUtil\": \"./src/utils/ExcelUtil.js\",\n\t\"./utils/ExcelUtil.js\": \"./src/utils/ExcelUtil.js\",\n\t\"./utils/FilterType\": \"./src/utils/FilterType.js\",\n\t\"./utils/FilterType.js\": \"./src/utils/FilterType.js\",\n\t\"./utils/NumberGenerator\": \"./src/utils/NumberGenerator.mjs\",\n\t\"./utils/NumberGenerator.mjs\": \"./src/utils/NumberGenerator.mjs\",\n\t\"./utils/TableSortUtil\": \"./src/utils/TableSortUtil.js\",\n\t\"./utils/TableSortUtil.js\": \"./src/utils/TableSortUtil.js\",\n\t\"./utils/columnProp\": \"./src/utils/columnProp.js\",\n\t\"./utils/columnProp.js\": \"./src/utils/columnProp.js\",\n\t\"./utils/filterUtil\": \"./src/utils/filterUtil.js\",\n\t\"./utils/filterUtil.js\": \"./src/utils/filterUtil.js\",\n\t\"./utils/formUtils\": \"./src/utils/formUtils.js\",\n\t\"./utils/formUtils.js\": \"./src/utils/formUtils.js\",\n\t\"./utils/groupCompute\": \"./src/utils/groupCompute.js\",\n\t\"./utils/groupCompute.js\": \"./src/utils/groupCompute.js\",\n\t\"./utils/http/httpFactory\": \"./src/utils/http/httpFactory.js\",\n\t\"./utils/http/httpFactory.js\": \"./src/utils/http/httpFactory.js\",\n\t\"./utils/http/httpFactory2\": \"./src/utils/http/httpFactory2.js\",\n\t\"./utils/http/httpFactory2.js\": \"./src/utils/http/httpFactory2.js\",\n\t\"./utils/http/httpUtil\": \"./src/utils/http/httpUtil.js\",\n\t\"./utils/http/httpUtil.js\": \"./src/utils/http/httpUtil.js\",\n\t\"./utils/http/httpUtils\": \"./src/utils/http/httpUtils.js\",\n\t\"./utils/http/httpUtils.js\": \"./src/utils/http/httpUtils.js\",\n\t\"./utils/loadStyle\": \"./src/utils/loadStyle.js\",\n\t\"./utils/loadStyle.js\": \"./src/utils/loadStyle.js\",\n\t\"./utils/message\": \"./src/utils/message.js\",\n\t\"./utils/message.js\": \"./src/utils/message.js\",\n\t\"./utils/object\": \"./src/utils/object.js\",\n\t\"./utils/object.js\": \"./src/utils/object.js\",\n\t\"./utils/propTypes\": \"./src/utils/propTypes.js\",\n\t\"./utils/propTypes.js\": \"./src/utils/propTypes.js\",\n\t\"./utils/tree\": \"./src/utils/tree.js\",\n\t\"./utils/tree.js\": \"./src/utils/tree.js\",\n\t\"./utils/useDesign\": \"./src/utils/useDesign.js\",\n\t\"./utils/useDesign.js\": \"./src/utils/useDesign.js\",\n\t\"./utils/util\": \"./src/utils/util.js\",\n\t\"./utils/util.js\": \"./src/utils/util.js\",\n\t\"./views/components/btn-config\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/btn-config/\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/btn-config/index\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/btn-config/index.vue\": \"./src/views/components/btn-config/index.vue\",\n\t\"./views/components/option-config\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/components/option-config/\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/components/option-config/index\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/components/option-config/index.vue\": \"./src/views/components/option-config/index.vue\",\n\t\"./views/db\": \"./src/views/db/index.vue\",\n\t\"./views/db/\": \"./src/views/db/index.vue\",\n\t\"./views/db/chineseToEnglish\": \"./src/views/db/chineseToEnglish.vue\",\n\t\"./views/db/chineseToEnglish.vue\": \"./src/views/db/chineseToEnglish.vue\",\n\t\"./views/db/filed\": \"./src/views/db/filed.vue\",\n\t\"./views/db/filed.vue\": \"./src/views/db/filed.vue\",\n\t\"./views/db/index\": \"./src/views/db/index.vue\",\n\t\"./views/db/index.vue\": \"./src/views/db/index.vue\",\n\t\"./views/db/preview\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/index\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/index.vue\": \"./src/views/db/preview/index.vue\",\n\t\"./views/db/preview/left\": \"./src/views/db/preview/left.vue\",\n\t\"./views/db/preview/left.vue\": \"./src/views/db/preview/left.vue\",\n\t\"./views/db/preview/right\": \"./src/views/db/preview/right.vue\",\n\t\"./views/db/preview/right.vue\": \"./src/views/db/preview/right.vue\",\n\t\"./views/table\": \"./src/views/table/index.vue\",\n\t\"./views/table/\": \"./src/views/table/index.vue\",\n\t\"./views/table/add-or-edit\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/config\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/card-form\": \"./src/views/table/add-or-edit/config/base-config/card-form.vue\",\n\t\"./views/table/add-or-edit/config/base-config/card-form.vue\": \"./src/views/table/add-or-edit/config/base-config/card-form.vue\",\n\t\"./views/table/add-or-edit/config/base-config/index\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/index.vue\": \"./src/views/table/add-or-edit/config/base-config/index.vue\",\n\t\"./views/table/add-or-edit/config/base-config/table-form\": \"./src/views/table/add-or-edit/config/base-config/table-form.vue\",\n\t\"./views/table/add-or-edit/config/base-config/table-form.vue\": \"./src/views/table/add-or-edit/config/base-config/table-form.vue\",\n\t\"./views/table/add-or-edit/config/card-config\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/card-config/\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-config\": \"./src/views/table/add-or-edit/config/card-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-config.vue\": \"./src/views/table/add-or-edit/config/card-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-sort\": \"./src/views/table/add-or-edit/config/card-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/card-config/btn-sort.vue\": \"./src/views/table/add-or-edit/config/card-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/card-config/index\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/card-config/index.vue\": \"./src/views/table/add-or-edit/config/card-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config/\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config/header-config\": \"./src/views/table/add-or-edit/config/column-config/header-config.vue\",\n\t\"./views/table/add-or-edit/config/column-config/header-config.vue\": \"./src/views/table/add-or-edit/config/column-config/header-config.vue\",\n\t\"./views/table/add-or-edit/config/column-config/index\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/column-config/index.vue\": \"./src/views/table/add-or-edit/config/column-config/index.vue\",\n\t\"./views/table/add-or-edit/config/data/column\": \"./src/views/table/add-or-edit/config/data/column.js\",\n\t\"./views/table/add-or-edit/config/data/column.js\": \"./src/views/table/add-or-edit/config/data/column.js\",\n\t\"./views/table/add-or-edit/config/data/crud\": \"./src/views/table/add-or-edit/config/data/crud.js\",\n\t\"./views/table/add-or-edit/config/data/crud.js\": \"./src/views/table/add-or-edit/config/data/crud.js\",\n\t\"./views/table/add-or-edit/config/data/events\": \"./src/views/table/add-or-edit/config/data/events.js\",\n\t\"./views/table/add-or-edit/config/data/events.js\": \"./src/views/table/add-or-edit/config/data/events.js\",\n\t\"./views/table/add-or-edit/config/data/method\": \"./src/views/table/add-or-edit/config/data/method.js\",\n\t\"./views/table/add-or-edit/config/data/method.js\": \"./src/views/table/add-or-edit/config/data/method.js\",\n\t\"./views/table/add-or-edit/config/data/option\": \"./src/views/table/add-or-edit/config/data/option.js\",\n\t\"./views/table/add-or-edit/config/data/option.js\": \"./src/views/table/add-or-edit/config/data/option.js\",\n\t\"./views/table/add-or-edit/config/data/page\": \"./src/views/table/add-or-edit/config/data/page.js\",\n\t\"./views/table/add-or-edit/config/data/page.js\": \"./src/views/table/add-or-edit/config/data/page.js\",\n\t\"./views/table/add-or-edit/config/field-config\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/field-config/\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/field-config/filed-config-table\": \"./src/views/table/add-or-edit/config/field-config/filed-config-table.vue\",\n\t\"./views/table/add-or-edit/config/field-config/filed-config-table.vue\": \"./src/views/table/add-or-edit/config/field-config/filed-config-table.vue\",\n\t\"./views/table/add-or-edit/config/field-config/index\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/field-config/index.vue\": \"./src/views/table/add-or-edit/config/field-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config/\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config/index\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/form-config/index.vue\": \"./src/views/table/add-or-edit/config/form-config/index.vue\",\n\t\"./views/table/add-or-edit/config/index\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/index.vue\": \"./src/views/table/add-or-edit/config/index.vue\",\n\t\"./views/table/add-or-edit/config/initFormObject\": \"./src/views/table/add-or-edit/config/initFormObject.js\",\n\t\"./views/table/add-or-edit/config/initFormObject.js\": \"./src/views/table/add-or-edit/config/initFormObject.js\",\n\t\"./views/table/add-or-edit/config/script-config\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/script-config/\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/script-config/LeftMeun\": \"./src/views/table/add-or-edit/config/script-config/LeftMeun.vue\",\n\t\"./views/table/add-or-edit/config/script-config/LeftMeun.vue\": \"./src/views/table/add-or-edit/config/script-config/LeftMeun.vue\",\n\t\"./views/table/add-or-edit/config/script-config/index\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/script-config/index.vue\": \"./src/views/table/add-or-edit/config/script-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config/\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-config\": \"./src/views/table/add-or-edit/config/table-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-config.vue\": \"./src/views/table/add-or-edit/config/table-config/btn-config.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-sort\": \"./src/views/table/add-or-edit/config/table-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/table-config/btn-sort.vue\": \"./src/views/table/add-or-edit/config/table-config/btn-sort.vue\",\n\t\"./views/table/add-or-edit/config/table-config/index\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/config/table-config/index.vue\": \"./src/views/table/add-or-edit/config/table-config/index.vue\",\n\t\"./views/table/add-or-edit/configOld\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config-table-model\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config-table-model.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config-table-model.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config-table-model.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/filed-config.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/filed-config.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/index\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/index.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/set-table-sql\": \"./src/views/table/add-or-edit/configOld/dataTags/set-table-sql.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/set-table-sql.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/set-table-sql.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/table-on-config\": \"./src/views/table/add-or-edit/configOld/dataTags/table-on-config.vue\",\n\t\"./views/table/add-or-edit/configOld/dataTags/table-on-config.vue\": \"./src/views/table/add-or-edit/configOld/dataTags/table-on-config.vue\",\n\t\"./views/table/add-or-edit/configOld/index\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/index.vue\": \"./src/views/table/add-or-edit/configOld/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/columnConfig\": \"./src/views/table/add-or-edit/configOld/tableTags/columnConfig.js\",\n\t\"./views/table/add-or-edit/configOld/tableTags/columnConfig.js\": \"./src/views/table/add-or-edit/configOld/tableTags/columnConfig.js\",\n\t\"./views/table/add-or-edit/configOld/tableTags/index\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/index.vue\": \"./src/views/table/add-or-edit/configOld/tableTags/index.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/operation-but-config\": \"./src/views/table/add-or-edit/configOld/tableTags/operation-but-config.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/operation-but-config.vue\": \"./src/views/table/add-or-edit/configOld/tableTags/operation-but-config.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/tool-but-config\": \"./src/views/table/add-or-edit/configOld/tableTags/tool-but-config.vue\",\n\t\"./views/table/add-or-edit/configOld/tableTags/tool-but-config.vue\": \"./src/views/table/add-or-edit/configOld/tableTags/tool-but-config.vue\",\n\t\"./views/table/add-or-edit/index\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/index.vue\": \"./src/views/table/add-or-edit/index.vue\",\n\t\"./views/table/add-or-edit/themeModel\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/index\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/index.vue\": \"./src/views/table/add-or-edit/themeModel/index.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model\": \"./src/views/table/add-or-edit/themeModel/init-model.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model-table\": \"./src/views/table/add-or-edit/themeModel/init-model-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model-table.vue\": \"./src/views/table/add-or-edit/themeModel/init-model-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/init-model.vue\": \"./src/views/table/add-or-edit/themeModel/init-model.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-right\": \"./src/views/table/add-or-edit/themeModel/left-right.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-right.vue\": \"./src/views/table/add-or-edit/themeModel/left-right.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-tree-right-table\": \"./src/views/table/add-or-edit/themeModel/left-tree-right-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/left-tree-right-table.vue\": \"./src/views/table/add-or-edit/themeModel/left-tree-right-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/olTableSearchModelMixins\": \"./src/views/table/add-or-edit/themeModel/olTableSearchModelMixins.js\",\n\t\"./views/table/add-or-edit/themeModel/olTableSearchModelMixins.js\": \"./src/views/table/add-or-edit/themeModel/olTableSearchModelMixins.js\",\n\t\"./views/table/add-or-edit/themeModel/splitpanesThemeModel\": \"./src/views/table/add-or-edit/themeModel/splitpanesThemeModel.vue\",\n\t\"./views/table/add-or-edit/themeModel/splitpanesThemeModel.vue\": \"./src/views/table/add-or-edit/themeModel/splitpanesThemeModel.vue\",\n\t\"./views/table/add-or-edit/themeModel/tab-table\": \"./src/views/table/add-or-edit/themeModel/tab-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/tab-table.vue\": \"./src/views/table/add-or-edit/themeModel/tab-table.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-1-bottom-2\": \"./src/views/table/add-or-edit/themeModel/top-1-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-1-bottom-2.vue\": \"./src/views/table/add-or-edit/themeModel/top-1-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-1\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-1.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-1.vue\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-1.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-2\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-2-bottom-2.vue\": \"./src/views/table/add-or-edit/themeModel/top-2-bottom-2.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-bottom\": \"./src/views/table/add-or-edit/themeModel/top-bottom.vue\",\n\t\"./views/table/add-or-edit/themeModel/top-bottom.vue\": \"./src/views/table/add-or-edit/themeModel/top-bottom.vue\",\n\t\"./views/table/index\": \"./src/views/table/index.vue\",\n\t\"./views/table/index.vue\": \"./src/views/table/index.vue\",\n\t\"./views/table/index2\": \"./src/views/table/index2.vue\",\n\t\"./views/table/index2.vue\": \"./src/views/table/index2.vue\",\n\t\"./views/table/preview\": \"./src/views/table/preview/index.vue\",\n\t\"./views/table/preview/\": \"./src/views/table/preview/index.vue\",\n\t\"./views/table/preview/index\": \"./src/views/table/preview/index.vue\",\n\t\"./views/table/preview/index.vue\": \"./src/views/table/preview/index.vue\",\n\t\"./views/tree\": \"./src/views/tree/index.vue\",\n\t\"./views/tree/\": \"./src/views/tree/index.vue\",\n\t\"./views/tree/components/config-core-data\": \"./src/views/tree/components/config-core-data.vue\",\n\t\"./views/tree/components/config-core-data.vue\": \"./src/views/tree/components/config-core-data.vue\",\n\t\"./views/tree/components/config-core-table\": \"./src/views/tree/components/config-core-table.vue\",\n\t\"./views/tree/components/config-core-table.vue\": \"./src/views/tree/components/config-core-table.vue\",\n\t\"./views/tree/components/config-core-tree\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/config-core-tree/\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/config-core-tree/data/events\": \"./src/views/tree/components/config-core-tree/data/events.js\",\n\t\"./views/tree/components/config-core-tree/data/events.js\": \"./src/views/tree/components/config-core-tree/data/events.js\",\n\t\"./views/tree/components/config-core-tree/data/option\": \"./src/views/tree/components/config-core-tree/data/option.js\",\n\t\"./views/tree/components/config-core-tree/data/option.js\": \"./src/views/tree/components/config-core-tree/data/option.js\",\n\t\"./views/tree/components/config-core-tree/data/prop\": \"./src/views/tree/components/config-core-tree/data/prop.js\",\n\t\"./views/tree/components/config-core-tree/data/prop.js\": \"./src/views/tree/components/config-core-tree/data/prop.js\",\n\t\"./views/tree/components/config-core-tree/index\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/components/config-core-tree/index.vue\": \"./src/views/tree/components/config-core-tree/index.vue\",\n\t\"./views/tree/index\": \"./src/views/tree/index.vue\",\n\t\"./views/tree/index.vue\": \"./src/views/tree/index.vue\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./src sync recursive ^\\\\.\\\\/.*$\";\n\n//# sourceURL=webpack://olp-table/./src/_sync_^\\.\\/.*$?");
|
|
10772
10729
|
|
|
10773
10730
|
/***/ }),
|
|
10774
10731
|
|
|
@@ -12720,7 +12677,18 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _sty
|
|
|
12720
12677
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
12721
12678
|
|
|
12722
12679
|
"use strict";
|
|
12723
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultMethods: function() { return /* binding */ DefaultMethods; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _utils_ExcelUtil__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/ExcelUtil */ \"./src/utils/ExcelUtil.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _utils_groupCompute__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/groupCompute */ \"./src/utils/groupCompute.js\");\n\n\n\n\n\n\n\n\n\nconst message = (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)(); // 消息弹窗\nconst DefaultMethods = {\n methods: {\n //删除主子表\n async doRemoveMainAndSub({\n obj,\n row\n }, subTableName, whereObj, subForeignKey, content) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n this.doPostAes(obj.code, '/online/crudAes/deleteMainAndSubs', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n subTableName: subTableName,\n whereMap: this.doGetWhereMap(row, whereObj),\n //更新条件\n subForeignKey: subForeignKey\n });\n },\n /**\r\n * 操作列保存:直接在操作按钮的自定义事件加入代码:this.doOneSave(o,'是否要保存数据')\r\n * @param obj 单击按钮的对象\r\n * @param row 单击当前行\r\n * @param content 提示内容\r\n * @returns {Promise<void>}\r\n */\n async doOneSave({\n obj,\n row\n }, content) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n if (!row) {\n vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.message({\n content: \"数据为空!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let dataSource = this.table.dataSource;\n if (!dataSource) {\n return;\n }\n let newRow = JSON.parse(JSON.stringify(row));\n try {\n newRow[this.formMainList.edit.formMain.updateKey] = '';\n } catch (e) {}\n let params = {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n genIdMap: {\n [this.formMainList.edit.formMain.updateKey]: 'uuid'\n },\n columnAndValueMap: this.getColumnTableUpdateValue(this.table.columns, newRow)\n };\n this.doPostAes(obj.code, '/online/crudAes/save', params);\n },\n /**\r\n * 操作列更新:直接在操作按钮的自定义事件加入代码:this.doOneModify(o,'数据库更新字段=数据值,数据库更新字段:列字段,数据库更新字段','数据库更新条件','提示内容')\r\n *\r\n * @param obj 单击按钮的对象\r\n * @param row 单击当前行\r\n * @param updateObj\r\n * @param whereObj\r\n * @param content\r\n * @returns {Promise<void>}\r\n */\n async doOneModify({\n obj,\n row\n }, updateObj, whereObj, content) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n let newRow = JSON.parse(JSON.stringify(row));\n this.doPostAes(obj.code, '/online/crudAes/modify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n columnAndValueMap: this.doGetColumnAndValueMap(newRow, updateObj),\n //更新字段\n whereMap: this.doGetWhereMap(newRow, whereObj) //更新条件\n });\n },\n /**\r\n * 批量更新\r\n * @param code\r\n * @param updateObj\r\n * @param whereObj\r\n * @param content\r\n * @param updateRecords 如果为空,获取全部选中数据\r\n * @returns {Promise<void>}\r\n */\n async doBatchModify(code, updateObj, whereObj, content, updateRecords) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n let rows = updateRecords;\n if (!updateRecords || updateRecords.length <= 0) {\n rows = this.getSelectRows();\n }\n if (rows.length == 0) {\n vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.message({\n content: \"请选数据!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let list = [];\n for (const row of rows) {\n list.push({\n columnAndValueMap: this.doGetColumnAndValueMap(row, updateObj),\n //更新字段\n whereMap: this.doGetWhereMap(row, whereObj) //更新条件\n });\n }\n this.doPostAes(code, '/online/crudAes/batchModify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list\n });\n },\n /**\r\n * 直接发送post请求\r\n * @param code\r\n * @param url\r\n * @param params\r\n */\n doPostAes(code, url, params, noQuery) {\n if (code != undefined) {\n this.loading[code] = true;\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, url, params).then(r => {\n if (r != false && noQuery != false) {\n this.query();\n }\n }).finally(() => {\n if (code != undefined) {\n this.loading[code] = false;\n }\n });\n },\n /**\r\n * 根据列配置获取数据库表更新数据\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n prop,\n tableField\n } of column) {\n if (!tableField || tableField != '1') {\n continue;\n }\n let value = formData[prop];\n if (value) {\n if (value instanceof String) {\n value = value.trim();\n }\n columnAndValueMap[prop] = value;\n }\n }\n return columnAndValueMap;\n },\n /**\r\n * 获取表格更新列值\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getColumnTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n field,\n tableSaveToOtherProp\n } of column) {\n // 勾选,不属于数据库表字段\n if (tableSaveToOtherProp && tableSaveToOtherProp == '1') {\n continue;\n }\n let value = formData[field];\n if (value) {\n if (value instanceof String) {\n value = value.trim();\n }\n columnAndValueMap[field] = value;\n }\n }\n return columnAndValueMap;\n },\n /**\r\n * 获取row更新值\r\n * @param row\r\n * @param updateObj 更新对象,允许为:\"name='xx',name\" 如果name=xx,数据直接赋值,如果没有=,则使用row的值\r\n * @returns {{}}\r\n */\n doGetColumnAndValueMap(row, updateObj) {\n let columnAndValueMap = {};\n for (let key of updateObj.split(\",\")) {\n let k = key.split(\"=\");\n if (k.length == 2) {\n columnAndValueMap[k[0]] = k[1];\n } else {\n k = key.split(\":\");\n columnAndValueMap[k[k.length - 1]] = row[k[0]];\n }\n }\n return columnAndValueMap;\n },\n doGetColumnAndValueAny(rows, updateObj) {\n if (!updateObj) {\n return rows;\n }\n let list = [];\n let keys = [];\n let hasKey = '';\n for (const row of rows) {\n keys = keys.length >= 1 ? keys : Object.keys(row);\n if (!hasKey) {\n hasKey = this.hasUpdateKey(keys, updateObj);\n }\n if (hasKey) {\n Object.assign(row, this.doGetColumnAndValueMap(row, updateObj));\n }\n list.push(row);\n }\n return list;\n },\n hasUpdateKey(keys, updateObj) {\n for (const key of keys) {\n if (updateObj.indexOf(key) >= 0) {\n return '1';\n }\n }\n return '0';\n },\n doGetWhereMap(row, whereObj) {\n let whereMap = {};\n for (let key of whereObj.split(\",\")) {\n let k = key.split(\":\");\n //className:class_name row:{className:'xxx'} whereMap:{class_name}\n whereMap[k[k.length - 1]] = row[k[0]];\n }\n return whereMap;\n },\n /**\r\n * 内置批量删除方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n batchRemove() {\n this.confirm(\"您选中\" + this.getSelectRows().length + '条数据,删除后不可恢复,您确定要删除吗?', '删除提示', 'error').then(type => {\n if (type != \"cancel\") {\n let list = [];\n for (let r of this.getSelectRows()) {\n let p = JSON.parse(JSON.stringify(this.deleteParameter));\n delete p['$parentId'];\n for (let key of Object.keys(p)) {\n p[key] = r[key];\n }\n list.push(p);\n }\n this.loading['batchDelete'] = true;\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, '/online/crudAes/batchDelete', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list: list\n }).then(r => {\n if (r != false) {\n this.query();\n }\n }).finally(() => {\n this.loading['batchDelete'] = false;\n });\n }\n });\n },\n /**\r\n * 内置重置方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n resetQuery() {\n for (let k of Object.keys(this.table.formConfig.data)) {\n this.table.formConfig.data[k] = undefined;\n }\n for (let k of Object.keys(this.parameter)) {\n this.parameter[k] = undefined;\n }\n this.initDefaultValue();\n this.query();\n },\n /**\r\n * 内置根据参数查询\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n queryParams(parameter) {\n if (parameter) {\n Object.assign(this.parameter, parameter);\n }\n return this.query();\n },\n /**\r\n * 内置查询\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n query() {\n let axios = undefined;\n if (this.tableConfig.definitionSql == 2) {\n if (this.tableConfig.requestType == '1') {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, this.tableConfig.api, this.getParams(), false, false);\n } else {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.get)(this.http, this.tableConfig.api, this.getParams(), false);\n }\n } else if (this.tableConfig.aes == 1) {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, '/online/crudAes/query', this.getParams(), false, false);\n } else {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, '/online/crud/query', this.getParams(), false, false);\n }\n this.doQuery(axios);\n },\n doQuery(axios) {\n if (this.loading['select']) {\n return;\n }\n this.table.loading = true;\n this.loading['select'] = true;\n axios.then(({\n data,\n code,\n msg\n }) => {\n if (code != 200 && code != 0) {\n message.error(msg);\n return;\n }\n let respData = data instanceof Array ? data : data.listData;\n if (this.table.treeConfig) {\n //id , parentId , children\n respData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_3__.handleTree)(respData, this.table.treeConfig.treeId, this.table.treeConfig.treeParentId);\n }\n this.table.data = respData;\n this.doGroupAndCompute(respData);\n this.pagination.total = data.count;\n }).finally(() => {\n this.table.loading = false;\n this.loading['select'] = false;\n });\n },\n /**\r\n * 内置删除方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n remove(o) {\n let {\n row\n } = o;\n this.confirm('数据删除后不可恢复,您确定要删除吗?', '删除提示', 'error').then(type => {\n if (type != \"cancel\") {\n let params = {};\n for (let key of Object.keys(this.deleteParameter)) {\n if (key != '$parentId') {\n params[key] = row[key];\n }\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, '/online/crudAes/delete', {\n where: params,\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable\n }).then(r => {\n if (r != false) {\n this.query();\n }\n });\n }\n });\n },\n /**\r\n * 获取查询参数\r\n * @returns {{enablePage: OTMixinBodyMethods.methods.pagination.enabled, theme: OTMixinBodyMethods.methods.theme, id: OTMixinBodyMethods.methods.uuid}}\r\n */\n getParams() {\n if (this.tableConfig.definitionSql == 2) {\n let params = JSON.parse(JSON.stringify(this.table.formConfig.data));\n if (params.enablePage) {\n params.pageNumber = this.pagination.currentPage;\n params.pageSize = this.pagination.pageSize;\n }\n return {\n ...this.parameter,\n ...params\n };\n }\n let params = {\n id: this.uuid,\n theme: this.theme,\n enablePage: this.pagination.enabled\n };\n if (params.enablePage) {\n params.pageNumber = this.pagination.currentPage;\n params.pageSize = this.pagination.pageSize;\n }\n let paramsKey = [];\n for (let o of this.table.formConfig.items) {\n let value = this.table.formConfig.data[o.key];\n if (value == undefined || value == '' || o.itemRender && o.itemRender.name == '$buttons') {\n continue;\n }\n let key = o.key.replace(/\\$/g, '');\n //文本域\n if (o.itemRender && o.itemRender.name == \"textarea\" && o.type != \"9\") {\n let values = value instanceof Array ? value : value.split(\"\\n\");\n if (values.length != 0) {\n let queryParameterMapIn = [];\n for (let v of values) {\n if (v != undefined && v.toString().trim() != '') {\n queryParameterMapIn.push(v);\n }\n }\n if (queryParameterMapIn.length != 0) {\n if (!params['queryParameterMapIn']) {\n params['queryParameterMapIn'] = {};\n }\n params['queryParameterMapIn'][key] = queryParameterMapIn;\n paramsKey.push(key);\n } else if (params['queryParameterMapIn']) {\n delete params['queryParameterMapIn'][key];\n }\n }\n } else if (value.toString().trim() != '') {\n if (!params['queryParameterListAnd']) {\n params['queryParameterListAnd'] = [];\n }\n let values = value instanceof Array ? value : value.split(\",\");\n if (o.type == \"98\") {\n params['queryParameterListAnd'].push({\n value: values[0],\n key: key,\n type: 5,\n toDate: o.toDate\n });\n params['queryParameterListAnd'].push({\n value: values[1],\n key: key,\n type: 6,\n toDate: o.toDate\n });\n paramsKey.push(key);\n } else if (!(values instanceof Array)) {\n let isNumber = o.selectDom == 7;\n o.value = value;\n //type 查询类型 默认等于1--> 1:= 2:!= 3: > 4:< 5: >= 6: <= 7:like '%value' 8:like '%value%' 9:like 'value%'\n //replace(/\\$/g, '') 目的解决范围\n let obj = {\n value: isNumber ? Number(value) : value,\n key: key,\n type: o.type,\n toDate: o.toDate\n };\n params['queryParameterListAnd'].push(obj);\n paramsKey.push(key);\n } else {\n let isNumber = o.selectDom == 7;\n for (let v of values) {\n if (!v) {\n continue;\n }\n let obj = {\n value: isNumber ? Number(v) : v,\n key: key,\n type: o.type,\n toDate: o.toDate\n };\n params['queryParameterListAnd'].push(obj);\n paramsKey.push(key);\n }\n }\n }\n }\n for (let key of Object.keys(this.parameter)) {\n let v = this.parameter[key];\n if (paramsKey.indexOf(key) === -1 && v != undefined && v != '') {\n if (v instanceof Array) {\n if (!params['queryParameterMapIn']) {\n params['queryParameterMapIn'] = {};\n }\n params['queryParameterMapIn'][key] = v;\n } else {\n if (!params['queryParameterListAnd']) {\n params['queryParameterListAnd'] = [];\n }\n params['queryParameterListAnd'].push({\n key: key,\n value: v\n });\n }\n }\n }\n if (this.orderByColumns.length != 0) {\n params['orderBy'] = this.orderByColumns;\n }\n params.authVo = {\n \"tableAliasFiled\": this.tableConfig.tableAliasFiled,\n \"departmentFiled\": this.tableConfig.userFiled,\n \"userFiled\": this.tableConfig.userFiled\n };\n if (this.events['queryBefore']) {\n this.events['queryBefore'](params);\n }\n return params;\n },\n /**\r\n * 导出数据\r\n * @param columns 自定义导出字段 t_id\r\n * @param selectData 选择数据: 当前页数据、勾选行数据、全部数据\r\n * @param name\r\n */\n exportData({\n exportParam,\n cancelEvent\n }) {\n let {\n columns,\n selectData,\n name\n } = exportParam;\n for (let column of this.table.columns) {\n for (let c of columns) {\n if (column.field === c.field && column.params) {\n c.params = column.params;\n }\n }\n }\n let data = [];\n switch (selectData) {\n case '1':\n // 当前页\n data = this.table?.data;\n break;\n case '2':\n // 勾选\n data = this.getSelectRows();\n if (!data || data.length == 0) return message.error('勾选行数据为空!');\n break;\n case '3':\n // 全部数据\n this.exportExcelAll(columns, name);\n break;\n default:\n data = this.table.data;\n break;\n }\n if (selectData != '3') {\n (0,_utils_ExcelUtil__WEBPACK_IMPORTED_MODULE_6__.exportExcel)({\n data: data,\n name: name,\n columns: columns,\n option: {\n align: this.$table ? this.$table.align : 'center'\n }\n });\n }\n cancelEvent();\n },\n /**\r\n * 全部数据导出\r\n * @param fields 自定义导出字段\r\n * @param name 文件名\r\n */\n exportExcelAll(columns, name) {\n let params = this.getParams();\n params.enablePage = false;\n if (this.tableConfig.definitionSql == 2) {\n params.pageNumber = 1;\n params.pageSize = 50000;\n }\n let url = this.tableConfig.definitionSql == 2 ? this.tableConfig.api : '/online/crud/query';\n let method = this.tableConfig.definitionSql == 2 ? this.tableConfig.requestType == '1' ? 'post' : 'get' : 'post';\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.request)(this.http, {\n url: url,\n method: method,\n data: params,\n timeout: 1000 * 90 * 90\n }, false, false).then(({\n data\n }) => {\n let respData = data instanceof Array ? data : data.listData;\n (0,_utils_ExcelUtil__WEBPACK_IMPORTED_MODULE_6__.exportExcel)({\n data: respData,\n name: name,\n columns: columns,\n option: {\n align: this.$table ? this.$table.align : 'center'\n }\n });\n });\n },\n /**\r\n * 内置确认框\r\n * @param content\r\n * @param title\r\n * @param status\r\n * @returns {Promise<\"model\"|\"mask\"|\"close\"|\"confirm\"|\"cancel\"|\"exit\"|\"exist\">}\r\n */\n async confirm(content, title, status) {\n return await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: title,\n status: status\n });\n },\n /**\r\n * 内置调用方法\r\n * @param m\r\n * @param v\r\n * @param d\r\n */\n emits({\n m,\n v,\n d,\n js\n }) {\n if (typeof js === 'string') {\n eval(js);\n } else if (m && this[m]) {\n this[m](v);\n }\n if (d != false) {\n this.customUrl = undefined;\n }\n },\n /**\r\n * 设置禁用按钮\r\n * @param ex\r\n */\n setAllBtnDisabled(ex) {\n if (ex) {\n ex = ex.split(\",\");\n } else {\n ex = [];\n }\n for (let toolBtn of this.toolBtn) {\n let disabled = true;\n for (let code of ex) {\n if (toolBtn.code == code) {\n disabled = false;\n }\n }\n toolBtn.disabled = disabled;\n }\n for (let toolBtn of this.operationBtn) {\n let disabled = true;\n for (let code of ex) {\n if (toolBtn.code == code) {\n disabled = false;\n }\n }\n toolBtn.disabled = disabled;\n }\n },\n /**\r\n * 设置工具栏 but\r\n * @param code 编码\r\n * @param key 要设置的key\r\n * @param value 要设置的value\r\n */\n setToolBtn(code, key, value) {\n for (let toolBtn of this.toolBtn) {\n if (toolBtn.code == code) {\n toolBtn[key] = value;\n }\n }\n },\n /**\r\n * 获取工具栏 but\r\n * @param code 编码\r\n * @param key 要设置的key\r\n * @param value 要设置的value\r\n */\n getToolBtn(code) {\n for (let toolBtn of this.toolBtn) {\n if (toolBtn.code == code) {\n return toolBtn;\n }\n }\n },\n /**\r\n * 设置操作按钮 but\r\n * @param code 编码\r\n * @param key 要设置的key\r\n * @param value 要设置的value\r\n */\n setOperationBtn(code, key, value) {\n for (let toolBtn of this.operationBtn) {\n if (toolBtn.code == code) {\n toolBtn[key] = value;\n }\n }\n },\n /**\r\n * 获取修改数据(包括未修改数据)\r\n */\n getUpdateRecords() {\n if (this.$table) {\n return this.$table.getUpdateRecords();\n }\n },\n /**\r\n * 批量保存\r\n */\n async batchSave(code, content, rows, foreignKey, foreignKeyValue) {\n console.info('batchSave', code, content, rows);\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n if (rows.length == 0) {\n vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.message({\n content: \"请选数据!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let list = [];\n let updateList = [];\n let dataSource = this.table.dataSource;\n this.formMainList.edit.formMain.updateKey = this.formMainList.edit.formMain.updateKey.trim();\n const srcMap = new Map(dataSource.map(item => [item[this.formMainList.edit.formMain.updateKey], item]));\n for (const row of rows) {\n delete row._X_ROW_KEY; //删除_X_ROW_KEY属性\n let rowId = row[this.formMainList.edit.formMain.updateKey];\n if (rowId) {\n updateList.push({\n columnAndValueMap: this.getDifferingProperties(row, srcMap.get(row[this.formMainList.edit.formMain.updateKey])),\n //更新字段\n whereMap: this.doGetWhereMap(row, this.formMainList.edit.formMain.updateKey) //更新条件\n });\n continue;\n }\n let columnTableUpdateValue = this.getColumnTableUpdateValue(this.table.columns, row);\n if (foreignKey) {\n columnTableUpdateValue[foreignKey] = foreignKeyValue ? foreignKeyValue : this.mainId;\n }\n list.push(columnTableUpdateValue);\n }\n if (updateList && updateList.length >= 1) {\n this.doPostAes(code, '/online/crudAes/batchModify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list: updateList\n });\n }\n if (list && list.length >= 1) {\n this.doPostAes(code, '/online/crudAes/batchSave', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n tableConfigId: this.tableConfig.tableConfigId,\n columnAndValueListMap: list,\n genIdMap: {\n [this.formMainList.edit.formMain.updateKey]: 'uuid'\n }\n });\n }\n },\n /**\r\n * 保存修改\r\n */\n async saveUpdate(code, content) {\n let dataSource = this.table.dataSource;\n const srcMap = new Map(dataSource.map(item => [item[this.formMainList.edit.formMain.updateKey], item]));\n let rows = [];\n for (const row of this.getUpdateRecords()) {\n let src = srcMap.get(row[this.formMainList.edit.formMain.updateKey]);\n rows.push(this.getDifferingProperties(row, src));\n }\n // console.log('saveUpdate:',rows)\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n if (rows.length == 0) {\n vxe_table__WEBPACK_IMPORTED_MODULE_7___default().modal.message({\n content: \"请选数据!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let list = [];\n for (const row of this.getUpdateRecords()) {\n list.push({\n columnAndValueMap: this.getDifferingProperties(row, srcMap.get(row[this.formMainList.edit.formMain.updateKey])),\n //更新字段\n whereMap: this.doGetWhereMap(row, this.formMainList.edit.formMain.updateKey) //更新条件\n });\n }\n this.doPostAes(code, '/online/crudAes/batchModify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list\n });\n // this.doBatchModify('batchModify', \"age\", this.formMainList.edit.formMain.updateKey, \"确认修改编辑数据吗?\", this.getUpdateRecords())\n },\n /**\r\n * 获取新增数据\r\n */\n getInsertEvent() {\n if (this.$table) {\n return this.$table.getInsertRecords();\n }\n },\n /**\r\n * 获取删除数据\r\n * @returns {*}\r\n */\n getRemoveEvent() {\n if (this.$table) {\n return this.$table.getRemoveRecords();\n }\n },\n /**\r\n * 获取选中\r\n * @returns {*|*[]|*[]}\r\n */\n getSelectRows() {\n if (this.selectBox == 1) {\n return this.$table.getRadioRecord() ? [this.$table.getRadioRecord()] : [];\n } else if (this.selectBox == 2) {\n return this.$table.getCheckboxRecords(true);\n }\n },\n updateColumn(rows) {\n this.table['show-footer'] = false;\n if (rows && rows instanceof Array) {\n for (let o of this.table.columns) {\n for (let row of rows) {\n if (row.id == o.id) {\n for (let key of Object.keys(row)) {\n o[key] = row[key];\n }\n }\n }\n this.setColumnHide(o);\n this.setFixed(o);\n this.setShowFooter(o);\n }\n }\n let data = this.table.columns.sort((a, b) => {\n return a.sort - b.sort;\n });\n this.doGroupAndCompute();\n this.$table.reloadColumn(data);\n },\n doGroupAndCompute(dataSource) {\n if (dataSource) {\n this.table.dataSource = JSON.parse(JSON.stringify(dataSource));\n }\n if (this.tableConfig.paging != 2) {\n if (dataSource != undefined) {\n this.table.data = dataSource;\n }\n return;\n }\n let groupKey = [];\n let comValue = [];\n for (let column of this.table.columns) {\n if (column.visible && column.groupToOtherProp == 1) {\n groupKey.push(column.field);\n }\n if (column.groupTotalToOtherProp) {\n comValue.push(column.field + \":\" + column.groupTotalToOtherProp);\n }\n }\n if (dataSource == undefined) {\n dataSource = this.table.dataSource;\n }\n if (groupKey.length != 0 & comValue.length != 0) {\n dataSource = (0,_utils_groupCompute__WEBPACK_IMPORTED_MODULE_8__.groupAndCompute)(groupKey, comValue, dataSource);\n }\n this.table.data = dataSource;\n this.$table.reloadData(this.table.data);\n },\n getDifferingProperties1(tar, src) {\n const differingProperties = {};\n // 假设两个对象都有相同的属性\n for (const key in tar) {\n if (Object.hasOwn(tar, key) && Object.hasOwn(src, key)) {\n if (tar[key] !== src[key]) {\n differingProperties[key] = tar[key]; // 可以选择返回obj2的值,或创建一个数组存放两个值\n }\n }\n }\n return differingProperties;\n },\n getDifferingProperties(tar, src) {\n // 1. 边界处理:非法输入转为空对象\n if (src == null || typeof src !== 'object') src = {};\n if (tar == null || typeof tar !== 'object') tar = {};\n const differingProperties = {};\n\n // 2. 遍历 tar 的自有属性\n for (const key in tar) {\n if (!Object.hasOwn(tar, key)) continue;\n\n // 3. 检查 src 是否有同名自有属性\n if (Object.hasOwn(src, key)) {\n // 4. 深度比较值差异\n if (!this.isEqual(tar[key], src[key])) {\n // 5. 记录差异(存储双方值)\n differingProperties[key] = tar[key];\n }\n }\n // 可选:将 tar 存在而 src 不存在的属性视为差异?\n else {\n differingProperties[key] = tar[key];\n }\n }\n return differingProperties;\n },\n isEqual(a, b) {\n if (a === b) return true;\n if (Number.isNaN(a) && Number.isNaN(b)) return true; // 处理 NaN\n if (typeof a === 'object' && typeof b === 'object') {\n // 简化版深层比较(实际项目建议使用 lodash.isEqual )\n return JSON.stringify(a) === JSON.stringify(b);\n }\n return false;\n }\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/DefaultMethods.js?");
|
|
12680
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultMethods: function() { return /* binding */ DefaultMethods; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_iterator_flat_map_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.iterator.flat-map.js */ \"./node_modules/core-js/modules/es.iterator.flat-map.js\");\n/* harmony import */ var core_js_modules_es_iterator_flat_map_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_flat_map_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.iterator.some.js */ \"./node_modules/core-js/modules/es.iterator.some.js\");\n/* harmony import */ var core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es_set_difference_v2_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.set.difference.v2.js */ \"./node_modules/core-js/modules/es.set.difference.v2.js\");\n/* harmony import */ var core_js_modules_es_set_difference_v2_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_difference_v2_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_es_set_intersection_v2_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.set.intersection.v2.js */ \"./node_modules/core-js/modules/es.set.intersection.v2.js\");\n/* harmony import */ var core_js_modules_es_set_intersection_v2_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_intersection_v2_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_set_is_disjoint_from_v2_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.set.is-disjoint-from.v2.js */ \"./node_modules/core-js/modules/es.set.is-disjoint-from.v2.js\");\n/* harmony import */ var core_js_modules_es_set_is_disjoint_from_v2_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_is_disjoint_from_v2_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_set_is_subset_of_v2_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.set.is-subset-of.v2.js */ \"./node_modules/core-js/modules/es.set.is-subset-of.v2.js\");\n/* harmony import */ var core_js_modules_es_set_is_subset_of_v2_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_is_subset_of_v2_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_set_is_superset_of_v2_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.set.is-superset-of.v2.js */ \"./node_modules/core-js/modules/es.set.is-superset-of.v2.js\");\n/* harmony import */ var core_js_modules_es_set_is_superset_of_v2_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_is_superset_of_v2_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_set_symmetric_difference_v2_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.set.symmetric-difference.v2.js */ \"./node_modules/core-js/modules/es.set.symmetric-difference.v2.js\");\n/* harmony import */ var core_js_modules_es_set_symmetric_difference_v2_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_symmetric_difference_v2_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var core_js_modules_es_set_union_v2_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.set.union.v2.js */ \"./node_modules/core-js/modules/es.set.union.v2.js\");\n/* harmony import */ var core_js_modules_es_set_union_v2_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_union_v2_js__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _utils_ExcelUtil__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/utils/ExcelUtil */ \"./src/utils/ExcelUtil.js\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! vxe-table */ \"vxe-table\");\n/* harmony import */ var vxe_table__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(vxe_table__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var _utils_groupCompute__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/utils/groupCompute */ \"./src/utils/groupCompute.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst message = (0,_utils_message__WEBPACK_IMPORTED_MODULE_15__.useMessage)(); // 消息弹窗\nconst DefaultMethods = {\n methods: {\n //删除主子表\n async doRemoveMainAndSub({\n obj,\n row\n }, subTableName, whereObj, subForeignKey, content) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n this.doPostAes(obj.code, '/online/crudAes/deleteMainAndSubs', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n subTableName: subTableName,\n whereMap: this.doGetWhereMap(row, whereObj),\n //更新条件\n subForeignKey: subForeignKey\n });\n },\n /**\r\n * 操作列保存:直接在操作按钮的自定义事件加入代码:this.doOneSave(o,'是否要保存数据')\r\n * @param obj 单击按钮的对象\r\n * @param row 单击当前行\r\n * @param content 提示内容\r\n * @returns {Promise<void>}\r\n */\n async doOneSave({\n obj,\n row\n }, content) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n if (!row) {\n vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.message({\n content: \"数据为空!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let dataSource = this.table.dataSource;\n if (!dataSource) {\n return;\n }\n let newRow = JSON.parse(JSON.stringify(row));\n try {\n newRow[this.formMainList.edit.formMain.updateKey] = '';\n } catch (e) {}\n let params = {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n genIdMap: {\n [this.formMainList.edit.formMain.updateKey]: 'uuid'\n },\n columnAndValueMap: this.getColumnTableUpdateValue(this.table.columns, newRow)\n };\n this.doPostAes(obj.code, '/online/crudAes/save', params);\n },\n /**\r\n * 操作列更新:直接在操作按钮的自定义事件加入代码:this.doOneModify(o,'数据库更新字段=数据值,数据库更新字段:列字段,数据库更新字段','数据库更新条件','提示内容')\r\n *\r\n * @param obj 单击按钮的对象\r\n * @param row 单击当前行\r\n * @param updateObj\r\n * @param whereObj\r\n * @param content\r\n * @returns {Promise<void>}\r\n */\n async doOneModify({\n obj,\n row\n }, updateObj, whereObj, content) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n let newRow = JSON.parse(JSON.stringify(row));\n this.doPostAes(obj.code, '/online/crudAes/modify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n columnAndValueMap: this.doGetColumnAndValueMap(newRow, updateObj),\n //更新字段\n whereMap: this.doGetWhereMap(newRow, whereObj) //更新条件\n });\n },\n /**\r\n * 批量更新\r\n * @param code\r\n * @param updateObj\r\n * @param whereObj\r\n * @param content\r\n * @param updateRecords 如果为空,获取全部选中数据\r\n * @returns {Promise<void>}\r\n */\n async doBatchModify(code, updateObj, whereObj, content, updateRecords) {\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n let rows = updateRecords;\n if (!updateRecords || updateRecords.length <= 0) {\n rows = this.getSelectRows();\n }\n if (rows.length == 0) {\n vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.message({\n content: \"请选数据!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let list = [];\n for (const row of rows) {\n list.push({\n columnAndValueMap: this.doGetColumnAndValueMap(row, updateObj),\n //更新字段\n whereMap: this.doGetWhereMap(row, whereObj) //更新条件\n });\n }\n this.doPostAes(code, '/online/crudAes/batchModify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list\n });\n },\n /**\r\n * 直接发送post请求\r\n * @param code\r\n * @param url\r\n * @param params\r\n */\n doPostAes(code, url, params, noQuery) {\n if (code != undefined) {\n this.loading[code] = true;\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.postAes)(this.http, url, params).then(r => {\n if (r != false && noQuery != false) {\n this.query();\n }\n }).finally(() => {\n if (code != undefined) {\n this.loading[code] = false;\n }\n });\n },\n /**\r\n * 根据列配置获取数据库表更新数据\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n prop,\n tableField\n } of column) {\n if (!tableField || tableField != '1') {\n continue;\n }\n let value = formData[prop];\n if (value) {\n if (value instanceof String) {\n value = value.trim();\n }\n columnAndValueMap[prop] = value;\n }\n }\n return columnAndValueMap;\n },\n /**\r\n * 获取表格更新列值\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getColumnTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n field,\n tableSaveToOtherProp\n } of column) {\n // 勾选,不属于数据库表字段\n if (tableSaveToOtherProp && tableSaveToOtherProp == '1') {\n continue;\n }\n let value = formData[field];\n if (value) {\n if (value instanceof String) {\n value = value.trim();\n }\n columnAndValueMap[field] = value;\n }\n }\n return columnAndValueMap;\n },\n /**\r\n * 获取row更新值\r\n * @param row\r\n * @param updateObj 更新对象,允许为:\"name='xx',name\" 如果name=xx,数据直接赋值,如果没有=,则使用row的值\r\n * @returns {{}}\r\n */\n doGetColumnAndValueMap(row, updateObj) {\n let columnAndValueMap = {};\n for (let key of updateObj.split(\",\")) {\n let k = key.split(\"=\");\n if (k.length == 2) {\n columnAndValueMap[k[0]] = k[1];\n } else {\n k = key.split(\":\");\n columnAndValueMap[k[k.length - 1]] = row[k[0]];\n }\n }\n return columnAndValueMap;\n },\n doGetColumnAndValueAny(rows, updateObj) {\n if (!updateObj) {\n return rows;\n }\n let list = [];\n let keys = [];\n let hasKey = '';\n for (const row of rows) {\n keys = keys.length >= 1 ? keys : Object.keys(row);\n if (!hasKey) {\n hasKey = this.hasUpdateKey(keys, updateObj);\n }\n if (hasKey) {\n Object.assign(row, this.doGetColumnAndValueMap(row, updateObj));\n }\n list.push(row);\n }\n return list;\n },\n hasUpdateKey(keys, updateObj) {\n for (const key of keys) {\n if (updateObj.indexOf(key) >= 0) {\n return '1';\n }\n }\n return '0';\n },\n doGetWhereMap(row, whereObj) {\n let whereMap = {};\n for (let key of whereObj.split(\",\")) {\n let k = key.split(\":\");\n //className:class_name row:{className:'xxx'} whereMap:{class_name}\n whereMap[k[k.length - 1]] = row[k[0]];\n }\n return whereMap;\n },\n /**\r\n * 内置批量删除方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n batchRemove() {\n this.confirm(\"您选中\" + this.getSelectRows().length + '条数据,删除后不可恢复,您确定要删除吗?', '删除提示', 'error').then(type => {\n if (type != \"cancel\") {\n // 1. 子数据存在性校验\n const hasChildData = this.getSelectRows().some(row => row?.children);\n if (hasChildData) {\n return message.error('存在包含子数据的记录,禁止删除!');\n }\n let list = [];\n for (let r of this.getSelectRows()) {\n let p = JSON.parse(JSON.stringify(this.deleteParameter));\n delete p['$parentId'];\n for (let key of Object.keys(p)) {\n p[key] = r[key];\n }\n list.push(p);\n }\n this.loading['batchDelete'] = true;\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.postAes)(this.http, '/online/crudAes/batchDelete', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list: list\n }).then(r => {\n if (r != false) {\n this.query();\n }\n }).finally(() => {\n this.loading['batchDelete'] = false;\n });\n }\n });\n },\n /**\r\n * 内置重置方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n resetQuery() {\n for (let k of Object.keys(this.table.formConfig.data)) {\n this.table.formConfig.data[k] = undefined;\n }\n for (let k of Object.keys(this.parameter)) {\n this.parameter[k] = undefined;\n }\n this.initDefaultValue();\n this.query();\n },\n /**\r\n * 内置根据参数查询\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n queryParams(parameter) {\n if (parameter) {\n Object.assign(this.parameter, parameter);\n }\n return this.query();\n },\n /**\r\n * 内置查询\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n query() {\n let axios = undefined;\n if (this.tableConfig.definitionSql == 2) {\n if (this.tableConfig.requestType == '1') {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.post)(this.http, this.tableConfig.api, this.getParams(), false, false);\n } else {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.get)(this.http, this.tableConfig.api, this.getParams(), false);\n }\n } else if (this.tableConfig.aes == 1) {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.postAes)(this.http, '/online/crudAes/query', this.getParams(), false, false);\n } else {\n axios = (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.post)(this.http, '/online/crud/query', this.getParams(), false, false);\n }\n this.doQuery(axios);\n },\n doQuery(axios) {\n if (this.loading['select']) {\n return;\n }\n this.table.loading = true;\n this.loading['select'] = true;\n axios.then(({\n data,\n code,\n msg\n }) => {\n if (code != 200 && code != 0) {\n message.error(msg);\n return;\n }\n let respData = data instanceof Array ? data : data.listData;\n\n //部门数据映射\n this.fetchAndMapDictData(this, 'department', {\n uuid: '2011057125138427904',\n value: 'ucml_organize_oid',\n label: 'org_name'\n });\n //角色数据映射\n this.fetchAndMapDictData(this, 'role', {\n uuid: '1904380469886234624',\n value: 'id',\n label: 'name'\n });\n //岗位数据映射\n this.fetchAndMapDictData(this, 'post', {\n uuid: '2009164807696859136',\n value: 'id',\n label: 'name'\n });\n //人员数据映射\n this.fetchAndMapDictData(this, 'user', {\n uuid: '2011373314888716288',\n value: 'id',\n label: 'nickname'\n });\n if (this.table.treeConfig) {\n //id , parentId , children\n respData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_14__.handleTree)(respData, this.table.treeConfig.treeId, this.table.treeConfig.treeParentId);\n }\n this.table.data = respData;\n this.doGroupAndCompute(respData);\n this.pagination.total = data.count;\n }).finally(() => {\n this.table.loading = false;\n this.loading['select'] = false;\n });\n },\n /**\r\n * 根据动态配置获取并映射字典数据\r\n * @param {Array} typeField - 动态列配置(如 departmentColumnsConfig)\r\n * @param {Object} apiParams - API请求参数动态部分\r\n * @param {String} options.apiParams.id - API固定ID\r\n * @param {String} options.apiParams.v - 值字段名(如 ucml_organize_oid)\r\n * @param {String} options.apiParams.l - 标签字段名(如 org_name)\r\n */\n async fetchAndMapDictData(context, typeField, apiParams) {\n const configList = this.table.other[typeField + 'ColumnsConfig'];\n const dictPropName = typeField + 'Dict';\n // 等待 Vue 数据更新完成\n await this.$nextTick();\n if (configList?.length === 0 || !configList) {\n // 当 configList 不存在或其长度为 0 时执行\n return;\n }\n const ids = [];\n\n // 遍历动态列配置,收集所有非空ID\n configList.forEach(column => {\n const columnValues = context.table.data.map(item => item[column.field]).filter(value => value != null && value !== '' && value !== '[]').flatMap(value => {\n try {\n // 尝试解析 JSON 字符串(如 \"[1,2]\" → [1, 2])\n const parsed = JSON.parse(value);\n return Array.isArray(parsed) ? parsed : [parsed];\n } catch {\n // 非 JSON 字符串(如 \"3\"),直接作为单独元素\n return [value];\n }\n });\n // console.info('列值',columnValues);\n ids.push(...columnValues);\n });\n\n // 如果有有效ID,去重后请求API\n if (ids.length > 0) {\n const uniqueIds = [...new Set(ids)];\n\n // 构造请求参数\n const params = {\n id: apiParams.uuid,\n v: apiParams.value,\n l: apiParams.label,\n theme: \"t1\",\n enablePage: false,\n queryParameterMapIn: {}\n };\n params.queryParameterMapIn[params.v] = uniqueIds;\n try {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.postAes)(context.http, '/online/crudAes/query', params, false, false).then(({\n data\n }) => {\n console.info(dictPropName, data);\n // 处理API返回数据\n if (data?.listData?.length > 0) {\n context.table.other[dictPropName] = []; // 重置字典\n data.listData.forEach(item => {\n context.table.other[dictPropName].push({\n value: item[params.v],\n label: item[params.l]\n });\n });\n context.$table.reloadData(context.table.data); // 刷新表格\n }\n });\n } catch (error) {\n console.error('数据请求失败:', params, error);\n }\n }\n },\n /**\r\n * 内置删除方法\r\n * @param o\r\n * @returns {Promise<void>}\r\n */\n remove(o) {\n let {\n row\n } = o;\n this.confirm('数据删除后不可恢复,您确定要删除吗?', '删除提示', 'error').then(type => {\n if (type != \"cancel\") {\n // 校验是否存在子数据\n if (row && row.children) {\n return message.error('存在包含子数据的记录,禁止删除!');\n }\n let params = {};\n for (let key of Object.keys(this.deleteParameter)) {\n if (key != '$parentId') {\n params[key] = row[key];\n }\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.postAes)(this.http, '/online/crudAes/delete', {\n where: params,\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable\n }).then(r => {\n if (r != false) {\n this.query();\n }\n });\n }\n });\n },\n /**\r\n * 获取查询参数\r\n * @returns {{enablePage: OTMixinBodyMethods.methods.pagination.enabled, theme: OTMixinBodyMethods.methods.theme, id: OTMixinBodyMethods.methods.uuid}}\r\n */\n getParams() {\n if (this.tableConfig.definitionSql == 2) {\n let params = JSON.parse(JSON.stringify(this.table.formConfig.data));\n if (params.enablePage) {\n params.pageNumber = this.pagination.currentPage;\n params.pageSize = this.pagination.pageSize;\n }\n return {\n ...this.parameter,\n ...params\n };\n }\n let params = {\n id: this.uuid,\n theme: this.theme,\n enablePage: this.pagination.enabled\n };\n if (params.enablePage) {\n params.pageNumber = this.pagination.currentPage;\n params.pageSize = this.pagination.pageSize;\n }\n let paramsKey = [];\n for (let o of this.table.formConfig.items) {\n let value = this.table.formConfig.data[o.key];\n if (value == undefined || value == '' || o.itemRender && o.itemRender.name == '$buttons') {\n continue;\n }\n let key = o.key.replace(/\\$/g, '');\n //文本域\n if (o.itemRender && o.itemRender.name == \"textarea\" && o.type != \"9\") {\n let values = value instanceof Array ? value : value.split(\"\\n\");\n if (values.length != 0) {\n let queryParameterMapIn = [];\n for (let v of values) {\n if (v != undefined && v.toString().trim() != '') {\n queryParameterMapIn.push(v);\n }\n }\n if (queryParameterMapIn.length != 0) {\n if (!params['queryParameterMapIn']) {\n params['queryParameterMapIn'] = {};\n }\n params['queryParameterMapIn'][key] = queryParameterMapIn;\n paramsKey.push(key);\n } else if (params['queryParameterMapIn']) {\n delete params['queryParameterMapIn'][key];\n }\n }\n } else if (value.toString().trim() != '') {\n if (!params['queryParameterListAnd']) {\n params['queryParameterListAnd'] = [];\n }\n let values = value instanceof Array ? value : value.split(\",\");\n if (o.type == \"98\") {\n params['queryParameterListAnd'].push({\n value: values[0],\n key: key,\n type: 5,\n toDate: o.toDate\n });\n params['queryParameterListAnd'].push({\n value: values[1],\n key: key,\n type: 6,\n toDate: o.toDate\n });\n paramsKey.push(key);\n } else if (!(values instanceof Array)) {\n let isNumber = o.selectDom == 7;\n o.value = value;\n //type 查询类型 默认等于1--> 1:= 2:!= 3: > 4:< 5: >= 6: <= 7:like '%value' 8:like '%value%' 9:like 'value%'\n //replace(/\\$/g, '') 目的解决范围\n let obj = {\n value: isNumber ? Number(value) : value,\n key: key,\n type: o.type,\n toDate: o.toDate\n };\n params['queryParameterListAnd'].push(obj);\n paramsKey.push(key);\n } else {\n let isNumber = o.selectDom == 7;\n for (let v of values) {\n if (!v) {\n continue;\n }\n let obj = {\n value: isNumber ? Number(v) : v,\n key: key,\n type: o.type,\n toDate: o.toDate\n };\n params['queryParameterListAnd'].push(obj);\n paramsKey.push(key);\n }\n }\n }\n }\n for (let key of Object.keys(this.parameter)) {\n let v = this.parameter[key];\n if (paramsKey.indexOf(key) === -1 && v != undefined && v != '') {\n if (v instanceof Array) {\n if (!params['queryParameterMapIn']) {\n params['queryParameterMapIn'] = {};\n }\n params['queryParameterMapIn'][key] = v;\n } else {\n if (!params['queryParameterListAnd']) {\n params['queryParameterListAnd'] = [];\n }\n params['queryParameterListAnd'].push({\n key: key,\n value: v\n });\n }\n }\n }\n if (this.orderByColumns.length != 0) {\n params['orderBy'] = this.orderByColumns;\n }\n params.authVo = {\n \"tableAliasFiled\": this.tableConfig.tableAliasFiled,\n \"departmentFiled\": this.tableConfig.userFiled,\n \"userFiled\": this.tableConfig.userFiled\n };\n if (this.events['queryBefore']) {\n this.events['queryBefore'](params);\n }\n return params;\n },\n /**\r\n * 导出数据\r\n * @param columns 自定义导出字段 t_id\r\n * @param selectData 选择数据: 当前页数据、勾选行数据、全部数据\r\n * @param name\r\n */\n exportData({\n exportParam,\n cancelEvent\n }) {\n let {\n columns,\n selectData,\n name\n } = exportParam;\n for (let column of this.table.columns) {\n for (let c of columns) {\n if (column.field === c.field && column.params) {\n c.params = column.params;\n }\n }\n }\n let data = [];\n switch (selectData) {\n case '1':\n // 当前页\n data = this.table?.data;\n break;\n case '2':\n // 勾选\n data = this.getSelectRows();\n if (!data || data.length == 0) return message.error('勾选行数据为空!');\n break;\n case '3':\n // 全部数据\n this.exportExcelAll(columns, name);\n break;\n default:\n data = this.table.data;\n break;\n }\n if (selectData != '3') {\n (0,_utils_ExcelUtil__WEBPACK_IMPORTED_MODULE_17__.exportExcel)({\n data: data,\n name: name,\n columns: columns,\n option: {\n align: this.$table ? this.$table.align : 'center'\n }\n });\n }\n cancelEvent();\n },\n /**\r\n * 全部数据导出\r\n * @param fields 自定义导出字段\r\n * @param name 文件名\r\n */\n exportExcelAll(columns, name) {\n let params = this.getParams();\n params.enablePage = false;\n if (this.tableConfig.definitionSql == 2) {\n params.pageNumber = 1;\n params.pageSize = 50000;\n }\n let url = this.tableConfig.definitionSql == 2 ? this.tableConfig.api : '/online/crud/query';\n let method = this.tableConfig.definitionSql == 2 ? this.tableConfig.requestType == '1' ? 'post' : 'get' : 'post';\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_16__.request)(this.http, {\n url: url,\n method: method,\n data: params,\n timeout: 1000 * 90 * 90\n }, false, false).then(({\n data\n }) => {\n let respData = data instanceof Array ? data : data.listData;\n (0,_utils_ExcelUtil__WEBPACK_IMPORTED_MODULE_17__.exportExcel)({\n data: respData,\n name: name,\n columns: columns,\n option: {\n align: this.$table ? this.$table.align : 'center'\n }\n });\n });\n },\n /**\r\n * 内置确认框\r\n * @param content\r\n * @param title\r\n * @param status\r\n * @returns {Promise<\"model\"|\"mask\"|\"close\"|\"confirm\"|\"cancel\"|\"exit\"|\"exist\">}\r\n */\n async confirm(content, title, status) {\n return await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: title,\n status: status\n });\n },\n /**\r\n * 内置调用方法\r\n * @param m\r\n * @param v\r\n * @param d\r\n */\n emits({\n m,\n v,\n d,\n js\n }) {\n if (typeof js === 'string') {\n eval(js);\n } else if (m && this[m]) {\n this[m](v);\n }\n if (d != false) {\n this.customUrl = undefined;\n }\n if (js && typeof js === 'object' && typeof js.callback === 'function') {\n this.executeFunction(js.callback, v);\n } else if (typeof js === 'function') {\n this.executeFunction(js, v);\n }\n },\n /**\r\n * 执行函数\r\n * @param func\r\n * @param v\r\n */\n executeFunction(func, v) {\n if (typeof func !== 'function') return;\n try {\n func.call(this, v);\n } catch (error) {\n console.error('函数执行错误:', error);\n }\n },\n /**\r\n * 设置禁用按钮\r\n * @param ex\r\n */\n setAllBtnDisabled(ex) {\n if (ex) {\n ex = ex.split(\",\");\n } else {\n ex = [];\n }\n for (let toolBtn of this.toolBtn) {\n let disabled = true;\n for (let code of ex) {\n if (toolBtn.code == code) {\n disabled = false;\n }\n }\n toolBtn.disabled = disabled;\n }\n for (let toolBtn of this.operationBtn) {\n let disabled = true;\n for (let code of ex) {\n if (toolBtn.code == code) {\n disabled = false;\n }\n }\n toolBtn.disabled = disabled;\n }\n },\n /**\r\n * 设置工具栏 but\r\n * @param code 编码\r\n * @param key 要设置的key\r\n * @param value 要设置的value\r\n */\n setToolBtn(code, key, value) {\n for (let toolBtn of this.toolBtn) {\n if (toolBtn.code == code) {\n toolBtn[key] = value;\n }\n }\n },\n /**\r\n * 获取工具栏 but\r\n * @param code 编码\r\n * @param key 要设置的key\r\n * @param value 要设置的value\r\n */\n getToolBtn(code) {\n for (let toolBtn of this.toolBtn) {\n if (toolBtn.code == code) {\n return toolBtn;\n }\n }\n },\n /**\r\n * 设置操作按钮 but\r\n * @param code 编码\r\n * @param key 要设置的key\r\n * @param value 要设置的value\r\n */\n setOperationBtn(code, key, value) {\n for (let toolBtn of this.operationBtn) {\n if (toolBtn.code == code) {\n toolBtn[key] = value;\n }\n }\n },\n /**\r\n * 获取修改数据(包括未修改数据)\r\n */\n getUpdateRecords() {\n if (this.$table) {\n return this.$table.getUpdateRecords();\n }\n },\n /**\r\n * 批量保存\r\n */\n async batchSave(code, content, rows, foreignKey, foreignKeyValue) {\n console.info('batchSave', code, content, rows);\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n if (rows.length == 0) {\n vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.message({\n content: \"请选数据!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let list = [];\n let updateList = [];\n let dataSource = this.table.dataSource;\n this.formMainList.edit.formMain.updateKey = this.formMainList.edit.formMain.updateKey.trim();\n const srcMap = new Map(dataSource.map(item => [item[this.formMainList.edit.formMain.updateKey], item]));\n for (const row of rows) {\n delete row._X_ROW_KEY; //删除_X_ROW_KEY属性\n let rowId = row[this.formMainList.edit.formMain.updateKey];\n if (rowId) {\n updateList.push({\n columnAndValueMap: this.getDifferingProperties(row, srcMap.get(row[this.formMainList.edit.formMain.updateKey])),\n //更新字段\n whereMap: this.doGetWhereMap(row, this.formMainList.edit.formMain.updateKey) //更新条件\n });\n continue;\n }\n let columnTableUpdateValue = this.getColumnTableUpdateValue(this.table.columns, row);\n if (foreignKey) {\n columnTableUpdateValue[foreignKey] = foreignKeyValue ? foreignKeyValue : this.mainId;\n }\n list.push(columnTableUpdateValue);\n }\n if (updateList && updateList.length >= 1) {\n this.doPostAes(code, '/online/crudAes/batchModify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list: updateList\n });\n }\n if (list && list.length >= 1) {\n this.doPostAes(code, '/online/crudAes/batchSave', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n tableConfigId: this.tableConfig.tableConfigId,\n columnAndValueListMap: list,\n genIdMap: {\n [this.formMainList.edit.formMain.updateKey]: 'uuid'\n }\n });\n }\n },\n /**\r\n * 保存修改\r\n */\n async saveUpdate(code, content) {\n let dataSource = this.table.dataSource;\n const srcMap = new Map(dataSource.map(item => [item[this.formMainList.edit.formMain.updateKey], item]));\n let rows = [];\n for (const row of this.getUpdateRecords()) {\n let src = srcMap.get(row[this.formMainList.edit.formMain.updateKey]);\n rows.push(this.getDifferingProperties(row, src));\n }\n // console.log('saveUpdate:',rows)\n if (content) {\n let type = await vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.confirm({\n content: content,\n title: '提示',\n status: 'warning'\n });\n if (type == \"cancel\") {\n return;\n }\n }\n if (rows.length == 0) {\n vxe_table__WEBPACK_IMPORTED_MODULE_18___default().modal.message({\n content: \"请选数据!\",\n title: '提示',\n status: 'error'\n });\n return;\n }\n let list = [];\n for (const row of this.getUpdateRecords()) {\n list.push({\n columnAndValueMap: this.getDifferingProperties(row, srcMap.get(row[this.formMainList.edit.formMain.updateKey])),\n //更新字段\n whereMap: this.doGetWhereMap(row, this.formMainList.edit.formMain.updateKey) //更新条件\n });\n }\n this.doPostAes(code, '/online/crudAes/batchModify', {\n dbName: this.tableConfig.dbName,\n tableName: this.tableConfig.mainTable,\n list\n });\n // this.doBatchModify('batchModify', \"age\", this.formMainList.edit.formMain.updateKey, \"确认修改编辑数据吗?\", this.getUpdateRecords())\n },\n /**\r\n * 获取新增数据\r\n */\n getInsertEvent() {\n if (this.$table) {\n return this.$table.getInsertRecords();\n }\n },\n /**\r\n * 获取删除数据\r\n * @returns {*}\r\n */\n getRemoveEvent() {\n if (this.$table) {\n return this.$table.getRemoveRecords();\n }\n },\n /**\r\n * 获取选中\r\n * @returns {*|*[]|*[]}\r\n */\n getSelectRows() {\n if (this.selectBox == 1) {\n return this.$table.getRadioRecord() ? [this.$table.getRadioRecord()] : [];\n } else if (this.selectBox == 2) {\n return this.$table.getCheckboxRecords(true);\n }\n },\n updateColumn(rows) {\n this.table['show-footer'] = false;\n if (rows && rows instanceof Array) {\n for (let o of this.table.columns) {\n for (let row of rows) {\n if (row.id == o.id) {\n for (let key of Object.keys(row)) {\n o[key] = row[key];\n }\n }\n }\n this.setColumnHide(o);\n this.setFixed(o);\n this.setShowFooter(o);\n }\n }\n let data = this.table.columns.sort((a, b) => {\n return a.sort - b.sort;\n });\n this.doGroupAndCompute();\n this.$table.reloadColumn(data);\n },\n doGroupAndCompute(dataSource) {\n if (dataSource) {\n this.table.dataSource = JSON.parse(JSON.stringify(dataSource));\n }\n if (this.tableConfig.paging != 2) {\n if (dataSource != undefined) {\n this.table.data = dataSource;\n }\n return;\n }\n let groupKey = [];\n let comValue = [];\n for (let column of this.table.columns) {\n if (column.visible && column.groupToOtherProp == 1) {\n groupKey.push(column.field);\n }\n if (column.groupTotalToOtherProp) {\n comValue.push(column.field + \":\" + column.groupTotalToOtherProp);\n }\n }\n if (dataSource == undefined) {\n dataSource = this.table.dataSource;\n }\n if (groupKey.length != 0 & comValue.length != 0) {\n dataSource = (0,_utils_groupCompute__WEBPACK_IMPORTED_MODULE_19__.groupAndCompute)(groupKey, comValue, dataSource);\n }\n this.table.data = dataSource;\n this.$table.reloadData(this.table.data);\n },\n getDifferingProperties1(tar, src) {\n const differingProperties = {};\n // 假设两个对象都有相同的属性\n for (const key in tar) {\n if (Object.hasOwn(tar, key) && Object.hasOwn(src, key)) {\n if (tar[key] !== src[key]) {\n differingProperties[key] = tar[key]; // 可以选择返回obj2的值,或创建一个数组存放两个值\n }\n }\n }\n return differingProperties;\n },\n getDifferingProperties(tar, src) {\n // 1. 边界处理:非法输入转为空对象\n if (src == null || typeof src !== 'object') src = {};\n if (tar == null || typeof tar !== 'object') tar = {};\n const differingProperties = {};\n\n // 2. 遍历 tar 的自有属性\n for (const key in tar) {\n if (!Object.hasOwn(tar, key)) continue;\n\n // 3. 检查 src 是否有同名自有属性\n if (Object.hasOwn(src, key)) {\n // 4. 深度比较值差异\n if (!this.isEqual(tar[key], src[key])) {\n // 5. 记录差异(存储双方值)\n differingProperties[key] = tar[key];\n }\n }\n // 可选:将 tar 存在而 src 不存在的属性视为差异?\n else {\n differingProperties[key] = tar[key];\n }\n }\n return differingProperties;\n },\n isEqual(a, b) {\n if (a === b) return true;\n if (Number.isNaN(a) && Number.isNaN(b)) return true; // 处理 NaN\n if (typeof a === 'object' && typeof b === 'object') {\n // 简化版深层比较(实际项目建议使用 lodash.isEqual )\n return JSON.stringify(a) === JSON.stringify(b);\n }\n return false;\n }\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/DefaultMethods.js?");
|
|
12681
|
+
|
|
12682
|
+
/***/ }),
|
|
12683
|
+
|
|
12684
|
+
/***/ "./src/mixins/VTMixin/OForm.js":
|
|
12685
|
+
/*!*************************************!*\
|
|
12686
|
+
!*** ./src/mixins/VTMixin/OForm.js ***!
|
|
12687
|
+
\*************************************/
|
|
12688
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
12689
|
+
|
|
12690
|
+
"use strict";
|
|
12691
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OForm: function() { return /* binding */ OForm; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils_columnProp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/columnProp */ \"./src/utils/columnProp.js\");\n/* harmony import */ var _utils_message__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/message */ \"./src/utils/message.js\");\n/* harmony import */ var _utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/http/httpUtils */ \"./src/utils/http/httpUtils.js\");\n/* harmony import */ var _utils_tree__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/tree */ \"./src/utils/tree.js\");\n/* harmony import */ var _utils_formUtils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/utils/formUtils */ \"./src/utils/formUtils.js\");\n/* harmony import */ var _api_dist__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/api/dist */ \"./src/api/dist.js\");\n/* harmony import */ var _store_dict__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/store/dict */ \"./src/store/dict.js\");\n/* harmony import */ var _utils_object__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/object */ \"./src/utils/object.js\");\n/* harmony import */ var _components_FileUpload_index_vue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/FileUpload/index.vue */ \"./src/components/FileUpload/index.vue\");\n/* harmony import */ var _components_Icon__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/components/Icon */ \"./src/components/Icon/index.js\");\n/* harmony import */ var _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/components/ol-table-select.vue */ \"./src/components/ol-table-select.vue\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst dict = (0,_store_dict__WEBPACK_IMPORTED_MODULE_9__.storeDict)();\nfunction replaceDollarBraces(str) {\n return str.toString().replace(/\\$\\{?([^{}]+)\\}?/g, function (match, innerContent) {\n return innerContent ? `'${innerContent}'` : match;\n });\n}\nconst OForm = {\n name: 'OForm',\n components: {\n FileUpload: _components_FileUpload_index_vue__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n IconSelect: _components_Icon__WEBPACK_IMPORTED_MODULE_12__.IconSelect,\n OlTableSelect: _components_ol_table_select_vue__WEBPACK_IMPORTED_MODULE_13__[\"default\"]\n },\n inject: ['http'],\n props: {\n isDialog: {\n type: Boolean,\n default: true\n }\n },\n data() {\n return {\n formData: {},\n optionData: {},\n form: {\n column: []\n },\n initOk: false,\n dynamicSlotsTable: [],\n dynamicSlotsField: {},\n dynamicSlotsOtherResult: {},\n show: true,\n state: {\n deleteId: '',\n uuid: '',\n foreignKey: '',\n exBtnDisabled: undefined,\n isDialog: true,\n loading: false,\n fullscreen: false,\n dialogVisible: false,\n title: \"\",\n width: '60%',\n comCommit: true,\n maxHeight: '400px',\n type: '0',\n edit: false,\n saveUrl: '',\n requestType: 'post',\n updateKey: '',\n theme: 't1',\n tableConfigId: '',\n dbName: '',\n tableName: '',\n otherProp: {}\n }\n };\n },\n methods: {\n hideColumn(prop) {\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_10__.setArrayObjectKeyValue)(this.form.column, 'display', false, prop);\n },\n showColumn(prop) {\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_10__.setArrayObjectKeyValue)(this.form.column, 'display', true, prop);\n },\n setOtherProp(params) {\n if (this.state.otherProp) {\n if (this.state.otherProp.createBy && this.state.otherProp.createBy.trim()) {\n params.createBy = this.state.otherProp.createBy.trim();\n }\n if (this.state.otherProp.updateBy && this.state.otherProp.updateBy.trim()) {\n params.updateBy = this.state.otherProp.updateBy.trim();\n }\n }\n },\n /**\r\n * 根据列配置获取数据库表更新数据\r\n * @param column\r\n * @param formData\r\n * @returns {{}}\r\n */\n getTableUpdateValue(column, formData) {\n let columnAndValueMap = {};\n for (let {\n prop,\n tableField\n } of column) {\n if (tableField && tableField == '1') {\n continue;\n }\n let value = formData[prop];\n if (value != undefined) {\n if (value instanceof String) {\n value = value.trim();\n }\n if (value instanceof Array) {\n columnAndValueMap[prop] = value.join(',');\n } else {\n columnAndValueMap[prop] = value;\n }\n }\n }\n return columnAndValueMap;\n },\n async doSave() {\n let dom;\n let keys;\n if (this.state.type != '0') {\n await this.$refs.formRef.getNativeForm().validate((valid, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getWidgetRef(keys[0]);\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n } else {\n this.save();\n }\n });\n } else {\n await this.$refs.formRef.validate((valid, done, msg) => {\n if (!valid) {\n keys = Object.keys(msg);\n dom = this.$refs.formRef.getPropRef(keys[0]);\n dom.$el.scrollIntoView({\n block: \"center\",\n behavior: \"smooth\"\n });\n (0,_utils_message__WEBPACK_IMPORTED_MODULE_4__.useMessage)().error(\"您还有\" + keys.length + \"项信息未填写,请填写后再操作!\");\n } else {\n this.save();\n }\n done();\n });\n }\n },\n saveOk(status) {\n this.state.loading = false;\n if (status) {\n this.state.dialogVisible = false;\n this.$emit('query');\n }\n if (this.state.otherProp && this.state.otherProp.afterSave) {\n try {\n eval(this.state.otherProp.afterSave);\n } catch (e) {\n console.log(e);\n }\n }\n },\n async save() {\n let params = this.getParams();\n if (this.state.otherProp && this.state.otherProp.beforeSave) {\n try {\n let next = eval(\"(params)=>{\" + this.state.otherProp.beforeSave + \"}\");\n if (next(params) === false) {\n return;\n }\n } catch (e) {\n console.log(e);\n return;\n }\n }\n this.state.loading = true;\n try {\n let url = this.state.saveUrl ? this.state.saveUrl : this.state.edit ? '/online/crudAes/modify' : '/online/crudAes/save';\n if (this.state.requestType.toLowerCase() == \"put\") {\n await (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.put)(this.http, url, params).then(status => {\n this.saveOk(status);\n });\n } else if (!this.state.saveUrl || this.state.saveUrl.indexOf(\"/online/crudAes/\") != -1) {\n await (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.postAes)(this.http, url, params).then(status => {\n this.saveOk(status);\n });\n } else {\n await (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, url, params).then(status => {\n this.saveOk(status);\n });\n }\n } catch (e) {\n console.error(e);\n } finally {\n this.state.loading = false;\n }\n },\n setDepRoleDefault(column) {\n //人员岗位\n if (column.selectDom === '25' || column.selectDom === '26' || column.selectDom === '27' || column.selectDom === '24') {\n let dic = {\n \"24\": 'olp_cloud,system_dept,name,id',\n \"25\": 'olp_cloud,system_role,name,id',\n \"26\": 'olp_cloud,system_post,name,id',\n \"27\": 'olp_cloud,system_users,nickname,id'\n };\n column.dictTable = dic[column.selectDom];\n column.type = 'select';\n }\n },\n initFormColumn(data) {\n for (let column of this.form.column) {\n if (data.disabled || column.disabled == 1) {\n column.disabled = true;\n }\n if (column.value) {\n column.value = (0,_utils_columnProp__WEBPACK_IMPORTED_MODULE_3__.getDefaultValue)(column);\n }\n this.setDepRoleDefault(column);\n if (column.selectDom === '20') {\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n } else if (column.selectDom === '21') {\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n } else if (column.selectDom === '22') {\n //表格选取\n let slotObj = {\n slotName: column.prop,\n type: column.selectDom,\n config: JSON.parse(column.attrs).olTableSelect\n };\n this.dynamicSlotsField[column.prop] = column; //收集继续动态改变值的字段信息,以便动态改变值时更新表单数据\n this.dynamicSlotsTable.push(slotObj); //收集需要的动态插槽字段信息\n const otherResult = slotObj.config.otherResult; //返回额外参数字段配置\n if (otherResult !== null && otherResult !== undefined && otherResult !== '') {\n let otherResultArray = [];\n otherResult.split(\",\").forEach(m => {\n let k = m.split(\":\");\n // otherResultArray.push({targetField: k[[k.length - 1]], sourceField: k[0]})\n otherResultArray.push({\n targetField: k[0],\n sourceField: k[[k.length - 1]]\n });\n });\n this.dynamicSlotsOtherResult[column.prop] = otherResultArray;\n }\n } else {\n this.initDict(column);\n }\n (0,_utils_object__WEBPACK_IMPORTED_MODULE_10__.parseJson)(column);\n for (let event of ['change']) {\n if (column[event] && !(column[event] instanceof Function)) {\n try {\n column[event] = eval(\"(params)=>{this.$nextTick(()=>{\" + \"let formData = this.formData;\" + \"let {value} = params;\" + replaceDollarBraces(column[event]) + \"})\" + \"}\");\n } catch (e) {\n console.error(e);\n }\n }\n }\n }\n },\n doInit(data) {\n this.beforeInit();\n if (data.disabled) {\n this.show = false;\n }\n if (data.saveUrl) {\n this.state.saveUrl = data.saveUrl.trim();\n if (data.requestType) {\n this.state.requestType = data.requestType;\n }\n }\n this.state.edit = data['code'] == 'edit' == true;\n this.state.title = data.title ? data.title : this.state.edit ? '编辑' : '新增';\n if (data.form.title) {\n this.state.title = data.form.title;\n }\n this.formData = data.formData;\n this.form = data.form;\n this.state.dialogVisible = true;\n if (this.state.type == 0) {\n //赋值弹窗宽度和高度\n if (data.form.diaLogWidth) {\n this.state.width = data.form.diaLogWidth;\n }\n if (data.form.diaLogHeight) {\n this.state.maxHeight = data.form.diaLogHeight + 'px';\n }\n this.initFormColumn(data);\n } else {\n let {\n width,\n height\n } = this.form.formConfig;\n //赋值弹窗宽度和高度\n this.state.width = width;\n this.state.maxHeight = height + 'px';\n for (let widgetListElement of this.form.widgetList) {\n this.setDict(widgetListElement);\n }\n }\n for (let key of Object.keys(this.state)) {\n if (data[key]) {\n this.state[key] = data[key];\n }\n }\n setTimeout(() => {\n this.afterInit();\n }, 350);\n },\n setDict(column) {\n if (column && column.dict) {\n column.dictCode = column.dict;\n this.initDict(column);\n }\n if (column.cols instanceof Array) {\n for (let col of column.cols) {\n this.setDict(col);\n }\n }\n },\n init(data) {\n try {\n this.doInit(data);\n } catch (e) {\n console.error(e);\n }\n },\n /**\r\n * 初始化后回调\r\n */\n afterInit() {\n if (this.state.otherProp) {\n try {\n this.state.otherProp = JSON.parse(this.state.otherProp);\n if (this.state.otherProp.afterInit) {\n eval(this.state.otherProp.afterInit);\n }\n } catch (e) {\n console.log(e);\n }\n }\n },\n /**\r\n * 初始化前回调\r\n */\n beforeInit() {\n if (this.state.otherProp && this.state.otherProp.beforeInit) {\n try {\n eval(this.state.otherProp.beforeInit);\n } catch (e) {\n console.log(e);\n }\n }\n },\n initDict(column) {\n if (column.dictCode) {\n column.dicData = dict.val(column.dictCode);\n if (column.dict && column.options) {\n column.options.optionItems = column.dicData;\n }\n if (column.selectDom == 1 || !column.type) {\n column.type = \"select\";\n }\n //”number”、”string”、”boolean”、”object”、”function” 和 “undefined”\n let dataType = typeof this.formData[column.prop];\n if ([\"number\", \"boolean\"].indexOf(dataType) != -1) {\n this.formData[column.prop] = String(this.formData[column.prop]);\n column.value = this.formData[column.prop];\n }\n if (this.state.edit) {\n return;\n }\n if (this.formData[column.prop] != undefined) {\n this.formData[column.prop] = String(this.formData[column.prop]);\n column.value = this.formData[column.prop];\n } else if (column.value != undefined) {\n this.formData[column.prop] = String(column.value);\n } else {\n // 数据字典与值类型不一致\n if (this.formData[column.prop] == undefined) {\n setTimeout(() => {\n if (column.dicData) {\n for (let dicDatum of column.dicData) {\n if (dicDatum.isDefault == 1) {\n this.formData[column.prop] = dicDatum.value;\n column.value = this.formData[column.prop];\n }\n }\n }\n }, 100);\n }\n }\n } else if (column.dictTable || column.dictUrl) {\n if (column.selectDom == 1 || !column.type) {\n column.type = \"select\";\n }\n column.filterable = true;\n column.dicData = [];\n setTimeout(() => {\n this.setDictTable(column, undefined);\n }, 10);\n if (column.type == 'tree') {\n column.filterable = column.filterable == undefined ? true : column.clearable;\n column.clearable = column.clearable == undefined ? true : column.clearable;\n } else {\n column.filterMethod = e => {\n this.$nextTick(() => {\n this.setDictTable(column, e);\n });\n };\n }\n }\n },\n setDictUrl(column, like) {\n let dictUrl = column.dictUrl.split(\",\");\n let url;\n let label = 'label';\n let value = 'value';\n let parentId = 'parentId';\n // get,url,label,value,parent_id\n let doGet = true;\n if (dictUrl.length > 1) {\n if (dictUrl[0].toString().toLowerCase() == 'post') {\n doGet = false;\n }\n url = dictUrl[1];\n label = dictUrl[2];\n value = dictUrl[3];\n parentId = dictUrl[4];\n } else {\n url = dictUrl[0];\n }\n if (doGet) {\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.get)(this.http, url + \"?label=\" + like).then(data => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, value, parentId);\n } else {\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n } else {\n let params = {};\n if (like) {\n params['label'] = like;\n }\n (0,_utils_http_httpUtils__WEBPACK_IMPORTED_MODULE_5__.post)(this.http, column.dictUrl, params, false).then(({\n data\n }) => {\n column.dicData.length = 0;\n if (column.type == 'tree') {\n for (let da of data) {\n da['label'] = da[label];\n da['value'] = da[value];\n }\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, value, parentId);\n } else {\n data.forEach(da => {\n da['label'] = da[label];\n da['value'] = da[value];\n column.dicData.push(da);\n });\n }\n });\n }\n },\n setDictTable(column, like) {\n if (column.dictTable && column.dictTable.toString().trim() != '') {\n this.doSetDictTable(column, like);\n } else if (column.dictUrl) {\n this.setDictUrl(column, like);\n }\n },\n doSetDictTable(column, like) {\n let value = this.formData[column.prop];\n /*String tableName;\r\n String dbName;\r\n String label;\r\n String value;\r\n Map<String, Object> where;*/\n // olp-vue-pro,system_users,nickname,id,parentId\n let params = {};\n // let dictTable = column.dictTable;\n try {\n // 使用Function构造函数比eval更安全\n params = new Function('return ' + column.dictTable)();\n } catch (e) {\n // 2. 业务调用侧(清晰的使用逻辑)\n params = (0,_utils_formUtils__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(column.dictTable);\n }\n if (like || value) {\n if (!params.where) {\n params.where = {};\n }\n }\n if (!params[\"parentValue\"]) {\n if (like) {\n params.where['_like_' + params[\"label\"]] = like;\n }\n if (value instanceof Array) {\n let val = '';\n for (let valueElement of value) {\n if (val.length > 0) {\n val += \",\";\n }\n val = val + \"'\" + valueElement + \"'\";\n }\n if (val) {\n params.where['_in_' + params[\"label\"]] = val;\n }\n //params.defaultValue = value;\n } else {\n params.defaultValue = value;\n }\n }\n (0,_api_dist__WEBPACK_IMPORTED_MODULE_8__.initDictTable)(this.http, params).then(data => {\n column.dicData.length = 0;\n if (params[\"parentValue\"]) {\n column.dicData = (0,_utils_tree__WEBPACK_IMPORTED_MODULE_6__.handleTree)(data, 'dictValue', 'parentValue');\n } else {\n console.log(data);\n data.forEach(d => {\n column.dicData.push(d);\n });\n }\n });\n },\n /**\r\n * 表格选择器回调函数\r\n * @param data\r\n */\n olTableSelectChange(slotName, data) {\n // console.info('插槽名称', slotName, '表格回传的数据', data)\n // console.info('表格', this.form.column)\n this.formData[slotName] = data.value; //修改表单数据,以便后续提交\n if (typeof this.dynamicSlotsField[slotName].change === 'function') {\n this.dynamicSlotsField[slotName].change(data.value); //字段数据更新回调\n }\n //给其他字段赋值\n this.dynamicSlotsOtherResult[slotName]?.forEach(item => {\n this.formData[item.targetField] = data.data[item.sourceField];\n });\n }\n },\n mounted() {\n this.$nextTick(() => {\n (0,_store_dict__WEBPACK_IMPORTED_MODULE_9__.storeDict)().init(this.http);\n });\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/OForm.js?");
|
|
12724
12692
|
|
|
12725
12693
|
/***/ }),
|
|
12726
12694
|
|
|
@@ -12731,7 +12699,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
12731
12699
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
12732
12700
|
|
|
12733
12701
|
"use strict";
|
|
12734
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OTMixinBody: function() { return /* binding */ OTMixinBody; }\n/* harmony export */ });\n/* harmony import */ var _OTMixinBodyMethods__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./OTMixinBodyMethods */ \"./src/mixins/VTMixin/OTMixinBodyMethods.js\");\n/* harmony import */ var _mixins_VTMixin_OTMixinColumnMethod__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/mixins/VTMixin/OTMixinColumnMethod */ \"./src/mixins/VTMixin/OTMixinColumnMethod.js\");\n/* harmony import */ var _mixins_VTMixin_OTMixinBodyFooter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/mixins/VTMixin/OTMixinBodyFooter */ \"./src/mixins/VTMixin/OTMixinBodyFooter.js\");\n\n\n\nconst OTMixinBody = {\n name: 'OTMixinBody',\n mixins: [_OTMixinBodyMethods__WEBPACK_IMPORTED_MODULE_0__.OTMixinBodyMethods, _mixins_VTMixin_OTMixinColumnMethod__WEBPACK_IMPORTED_MODULE_1__.OTMixinColumnMethod, _mixins_VTMixin_OTMixinBodyFooter__WEBPACK_IMPORTED_MODULE_2__.OTMixinBodyFooter],\n data() {\n return {\n components: undefined,\n customUrl: undefined,\n parameter: {},\n parameterDefault: {},\n orderByColumns: [],\n loading: {},\n deleteParameter: {},\n tableConfig: {},\n isMaximized: false,\n operationBtn: [],\n toolBtn: [],\n formItem: [],\n selectBox: \"0\",\n //0/无、1/单选、2/\n table: {\n sortable: false,\n scrollX: {\n enabled: true,\n gt: 5\n },\n scrollY: {\n enabled: true,\n gt: 5\n },\n ref: 'vTable',\n loading: false,\n border: false,\n align: 'center',\n size: \"mini\",\n height: 'auto',\n \"show-footer\": false,\n // 合并行字段\n mergeFields: [],\n loadingConfig: {\n text: '数据加载中..'\n },\n formConfig: {\n show: true,\n size: \"medium\",\n titleWidth: 100,\n titleAlign: 'right',\n titleOverflow: true,\n items: [],\n data: {}\n },\n columnConfig: {\n resizable: true\n },\n rowConfig: {\n isCurrent: true\n },\n sortConfig: {\n defaultSort: []\n },\n columns: [],\n columnSource: [],\n data: [],\n dataSource: [],\n toolbarConfig: {\n slots: {\n buttons: 'header_left',\n tools: 'header_right'\n }\n },\n ...this.$attrs\n },\n search: {\n show: false,\n queryBtn: true,\n resetBtn: true\n },\n toolbar: {\n show: false,\n //是否显示\n addBtn: true,\n //添加按钮\n batchDeleteBtn: true,\n //查询按钮\n uploadBtn: true,\n //上传按钮\n downloadBtn: true,\n //下载按钮\n refresh: true,\n // 显示刷新按钮\n import: true,\n // 显示导入按钮\n export: true,\n // 显示导出按钮\n print: true,\n // 显示打印按钮\n zoom: true,\n // 显示全屏按钮\n custom: true // 显示自定义列按钮\n },\n formMainList: [],\n dialog: {\n title: '弹窗',\n width: '80%',\n height: '',\n form: [],\n designer: '0'\n },\n formKey: 0,\n dialogVisible: false,\n events: {},\n player: {},\n showCustomModal: true,\n playerOptions: {\n language: 'zh-CN',\n languages: {\n 'zh-CN': {\n 'Play': '播放',\n 'Play Video': '播放',\n 'Replay': '重播',\n 'Pause': '暂停',\n 'Mute': '静音',\n 'Unmute': '取消静音',\n 'Fullscreen': '全屏',\n 'Exit Fullscreen': '退出全屏',\n 'Picture-in-Picture': '画中画',\n 'Exit Picture-in-Picture': '退出画中画'\n }\n }\n }\n };\n },\n computed: {\n elSize() {\n let data = {\n 'mini': 'small',\n 'small': 'default',\n 'medium': 'large'\n };\n return data[this.table.size] ? data[this.table.size] : 'default';\n },\n $table() {\n return this.$refs[this.table.ref];\n }\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/OTMixinBody.js?");
|
|
12702
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OTMixinBody: function() { return /* binding */ OTMixinBody; }\n/* harmony export */ });\n/* harmony import */ var _OTMixinBodyMethods__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./OTMixinBodyMethods */ \"./src/mixins/VTMixin/OTMixinBodyMethods.js\");\n/* harmony import */ var _mixins_VTMixin_OTMixinColumnMethod__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/mixins/VTMixin/OTMixinColumnMethod */ \"./src/mixins/VTMixin/OTMixinColumnMethod.js\");\n/* harmony import */ var _mixins_VTMixin_OTMixinBodyFooter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/mixins/VTMixin/OTMixinBodyFooter */ \"./src/mixins/VTMixin/OTMixinBodyFooter.js\");\n\n\n\nconst OTMixinBody = {\n name: 'OTMixinBody',\n mixins: [_OTMixinBodyMethods__WEBPACK_IMPORTED_MODULE_0__.OTMixinBodyMethods, _mixins_VTMixin_OTMixinColumnMethod__WEBPACK_IMPORTED_MODULE_1__.OTMixinColumnMethod, _mixins_VTMixin_OTMixinBodyFooter__WEBPACK_IMPORTED_MODULE_2__.OTMixinBodyFooter],\n data() {\n return {\n components: undefined,\n customUrl: undefined,\n parameter: {},\n parameterDefault: {},\n orderByColumns: [],\n loading: {},\n deleteParameter: {},\n tableConfig: {},\n isMaximized: false,\n operationBtn: [],\n toolBtn: [],\n formItem: [],\n selectBox: \"0\",\n //0/无、1/单选、2/\n table: {\n sortable: false,\n scrollX: {\n enabled: true,\n gt: 5\n },\n scrollY: {\n enabled: true,\n gt: 5\n },\n ref: 'vTable',\n loading: false,\n border: false,\n align: 'center',\n size: \"mini\",\n height: 'auto',\n \"show-footer\": false,\n // 合并行字段\n mergeFields: [],\n loadingConfig: {\n text: '数据加载中..'\n },\n formConfig: {\n show: true,\n size: \"medium\",\n titleWidth: 100,\n titleAlign: 'right',\n titleOverflow: true,\n items: [],\n data: {}\n },\n columnConfig: {\n resizable: true\n },\n rowConfig: {\n isCurrent: true\n },\n sortConfig: {\n defaultSort: []\n },\n columns: [],\n columnSource: [],\n data: [],\n dataSource: [],\n toolbarConfig: {\n slots: {\n buttons: 'header_left',\n tools: 'header_right'\n }\n },\n ...this.$attrs,\n other: {\n departmentDict: []\n } //其他信息\n },\n search: {\n show: false,\n queryBtn: true,\n resetBtn: true\n },\n toolbar: {\n show: false,\n //是否显示\n addBtn: true,\n //添加按钮\n batchDeleteBtn: true,\n //查询按钮\n uploadBtn: true,\n //上传按钮\n downloadBtn: true,\n //下载按钮\n refresh: true,\n // 显示刷新按钮\n import: true,\n // 显示导入按钮\n export: true,\n // 显示导出按钮\n print: true,\n // 显示打印按钮\n zoom: true,\n // 显示全屏按钮\n custom: true // 显示自定义列按钮\n },\n formMainList: [],\n dialog: {\n title: '弹窗',\n width: '80%',\n height: '',\n form: [],\n designer: '0'\n },\n formKey: 0,\n dialogVisible: false,\n events: {},\n player: {},\n showCustomModal: true,\n playerOptions: {\n language: 'zh-CN',\n languages: {\n 'zh-CN': {\n 'Play': '播放',\n 'Play Video': '播放',\n 'Replay': '重播',\n 'Pause': '暂停',\n 'Mute': '静音',\n 'Unmute': '取消静音',\n 'Fullscreen': '全屏',\n 'Exit Fullscreen': '退出全屏',\n 'Picture-in-Picture': '画中画',\n 'Exit Picture-in-Picture': '退出画中画'\n }\n }\n }\n };\n },\n computed: {\n elSize() {\n let data = {\n 'mini': 'small',\n 'small': 'default',\n 'medium': 'large'\n };\n return data[this.table.size] ? data[this.table.size] : 'default';\n },\n $table() {\n return this.$refs[this.table.ref];\n }\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/OTMixinBody.js?");
|
|
12735
12703
|
|
|
12736
12704
|
/***/ }),
|
|
12737
12705
|
|
|
@@ -12764,7 +12732,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
12764
12732
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
12765
12733
|
|
|
12766
12734
|
"use strict";
|
|
12767
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OTMixinColumnMethod: function() { return /* binding */ OTMixinColumnMethod; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.iterator.some.js */ \"./node_modules/core-js/modules/es.iterator.some.js\");\n/* harmony import */ var core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _utils_columnProp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/columnProp */ \"./src/utils/columnProp.js\");\n/* harmony import */ var _utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/FilterType.js */ \"./src/utils/FilterType.js\");\n/* harmony import */ var _utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5__);\n\n\n\n\n\n\n\nfunction setColumnParams(column, key, value) {\n if (value === undefined) {\n return;\n }\n if (!column['params']) {\n column['params'] = {};\n }\n column['params'][key] = value;\n}\nconst OTMixinColumnMethod = {\n methods: {\n setColumnCssClass(o) {\n if (o.dictCode) {\n let vals = this.dictVal(o.dictCode);\n let cssClass = {};\n if (vals) {\n let dictValueLabel = {};\n for (let obj of vals) {\n dictValueLabel[obj.dictValue] = obj.dictLabel;\n if (obj.cssClass) {\n let css = obj.cssClass.trim();\n try {\n css = css.replace(/([a-zA-Z_]\\w*):/g, '\"$1\":').replace(/'/g, '\"');\n css = JSON.parse(css);\n if (Array.isArray(css)) {\n let data = {};\n if (css[0]) {\n data['backgroundColor'] = css[0];\n }\n if (css[1]) {\n data['color'] = css[1];\n }\n cssClass[obj.dictValue] = data;\n } else {\n cssClass[obj.dictValue] = css;\n }\n } catch (e) {\n console.error(\"列名:\", o.title, \"数据字典:\", obj.dictLabel, \"样式异常:\", css);\n }\n }\n }\n setColumnParams(o, 'dictValueLabel', dictValueLabel);\n }\n if (Object.keys(cssClass).length != 0) {\n setColumnParams(o, 'cssClass', cssClass);\n }\n }\n },\n initColumn(columns, tableConfig) {\n this.table.mergeFields = [];\n let items = [];\n columns = columns.sort(({\n sort: a\n }, {\n sort: b\n }) => a - b);\n for (let column of columns) {\n this.toParseOtherProp(column);\n }\n this.table.columnSource = JSON.parse(JSON.stringify(columns));\n let {\n optionJson,\n seq\n } = tableConfig;\n if (optionJson) {\n optionJson = JSON.parse(optionJson);\n }\n let enableFilter = optionJson?.table?.enableFilter;\n let hasEditConfig = this.hasEditConfig();\n for (let o of columns) {\n this.setColumnCssClass(o);\n this.initFormatter(o);\n this.initSlots(o);\n this.setTreeOpenColumn(o, tableConfig);\n this.setMergeField(o);\n this.setColumnShowOverFlow(o, optionJson);\n this.setProp(o);\n this.setColumnHide(o);\n this.setFixed(o);\n this.setShowFooter(o);\n this.getVNode(o, items);\n if (enableFilter) {\n this.setFilters(o);\n }\n // 可编辑配置\n if (hasEditConfig) {\n this.setEditConfig(o);\n }\n }\n items.sort(({\n searchSort: a\n }, {\n searchSort: b\n }) => a - b);\n this.setSearchArea(items);\n columns = this.initBodyLeftColumn(columns, seq);\n if (this.table['show-footer']) {\n if (!columns[0].width || columns[0].width < 55) {\n columns[0].width = 55;\n }\n }\n this.table.columns = columns;\n //暂时不合并,启用虚拟滚动\n this.initMergeCells();\n },\n hasEditConfig() {\n return this.table.editConfig && (this.table.editConfig.enabled === true || typeof this.table.editConfig.enabled === 'string' && this.table.editConfig.enabled.toLowerCase() === 'true');\n },\n setEditConfig(o) {\n if (o.tableSaveToOtherProp && o.tableSaveToOtherProp == '1') {\n return;\n }\n if (o.selectDom == '1') {\n o.editRender = {\n name: '$input',\n props: {\n placeholder: '请输入' + o.title,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n };\n }\n // 文本域\n if (o.selectDom == '10') {\n o.editRender = {\n name: 'textarea',\n props: {\n type: 'textarea',\n // 指定为多行文本框\n placeholder: '请输入' + o.title,\n rows: 3,\n // 默认显示行数\n autosize: {\n minRows: 2,\n maxRows: 6\n },\n // 自动调整高度\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n };\n }\n // 数字\n if (o.selectDom == '7') {\n o.editRender = {\n name: '$input',\n props: {\n type: this.getType(o.selectDom),\n placeholder: '请输入' + o.title,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n };\n }\n // 时间\n if (o.selectDom == '3' || o.selectDom == '6') {\n o.editRender = {\n name: 'VxeInput',\n props: {\n type: this.getType(o.selectDom),\n valueFormat: 'yyyy-MM-dd HH:mm:ss'\n }\n };\n }\n // 下拉框\n if (o.selectDom == '2' || o.selectDom == '8') {\n o.editRender = {\n name: 'VxeSelect',\n options: this.dictVal(o.dictCode),\n props: {\n placeholder: '请选择' + o.title\n }\n };\n }\n if (o.selectDom == '5') {\n console.log('复选框:', o);\n // o.slotsName = 'checkbox_default';\n // o.slots = {\n // default: 'checkbox_default'\n // }\n o.slots = {\n default: ({\n row,\n column\n }) => (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-checkbox\"), {\n \"modelValue\": row[column.field],\n \"onUpdate:modelValue\": $event => row[column.field] = $event,\n \"checkedValue\": 1,\n \"uncheckedValue\": 0\n }, null)\n };\n }\n },\n getType(selectDom) {\n if (selectDom == '3') {\n return 'datetime';\n }\n if (selectDom == '6') {\n return 'date';\n }\n if (selectDom == '7') {\n return 'number';\n }\n },\n /**\r\n * 初始化列左边\r\n * @param columns\r\n * @param type\r\n * @returns {*}\r\n */\n initBodyLeftColumn(columns, type) {\n const hasSeqColumn = columns.some(col => ['seq', 'sequence', '序号'].includes(col.field || col.prop || col.type));\n if (type == 1 && !hasSeqColumn) {\n columns.unshift({\n type: 'seq',\n width: 55,\n title: '序号',\n fixed: 'left'\n });\n }\n const hasCheckboxColumn = columns.some(col => ['checkbox'].includes(col.type));\n const hasRadioColumn = columns.some(col => ['radio'].includes(col.type));\n if (this.selectBox == 2 && !hasCheckboxColumn) {\n columns.unshift({\n type: 'checkbox',\n width: 45,\n showOverflow: false,\n fixed: 'left'\n });\n } else if (this.selectBox == 1 && !hasRadioColumn) {\n columns.unshift({\n type: 'radio',\n width: 45,\n showOverflow: false,\n fixed: 'left'\n });\n }\n return columns;\n },\n setTreeOpenColumn(o, tableConfig) {\n if (tableConfig.tree == 1 && o.field == tableConfig.openColumn) {\n o.treeNode = true;\n if (!o.align) {\n o.align = 'left';\n }\n }\n },\n setMergeField(column) {\n if (column.mergeFlag == '1') {\n this.table.mergeFields.push(column.field);\n }\n },\n setColumnHide(o) {\n //隐藏\n if (o.visible == \"0\") {\n o.visible = false;\n }\n },\n initFormatter(o) {\n try {\n if (o.formatter) {\n o.formatter = eval(\"({cellValue, row, column})=>{\" + o.formatter + \"}\");\n } else if (o.dictCode) {\n o.formatter = eval(\"\" + \"({cellValue, row, column})=>{if(column.params && column.params.dictValueLabel){ let dictValueLabelElement = column.params.dictValueLabel[cellValue];if(dictValueLabelElement){return dictValueLabelElement;} }return cellValue}\");\n }\n } catch (e) {\n console.log(o.title, \"formatter异常:\", o.formatter);\n this.$message.error(o.title + \"formatter异常!\");\n }\n },\n initSlots(o) {\n if (o.selectDom == 20) {\n o.slotsName = 'img_default';\n o.slots = {\n default: 'img_default'\n };\n }\n if (o.selectDom == '21') {\n o.slotsName = 'icon_default';\n o.slots = {\n default: 'icon_default'\n };\n }\n if (o.selectDom == '23') {\n o.slotsName = 'video_default';\n o.slots = {\n default: 'video_default'\n };\n }\n },\n /**\r\n * 播放器初始化\r\n * @param player\r\n */\n handleReady(player) {\n console.log(' 播放器已初始化', player);\n this.player = player;\n },\n /**\r\n * 视频播放\r\n */\n handlePlay() {\n console.log(' 视频开始播放');\n },\n changeToChinese() {\n console.log(\"this.playerOptions.value.player\", this.player);\n },\n handlePlay1() {\n console.log(' 视频开始播放');\n this.$refs.playerRef.player.play(); // 通过ref调用播放器方法\n this.showCustomModal.value = false;\n },\n setFixed(item) {\n //修改固定字段的值\n if (item.fixed === '1') {\n item.fixed = 'left';\n } else if (item.fixed === '2') {\n item.fixed = 'right';\n }\n if (item.align === '1') {\n item.align = 'left';\n } else if (item.align === '2') {\n item.align = 'right';\n } else if (item.align === '0') {\n item.align = 'center';\n }\n },\n setProp(item) {\n item.resizable = undefined;\n if (item.sortable != undefined && item.sortable != \"\") {\n let order = item.field + (item.sortable == 0 ? \" ASC \" : \" DESC \");\n this.orderByColumns.push(order);\n }\n ////时间类型\n if (!item.width && (item.selectDom == 3 || item.selectDom == 6)) {\n item.minWidth = 150;\n } else if (!item.width && item.title) {\n item.minWidth = item.title.length * 30;\n }\n },\n setShowFooter(item) {\n if (item['totalToOtherProp']) {\n this.table['show-footer'] = true;\n }\n },\n toParseOtherProp(item) {\n //其他属性赋值\n try {\n let otherProp = JSON.parse(item.otherProp);\n item.otherProp = otherProp;\n for (let key of Object.keys(otherProp)) {\n item[key] = otherProp[key];\n }\n } catch (e) {\n if (item.otherProp) {\n console.error(item.field + \"其他属性无法解析:\" + item.otherProp);\n }\n item.otherProp = {};\n }\n if (item['totalToOtherProp'] === undefined) {\n item['totalToOtherProp'] = '';\n }\n },\n /**\r\n * 设置搜索\r\n * @param items\r\n */\n setSearchArea(items) {\n if (items.length != 0) {\n items.push({\n itemRender: {\n name: '$buttons',\n children: [{\n props: {\n type: 'submit',\n content: '查询',\n status: 'primary'\n },\n events: {\n click: this.query\n }\n }, {\n props: {\n type: 'button',\n content: '重置'\n },\n events: {\n click: this.resetQuery\n }\n }]\n }\n });\n this.table.formConfig.size = this.table.size;\n }\n this.table.formConfig.items = items;\n },\n setFilters(o) {\n if (o.dictCode) {\n o.filters = this.dictVal(o.dictCode);\n o.filterMultiple = true;\n o.filterMethod = ({\n option,\n row,\n column\n }) => {};\n } else {\n // o.slots={\n // header:'OlTableFilterRender'\n // }\n o.filters = [{\n data: ''\n }];\n o.filterMultiple = false;\n o.filterRender = {\n name: 'FilterExtend'\n };\n o.cellType = this.getType(o.selectDom);\n }\n o.filterMethod = this.filterMethod;\n },\n filterMethod({\n option,\n row,\n column\n }) {\n const {\n type,\n value,\n min,\n max\n } = option?.data || {};\n const cellValue = String(row[column.field]);\n switch (type) {\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default().EQUAL):\n return this.isEqual(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default().NOT_EQUAL):\n return this.isNotEqual(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default().STARTS_WITH):\n return this.startsWith(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default().ENDS_WITH):\n return this.endsWith(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default().CONTAINS):\n return this.contains(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_5___default().BETWEEN):\n if (column.cellType === 'date' || column.cellType === 'datetime') {\n return this.dateTimeFilterMethod({\n cellValue,\n min,\n max\n });\n }\n return this.isInRange(cellValue, min, max);\n default:\n if (option.value) {\n return cellValue === option.value;\n }\n return true;\n }\n },\n /**\r\n * 数值范围筛选方法\r\n * @param cellValue\r\n * @param min\r\n * @param max\r\n * @returns {boolean}\r\n */\n isInRange(cellValue, min, max) {\n const numValue = Number(cellValue) || 0;\n const numMin = Number(min) || -Infinity;\n const numMax = Number(max) || Infinity;\n return numValue >= numMin && numValue <= numMax;\n },\n /**\r\n * 判断是否包含开头\r\n * @param cellValue\r\n * @param value\r\n * @returns {*}\r\n */\n endsWith(cellValue, value) {\n if (Array.isArray(value)) {\n return value.some(item => cellValue.endsWith(item));\n }\n return cellValue.endsWith(value);\n },\n /**\r\n * 判断是否包含开头\r\n * @param cellValue\r\n * @param value\r\n * @returns {*}\r\n */\n startsWith(cellValue, value) {\n if (Array.isArray(value)) {\n return value.some(item => cellValue.startsWith(item));\n }\n return cellValue.startsWith(value);\n },\n /**\r\n * 判断是否包含\r\n * @param cellValue\r\n * @param value\r\n * @returns {*}\r\n */\n contains(cellValue, value) {\n if (Array.isArray(value)) {\n return value.some(item => cellValue.includes(item));\n }\n return cellValue.includes(value);\n },\n /**\r\n * 判断字符串与值是否不相等(支持值可能是数组的情况)\r\n * @param {string} cellValue - 要比较的字符串\r\n * @param {string|Array} value - 要比较的值(可以是字符串或数组)\r\n * @returns {boolean} 是否不相等\r\n */\n isNotEqual(cellValue, value) {\n // 如果value是数组,循环判断是否包含cellValue\n if (Array.isArray(value)) {\n return !value.some(item => item === cellValue);\n }\n\n // 如果value不是数组,直接比较字符串\n return cellValue !== value;\n },\n /**\r\n * 比较字符串与值是否相等(支持值可能是数组的情况)\r\n * @param {string} cellValue - 要比较的字符串\r\n * @param {string|Array} value - 要比较的值(可以是字符串或数组)\r\n * @returns {boolean} 是否相等\r\n */\n isEqual(cellValue, value) {\n // 如果value是数组,循环判断是否包含cellValue\n if (Array.isArray(value)) {\n return value.some(item => item === cellValue);\n }\n\n // 如果value不是数组,直接比较字符串\n return cellValue === value;\n },\n /**\r\n * 日期时间范围筛选方法\r\n * @param cellValue 表格数据值\r\n * @param min 最小值\r\n * @param max 最大值\r\n * @returns {boolean}\r\n */\n dateTimeFilterMethod({\n cellValue,\n min,\n max\n }) {\n if (!min && !max) {\n return true;\n }\n const rowValue = cellValue ? new Date(cellValue) : null;\n const startDate = min ? new Date(min) : null;\n const endDate = max ? new Date(max) : null;\n if (startDate && endDate) {\n return rowValue >= startDate && rowValue <= endDate;\n } else if (startDate) {\n return rowValue >= startDate;\n } else if (endDate) {\n return rowValue <= endDate;\n }\n return true;\n },\n getVNode(o, items) {\n if (o.selectType == undefined) {\n return;\n }\n //99是范围查询\n if (o.selectType == 99) {\n let itemStart = this.initFormConfig(o, 5);\n let itemEnd = this.initFormConfig(o, 6);\n //时间范围查询\n if (o.selectDom == 3 || o.selectDom == 6) {\n let placeholder = o.selectDom == 3 ? '时间' : '';\n itemStart.placeholder = '请选择开始日期' + placeholder;\n delete itemStart.itemRender;\n itemEnd.placeholder = '请选择结束日期' + placeholder;\n }\n items.push(itemStart);\n items.push(itemEnd);\n } else {\n items.push(this.initFormConfig(o));\n }\n },\n initFormConfig(o, type) {\n let key = o.fieldNameSEARCHToOtherProp != undefined && o.fieldNameSEARCHToOtherProp != '' ? o.fieldNameSEARCHToOtherProp : o.tableField;\n if (o.tableNameSEARCHToOtherProp != undefined && o.tableNameSEARCHToOtherProp != '') {\n key = o.tableNameSEARCHToOtherProp + '.' + key;\n }\n let item = {\n align: 'left',\n field: key,\n span: 6,\n searchSort: o.searchSort,\n title: o.titleSEARCHToOtherProp != undefined ? o.titleSEARCHToOtherProp : o.title,\n key: key,\n type: o.selectType,\n selectDom: o.selectDom,\n tableName: o.tableNameSEARCHToOtherProp,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true,\n toDate: o.toDateSEARCHToOtherProp,\n itemRender: {\n name: '$input',\n props: {\n placeholder: '请输入' + o.title,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n }\n };\n try {\n this.table.formConfig.data[item.key] = eval(o.valueSEARCHToOtherProp);\n } catch (e) {}\n if (type == 5) {\n item.title = o.title + \"开始\";\n item.type = 5;\n item.field = \"$\" + o.tableField;\n item.key = \"$\" + o.tableField;\n } else if (type == 6) {\n item.field = o.tableField + \"$\";\n item.type = 6;\n item.key = o.tableField + \"$\";\n item.title = o.title + \"结束\";\n }\n if ((item.type == 6 || item.type == 5) && o.selectDom == undefined) {\n o.selectDom = 7;\n }\n this.getItemRender(o, item, type);\n if (item.title && item.title.length > 6) {\n item.titleWidth = 20 * (item.title.length - 2);\n } else if (item.title.toString().trim().length == 0) {\n item.titleWidth = 0;\n }\n if (o.spanSEARCHToOtherProp != undefined) {\n item.span = 6;\n }\n return item;\n },\n getItemRender(o, item, type) {\n if (o.dictCode) {\n delete item.itemRender;\n item.slots = {\n default: o.selectDom + item.field\n };\n item.slotsName = o.selectDom + item.field;\n item.options = this.dictVal(o.dictCode);\n item.placeholder = '请选择' + o.title;\n item.clearable = o.clearableSEARCHToOtherProp == '1';\n item.multiple = o.selectDom == '8';\n } else if (o.selectDom == 7) {\n item.itemRender.props.type = 'number';\n } else if (o.selectDom == 10) {\n item.itemRender.name = 'textarea';\n } else if (o.selectDom == 3 || o.selectDom == 6) {\n delete item.itemRender;\n item.domDate = true;\n item.selectType = o.selectType;\n //这里跟element plus不一样\n item.domFormat = vue__WEBPACK_IMPORTED_MODULE_0__.version.split('.')[0] == 2 ? 'yyyy-MM-dd' : 'YYYY-MM-DD';\n if (item.selectDom == 3) {\n item.domFormat = item.domFormat + ' HH:mm:ss';\n item.domType = o.selectType == 98 ? \"datetimerange\" : 'datetime';\n } else {\n item.domType = o.selectType == 98 ? \"daterange\" : 'date';\n }\n item.slots = {\n default: o.selectDom + item.field + \"_time\"\n };\n item.slotsName = o.selectDom + item.field + \"_time\";\n item.placeholder = '请选择';\n if (type == 5) {\n item.placeholder += \"开始\";\n } else if (type == 6) {\n item.placeholder += \"结束\";\n }\n if (o.selectDom == 3) {\n item.placeholder += \"时间\";\n }\n }\n },\n setColumnShowOverFlow(column, optionObj) {\n if (optionObj) {\n if (optionObj.table && optionObj.table.columnConfig && optionObj.table.columnConfig.showOverflow) {\n if (column.type != 'seq' || column.type != 'checkbox') {\n column.showOverflow = optionObj.table.columnConfig.showOverflow;\n }\n }\n }\n },\n initMergeCells() {\n if (this.table.mergeCells) {\n this.table.mergeCells = JSON.parse(this.table.mergeCells);\n return;\n }\n if (this.table.mergeFields && this.table.mergeFields.length != 0) {\n this.table.spanMethod = this.mergeRowMethod;\n }\n },\n // 通用行合并函数(将相同多列数据合并为一行)\n mergeRowMethod({\n row,\n _rowIndex,\n column,\n visibleData\n }) {\n const cellValue = row[column.field];\n if (cellValue && this.table.mergeFields.includes(column.field)) {\n const prevRow = visibleData[_rowIndex - 1];\n let nextRow = visibleData[_rowIndex + 1];\n if (prevRow && prevRow[column.field] === cellValue) {\n return {\n rowspan: 0,\n colspan: 0\n };\n } else {\n let countRowspan = 1;\n while (nextRow && nextRow[column.field] === cellValue) {\n nextRow = visibleData[++countRowspan + _rowIndex];\n }\n if (countRowspan > 1) {\n return {\n rowspan: countRowspan,\n colspan: 1\n };\n }\n }\n }\n },\n setDictCellStyle({\n row,\n rowIndex,\n $rowIndex,\n column,\n columnIndex,\n $columnIndex\n }) {\n if (column.params && column.params.cssClass) {\n return column.params.cssClass[row[column[(0,_utils_columnProp__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(column)]]];\n }\n },\n setTableStyle(option) {\n if (option['cell-style'] === undefined) {\n option['cell-style'] = {\n flag: \"flag##function#\",\n isFunction: true\n };\n }\n option['cell-style']['code'] = \"let OTMixinColumnMethod_setDictCellStyle = this.setDictCellStyle(params); if(OTMixinColumnMethod_setDictCellStyle){ return OTMixinColumnMethod_setDictCellStyle;}\\n\" + option['cell-style']['code'];\n }\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/OTMixinColumnMethod.js?");
|
|
12735
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OTMixinColumnMethod: function() { return /* binding */ OTMixinColumnMethod; }\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/core-js/modules/es.iterator.filter.js\");\n/* harmony import */ var core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_filter_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.iterator.find.js */ \"./node_modules/core-js/modules/es.iterator.find.js\");\n/* harmony import */ var core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_find_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.iterator.some.js */ \"./node_modules/core-js/modules/es.iterator.some.js\");\n/* harmony import */ var core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_some_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _utils_columnProp__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/columnProp */ \"./src/utils/columnProp.js\");\n/* harmony import */ var _utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/FilterType.js */ \"./src/utils/FilterType.js\");\n/* harmony import */ var _utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9__);\n\n\n\n\n\n\n\n\n\n\n\nfunction setColumnParams(column, key, value) {\n if (value === undefined) {\n return;\n }\n if (!column['params']) {\n column['params'] = {};\n }\n column['params'][key] = value;\n}\nconst OTMixinColumnMethod = {\n methods: {\n setColumnCssClass(o) {\n if (o.dictCode) {\n let vals = this.dictVal(o.dictCode);\n let cssClass = {};\n if (vals) {\n let dictValueLabel = {};\n for (let obj of vals) {\n dictValueLabel[obj.dictValue] = obj.dictLabel;\n if (obj.cssClass) {\n let css = obj.cssClass.trim();\n try {\n css = css.replace(/([a-zA-Z_]\\w*):/g, '\"$1\":').replace(/'/g, '\"');\n css = JSON.parse(css);\n if (Array.isArray(css)) {\n let data = {};\n if (css[0]) {\n data['backgroundColor'] = css[0];\n }\n if (css[1]) {\n data['color'] = css[1];\n }\n cssClass[obj.dictValue] = data;\n } else {\n cssClass[obj.dictValue] = css;\n }\n } catch (e) {\n console.error(\"列名:\", o.title, \"数据字典:\", obj.dictLabel, \"样式异常:\", css);\n }\n }\n }\n setColumnParams(o, 'dictValueLabel', dictValueLabel);\n }\n if (Object.keys(cssClass).length != 0) {\n setColumnParams(o, 'cssClass', cssClass);\n }\n }\n },\n initColumn(columns, tableConfig) {\n this.table.mergeFields = [];\n let items = [];\n columns = columns.sort(({\n sort: a\n }, {\n sort: b\n }) => a - b);\n for (let column of columns) {\n this.toParseOtherProp(column);\n }\n this.table.columnSource = JSON.parse(JSON.stringify(columns));\n let {\n optionJson,\n seq\n } = tableConfig;\n if (optionJson) {\n optionJson = JSON.parse(optionJson);\n }\n let enableFilter = optionJson?.table?.enableFilter;\n let hasEditConfig = this.hasEditConfig();\n for (let o of columns) {\n this.setColumnCssClass(o);\n this.initFormatter(o);\n this.initSlots(o);\n this.setTreeOpenColumn(o, tableConfig);\n this.setMergeField(o);\n this.setColumnShowOverFlow(o, optionJson);\n this.setProp(o);\n this.setColumnHide(o);\n this.setFixed(o);\n this.setShowFooter(o);\n this.getVNode(o, items);\n if (enableFilter) {\n this.setFilters(o);\n }\n // 可编辑配置\n if (hasEditConfig) {\n this.setEditConfig(o);\n }\n }\n items.sort(({\n searchSort: a\n }, {\n searchSort: b\n }) => a - b);\n this.setSearchArea(items);\n columns = this.initBodyLeftColumn(columns, seq);\n if (this.table['show-footer']) {\n if (!columns[0].width || columns[0].width < 55) {\n columns[0].width = 55;\n }\n }\n this.table.columns = columns;\n\n // console.info('表格',this.table)\n // console.info('表格配置信息',this.table.columnSource)\n\n this.setColumnFormatter(this, '24', 'department'); //部门选择器的Formatter\n this.setColumnFormatter(this, '25', 'role'); //角色选择器的Formatter\n this.setColumnFormatter(this, '26', 'post'); //岗位选择器的Formatter\n this.setColumnFormatter(this, '27', 'user'); //人员选择器的Formatter\n\n //暂时不合并,启用虚拟滚动\n this.initMergeCells();\n },\n /**\r\n * 动态设置列的 formatter(将值映射为字典标签)\r\n * @param {Object} context - Vue 组件实例(this)\r\n * @param {String} selectDomValue - 匹配的 selectDom 值(如 '24')\r\n * @param {String} typeField - 动态列配置属性名(如 'department')\r\n */\n setColumnFormatter(context, selectDomValue, typeField) {\n const configListProp = typeField + 'ColumnsConfig';\n const dictPropName = typeField + 'Dict';\n\n // 1. 过滤出目标列配置\n const configList = context.table.columnSource.filter(item => item.selectDom === selectDomValue);\n context.table.other[configListProp] = configList;\n\n // console.info(`动态列配置(${configListProp}):`, configList);\n\n // 2. 如果存在目标列,设置 formatter\n if (configList.length > 0) {\n configList.forEach(columnConfig => {\n const targetColumn = context.table.columns.find(col => col.field === columnConfig.field);\n if (targetColumn) {\n targetColumn.formatter = ({\n cellValue\n }) => {\n // 检查是否是类似'[1,2]'的数组字符串\n if (typeof cellValue === 'string' && cellValue.startsWith('[') && cellValue.endsWith(']')) {\n try {\n // 尝试解析为数组\n const values = JSON.parse(cellValue);\n if (Array.isArray(values)) {\n // 查找所有匹配的字典项并拼接标签\n const labels = values.map(value => {\n const dictItem = context.table.other[dictPropName]?.find(item => item.value == value // 使用宽松相等比较\n );\n return dictItem ? dictItem.label : value;\n });\n return labels.join(','); // 用逗号连接标签\n }\n } catch (e) {\n // 解析失败,按原样处理\n }\n }\n const dictItem = context.table.other[dictPropName]?.find(item => item.value === cellValue);\n return dictItem ? dictItem.label : cellValue; // 显示标签或原值\n };\n }\n });\n }\n },\n hasEditConfig() {\n return this.table.editConfig && (this.table.editConfig.enabled === true || typeof this.table.editConfig.enabled === 'string' && this.table.editConfig.enabled.toLowerCase() === 'true');\n },\n setEditConfig(o) {\n if (o.tableSaveToOtherProp && o.tableSaveToOtherProp == '1') {\n return;\n }\n if (o.selectDom == '1') {\n o.editRender = {\n name: '$input',\n props: {\n placeholder: '请输入' + o.title,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n };\n }\n // 文本域\n if (o.selectDom == '10') {\n o.editRender = {\n name: 'textarea',\n props: {\n type: 'textarea',\n // 指定为多行文本框\n placeholder: '请输入' + o.title,\n rows: 3,\n // 默认显示行数\n autosize: {\n minRows: 2,\n maxRows: 6\n },\n // 自动调整高度\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n };\n }\n // 数字\n if (o.selectDom == '7') {\n o.editRender = {\n name: '$input',\n props: {\n type: this.getType(o.selectDom),\n placeholder: '请输入' + o.title,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n };\n }\n // 时间\n if (o.selectDom == '3' || o.selectDom == '6') {\n o.editRender = {\n name: 'VxeInput',\n props: {\n type: this.getType(o.selectDom),\n valueFormat: 'yyyy-MM-dd HH:mm:ss'\n }\n };\n }\n // 下拉框\n if (o.selectDom == '2' || o.selectDom == '8') {\n o.editRender = {\n name: 'VxeSelect',\n options: this.dictVal(o.dictCode),\n props: {\n placeholder: '请选择' + o.title\n }\n };\n }\n if (o.selectDom == '5') {\n console.log('复选框:', o);\n // o.slotsName = 'checkbox_default';\n // o.slots = {\n // default: 'checkbox_default'\n // }\n o.slots = {\n default: ({\n row,\n column\n }) => (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)((0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)(\"vxe-checkbox\"), {\n \"modelValue\": row[column.field],\n \"onUpdate:modelValue\": $event => row[column.field] = $event,\n \"checkedValue\": 1,\n \"uncheckedValue\": 0\n }, null)\n };\n }\n },\n getType(selectDom) {\n if (selectDom == '3') {\n return 'datetime';\n }\n if (selectDom == '6') {\n return 'date';\n }\n if (selectDom == '7') {\n return 'number';\n }\n },\n /**\r\n * 初始化列左边\r\n * @param columns\r\n * @param type\r\n * @returns {*}\r\n */\n initBodyLeftColumn(columns, type) {\n const hasSeqColumn = columns.some(col => ['seq', 'sequence', '序号'].includes(col.field || col.prop || col.type));\n if (type == 1 && !hasSeqColumn) {\n columns.unshift({\n type: 'seq',\n width: 55,\n title: '序号',\n fixed: 'left'\n });\n }\n const hasCheckboxColumn = columns.some(col => ['checkbox'].includes(col.type));\n const hasRadioColumn = columns.some(col => ['radio'].includes(col.type));\n if (this.selectBox == 2 && !hasCheckboxColumn) {\n columns.unshift({\n type: 'checkbox',\n width: 45,\n showOverflow: false,\n fixed: 'left'\n });\n } else if (this.selectBox == 1 && !hasRadioColumn) {\n columns.unshift({\n type: 'radio',\n width: 45,\n showOverflow: false,\n fixed: 'left'\n });\n }\n return columns;\n },\n setTreeOpenColumn(o, tableConfig) {\n if (tableConfig.tree == 1 && o.field == tableConfig.openColumn) {\n o.treeNode = true;\n if (!o.align) {\n o.align = 'left';\n }\n }\n },\n setMergeField(column) {\n if (column.mergeFlag == '1') {\n this.table.mergeFields.push(column.field);\n }\n },\n setColumnHide(o) {\n //隐藏\n if (o.visible == \"0\") {\n o.visible = false;\n }\n },\n initFormatter(o) {\n try {\n if (o.formatter) {\n o.formatter = eval(\"({cellValue, row, column})=>{\" + o.formatter + \"}\");\n } else if (o.dictCode) {\n o.formatter = eval(\"\" + \"({cellValue, row, column})=>{if(column.params && column.params.dictValueLabel){ let dictValueLabelElement = column.params.dictValueLabel[cellValue];if(dictValueLabelElement){return dictValueLabelElement;} }return cellValue}\");\n }\n } catch (e) {\n console.log(o.title, \"formatter异常:\", o.formatter);\n this.$message.error(o.title + \"formatter异常!\");\n }\n },\n initSlots(o) {\n if (o.selectDom == 20) {\n o.slotsName = 'img_default';\n o.slots = {\n default: 'img_default'\n };\n }\n if (o.selectDom == '21') {\n o.slotsName = 'icon_default';\n o.slots = {\n default: 'icon_default'\n };\n }\n if (o.selectDom == '23') {\n o.slotsName = 'video_default';\n o.slots = {\n default: 'video_default'\n };\n }\n },\n /**\r\n * 播放器初始化\r\n * @param player\r\n */\n handleReady(player) {\n console.log(' 播放器已初始化', player);\n this.player = player;\n },\n /**\r\n * 视频播放\r\n */\n handlePlay() {\n console.log(' 视频开始播放');\n },\n changeToChinese() {\n console.log(\"this.playerOptions.value.player\", this.player);\n },\n handlePlay1() {\n console.log(' 视频开始播放');\n this.$refs.playerRef.player.play(); // 通过ref调用播放器方法\n this.showCustomModal.value = false;\n },\n setFixed(item) {\n //修改固定字段的值\n if (item.fixed === '1') {\n item.fixed = 'left';\n } else if (item.fixed === '2') {\n item.fixed = 'right';\n }\n if (item.align === '1') {\n item.align = 'left';\n } else if (item.align === '2') {\n item.align = 'right';\n } else if (item.align === '0') {\n item.align = 'center';\n }\n },\n setProp(item) {\n item.resizable = undefined;\n if (item.sortable != undefined && item.sortable != \"\") {\n let order = item.field + (item.sortable == 0 ? \" ASC \" : \" DESC \");\n this.orderByColumns.push(order);\n }\n ////时间类型\n if (!item.width && (item.selectDom == 3 || item.selectDom == 6)) {\n item.minWidth = 150;\n } else if (!item.width && item.title) {\n item.minWidth = item.title.length * 30;\n }\n },\n setShowFooter(item) {\n if (item['totalToOtherProp']) {\n this.table['show-footer'] = true;\n }\n },\n toParseOtherProp(item) {\n //其他属性赋值\n try {\n let otherProp = JSON.parse(item?.otherProp || {});\n item.otherProp = otherProp;\n for (let key of Object.keys(otherProp)) {\n item[key] = otherProp[key];\n }\n } catch (e) {\n if (item.otherProp) {\n console.error(item.field + \"其他属性无法解析:\" + item.otherProp);\n }\n item.otherProp = {};\n }\n if (item['totalToOtherProp'] === undefined) {\n item['totalToOtherProp'] = '';\n }\n },\n /**\r\n * 设置搜索\r\n * @param items\r\n */\n setSearchArea(items) {\n if (items.length != 0) {\n items.push({\n itemRender: {\n name: '$buttons',\n children: [{\n props: {\n type: 'submit',\n content: '查询',\n status: 'primary'\n },\n events: {\n click: this.query\n }\n }, {\n props: {\n type: 'button',\n content: '重置'\n },\n events: {\n click: this.resetQuery\n }\n }]\n }\n });\n this.table.formConfig.size = this.table.size;\n }\n this.table.formConfig.items = items;\n },\n setFilters(o) {\n if (o.dictCode) {\n o.filters = this.dictVal(o.dictCode);\n o.filterMultiple = true;\n o.filterMethod = ({\n option,\n row,\n column\n }) => {};\n } else {\n // o.slots={\n // header:'OlTableFilterRender'\n // }\n o.filters = [{\n data: ''\n }];\n o.filterMultiple = false;\n o.filterRender = {\n name: 'FilterExtend'\n };\n o.cellType = this.getType(o.selectDom);\n }\n o.filterMethod = this.filterMethod;\n },\n filterMethod({\n option,\n row,\n column\n }) {\n const {\n type,\n value,\n min,\n max\n } = option?.data || {};\n const cellValue = String(row[column.field]);\n switch (type) {\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default().EQUAL):\n return this.isEqual(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default().NOT_EQUAL):\n return this.isNotEqual(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default().STARTS_WITH):\n return this.startsWith(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default().ENDS_WITH):\n return this.endsWith(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default().CONTAINS):\n return this.contains(cellValue, value);\n case (_utils_FilterType_js__WEBPACK_IMPORTED_MODULE_9___default().BETWEEN):\n if (column.cellType === 'date' || column.cellType === 'datetime') {\n return this.dateTimeFilterMethod({\n cellValue,\n min,\n max\n });\n }\n return this.isInRange(cellValue, min, max);\n default:\n if (option.value) {\n return cellValue === option.value;\n }\n return true;\n }\n },\n /**\r\n * 数值范围筛选方法\r\n * @param cellValue\r\n * @param min\r\n * @param max\r\n * @returns {boolean}\r\n */\n isInRange(cellValue, min, max) {\n const numValue = Number(cellValue) || 0;\n const numMin = Number(min) || -Infinity;\n const numMax = Number(max) || Infinity;\n return numValue >= numMin && numValue <= numMax;\n },\n /**\r\n * 判断是否包含开头\r\n * @param cellValue\r\n * @param value\r\n * @returns {*}\r\n */\n endsWith(cellValue, value) {\n if (Array.isArray(value)) {\n return value.some(item => cellValue.endsWith(item));\n }\n return cellValue.endsWith(value);\n },\n /**\r\n * 判断是否包含开头\r\n * @param cellValue\r\n * @param value\r\n * @returns {*}\r\n */\n startsWith(cellValue, value) {\n if (Array.isArray(value)) {\n return value.some(item => cellValue.startsWith(item));\n }\n return cellValue.startsWith(value);\n },\n /**\r\n * 判断是否包含\r\n * @param cellValue\r\n * @param value\r\n * @returns {*}\r\n */\n contains(cellValue, value) {\n if (Array.isArray(value)) {\n return value.some(item => cellValue.includes(item));\n }\n return cellValue.includes(value);\n },\n /**\r\n * 判断字符串与值是否不相等(支持值可能是数组的情况)\r\n * @param {string} cellValue - 要比较的字符串\r\n * @param {string|Array} value - 要比较的值(可以是字符串或数组)\r\n * @returns {boolean} 是否不相等\r\n */\n isNotEqual(cellValue, value) {\n // 如果value是数组,循环判断是否包含cellValue\n if (Array.isArray(value)) {\n return !value.some(item => item === cellValue);\n }\n\n // 如果value不是数组,直接比较字符串\n return cellValue !== value;\n },\n /**\r\n * 比较字符串与值是否相等(支持值可能是数组的情况)\r\n * @param {string} cellValue - 要比较的字符串\r\n * @param {string|Array} value - 要比较的值(可以是字符串或数组)\r\n * @returns {boolean} 是否相等\r\n */\n isEqual(cellValue, value) {\n // 如果value是数组,循环判断是否包含cellValue\n if (Array.isArray(value)) {\n return value.some(item => item === cellValue);\n }\n\n // 如果value不是数组,直接比较字符串\n return cellValue === value;\n },\n /**\r\n * 日期时间范围筛选方法\r\n * @param cellValue 表格数据值\r\n * @param min 最小值\r\n * @param max 最大值\r\n * @returns {boolean}\r\n */\n dateTimeFilterMethod({\n cellValue,\n min,\n max\n }) {\n if (!min && !max) {\n return true;\n }\n const rowValue = cellValue ? new Date(cellValue) : null;\n const startDate = min ? new Date(min) : null;\n const endDate = max ? new Date(max) : null;\n if (startDate && endDate) {\n return rowValue >= startDate && rowValue <= endDate;\n } else if (startDate) {\n return rowValue >= startDate;\n } else if (endDate) {\n return rowValue <= endDate;\n }\n return true;\n },\n getVNode(o, items) {\n if (o.selectType == undefined) {\n return;\n }\n //99是范围查询\n if (o.selectType == 99) {\n let itemStart = this.initFormConfig(o, 5);\n let itemEnd = this.initFormConfig(o, 6);\n //时间范围查询\n if (o.selectDom == 3 || o.selectDom == 6) {\n let placeholder = o.selectDom == 3 ? '时间' : '';\n itemStart.placeholder = '请选择开始日期' + placeholder;\n delete itemStart.itemRender;\n itemEnd.placeholder = '请选择结束日期' + placeholder;\n }\n items.push(itemStart);\n items.push(itemEnd);\n } else {\n items.push(this.initFormConfig(o));\n }\n },\n initFormConfig(o, type) {\n let key = o.fieldNameSEARCHToOtherProp != undefined && o.fieldNameSEARCHToOtherProp != '' ? o.fieldNameSEARCHToOtherProp : o.tableField;\n if (o.tableNameSEARCHToOtherProp != undefined && o.tableNameSEARCHToOtherProp != '') {\n key = o.tableNameSEARCHToOtherProp + '.' + key;\n }\n let item = {\n align: 'left',\n field: key,\n span: 6,\n searchSort: o.searchSort,\n title: o.titleSEARCHToOtherProp != undefined ? o.titleSEARCHToOtherProp : o.title,\n key: key,\n type: o.selectType,\n selectDom: o.selectDom,\n tableName: o.tableNameSEARCHToOtherProp,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true,\n toDate: o.toDateSEARCHToOtherProp,\n itemRender: {\n name: '$input',\n props: {\n placeholder: '请输入' + o.title,\n clearable: o.clearableSEARCHToOtherProp == '1' ? false : true\n }\n }\n };\n try {\n this.table.formConfig.data[item.key] = eval(o.valueSEARCHToOtherProp);\n } catch (e) {}\n if (type == 5) {\n item.title = o.title + \"开始\";\n item.type = 5;\n item.field = \"$\" + o.tableField;\n item.key = \"$\" + o.tableField;\n } else if (type == 6) {\n item.field = o.tableField + \"$\";\n item.type = 6;\n item.key = o.tableField + \"$\";\n item.title = o.title + \"结束\";\n }\n if ((item.type == 6 || item.type == 5) && o.selectDom == undefined) {\n o.selectDom = 7;\n }\n this.getItemRender(o, item, type);\n if (item.title && item.title.length > 6) {\n item.titleWidth = 20 * (item.title.length - 2);\n } else if (item.title.toString().trim().length == 0) {\n item.titleWidth = 0;\n }\n if (o.spanSEARCHToOtherProp != undefined) {\n item.span = 6;\n }\n return item;\n },\n getItemRender(o, item, type) {\n if (o.dictCode) {\n delete item.itemRender;\n item.slots = {\n default: o.selectDom + item.field\n };\n item.slotsName = o.selectDom + item.field;\n item.options = this.dictVal(o.dictCode);\n item.placeholder = '请选择' + o.title;\n item.clearable = o.clearableSEARCHToOtherProp != '1';\n item.multiple = o.selectDom == '8';\n item.filterable = true;\n } else if (o.selectDom == 7) {\n item.itemRender.props.type = 'number';\n } else if (o.selectDom == 10) {\n item.itemRender.name = 'textarea';\n } else if (o.selectDom == 3 || o.selectDom == 6) {\n delete item.itemRender;\n item.domDate = true;\n item.selectType = o.selectType;\n //这里跟element plus不一样\n item.domFormat = vue__WEBPACK_IMPORTED_MODULE_0__.version.split('.')[0] == 2 ? 'yyyy-MM-dd' : 'YYYY-MM-DD';\n if (item.selectDom == 3) {\n item.domFormat = item.domFormat + ' HH:mm:ss';\n item.domType = o.selectType == 98 ? \"datetimerange\" : 'datetime';\n } else {\n item.domType = o.selectType == 98 ? \"daterange\" : 'date';\n }\n item.slots = {\n default: o.selectDom + item.field + \"_time\"\n };\n item.slotsName = o.selectDom + item.field + \"_time\";\n item.placeholder = '请选择';\n if (type == 5) {\n item.placeholder += \"开始\";\n } else if (type == 6) {\n item.placeholder += \"结束\";\n }\n if (o.selectDom == 3) {\n item.placeholder += \"时间\";\n }\n }\n },\n setColumnShowOverFlow(column, optionObj) {\n if (optionObj) {\n if (optionObj.table && optionObj.table.columnConfig && optionObj.table.columnConfig.showOverflow) {\n if (column.type != 'seq' || column.type != 'checkbox') {\n column.showOverflow = optionObj.table.columnConfig.showOverflow;\n }\n }\n }\n },\n initMergeCells() {\n if (this.table.mergeCells) {\n this.table.mergeCells = JSON.parse(this.table.mergeCells);\n return;\n }\n if (this.table.mergeFields && this.table.mergeFields.length != 0) {\n this.table.spanMethod = this.mergeRowMethod;\n }\n },\n // 通用行合并函数(将相同多列数据合并为一行)\n mergeRowMethod({\n row,\n _rowIndex,\n column,\n visibleData\n }) {\n const cellValue = row[column.field];\n if (cellValue && this.table.mergeFields.includes(column.field)) {\n const prevRow = visibleData[_rowIndex - 1];\n let nextRow = visibleData[_rowIndex + 1];\n if (prevRow && prevRow[column.field] === cellValue) {\n return {\n rowspan: 0,\n colspan: 0\n };\n } else {\n let countRowspan = 1;\n while (nextRow && nextRow[column.field] === cellValue) {\n nextRow = visibleData[++countRowspan + _rowIndex];\n }\n if (countRowspan > 1) {\n return {\n rowspan: countRowspan,\n colspan: 1\n };\n }\n }\n }\n },\n setDictCellStyle({\n row,\n rowIndex,\n $rowIndex,\n column,\n columnIndex,\n $columnIndex\n }) {\n if (column.params && column.params.cssClass) {\n return column.params.cssClass[row[column[(0,_utils_columnProp__WEBPACK_IMPORTED_MODULE_8__[\"default\"])(column)]]];\n }\n },\n setTableStyle(option) {\n if (option['cell-style'] === undefined) {\n option['cell-style'] = {\n flag: \"flag##function#\",\n isFunction: true\n };\n }\n option['cell-style']['code'] = \"let OTMixinColumnMethod_setDictCellStyle = this.setDictCellStyle(params); if(OTMixinColumnMethod_setDictCellStyle){ return OTMixinColumnMethod_setDictCellStyle;}\\n\" + option['cell-style']['code'];\n }\n }\n};\n\n//# sourceURL=webpack://olp-table/./src/mixins/VTMixin/OTMixinColumnMethod.js?");
|
|
12768
12736
|
|
|
12769
12737
|
/***/ }),
|
|
12770
12738
|
|
|
@@ -13088,7 +13056,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
13088
13056
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
13089
13057
|
|
|
13090
13058
|
"use strict";
|
|
13091
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clear: function() { return /* binding */ clear; },\n/* harmony export */ clone: function() { return /* binding */ clone; },\n/* harmony export */ convertToStringifiedJson: function() { return /* binding */ convertToStringifiedJson; },\n/* harmony export */ copeProperties: function() { return /* binding */ copeProperties; },\n/* harmony export */ fillTemplate: function() { return /* binding */ fillTemplate; },\n/* harmony export */ getFirstLetter: function() { return /* binding */ getFirstLetter; },\n/* harmony export */ setArrayObjectKeyValue: function() { return /* binding */ setArrayObjectKeyValue; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2__);\n\n\n\n/**\r\n * 对象深拷贝\r\n * @param {Object} obj\r\n */\nconst clone = obj => {\n return JSON.parse(JSON.stringify(obj));\n};\nconst clear = obj => {\n Object.keys(obj).map(key => {\n delete obj[key];\n });\n};\n/**\r\n * 对象属性赋值\r\n * @param obj 被复制对象\r\n * @param target 赋值对象\r\n */\nconst copeProperties = (obj, target) => {\n if (obj && target) {\n Object.keys(obj).forEach(key => {\n target[key] = obj[key];\n });\n }\n};\nconst convertToStringifiedJson = str => {\n // 替换单引号为双引号(如果字符串值本应该包含单引号,这会导致问题)\n let jsonStr = str.replace(/'/g, '\"');\n // 确保整个对象用双引号包围\n jsonStr = `{${jsonStr}}`;\n // 移除花括号(如果它们是因为错误地包含在原始字符串中)\n jsonStr = jsonStr.replace(/^{/, '').replace(/}$/, '').replace(/(\\w+):(\\d+)/g, '\"$1\":$2');\n // 尝试解析JSON字符串\n let obj = JSON.parse(jsonStr);\n for (let key in obj) {\n if (typeof obj[key] === 'number') {\n obj[key] = obj[key].toString();\n }\n }\n return obj;\n};\n/**\r\n * 获取两个对象差异属性\r\n * @param o1 被对照对象\r\n * @param o2 目标对象\r\n */\nconst getDifferenceProperties = (o1, o2) => {\n let differenceProperties = {};\n if (o1 && o2) {\n Object.keys(o1).forEach(k => {\n if (o2[k] !== undefined && o2[k] != o1[k]) {\n differenceProperties[k] = o2[k];\n }\n });\n }\n return differenceProperties;\n};\nconst fillTemplate = (template, params) => {\n return template.replace(/\\$\\{(\\w+)\\}/g, (_, key) => params[key] || '');\n};\nconst setArrayObjectKeyValue = (array, key, value, prop) => {\n let props = prop.split(\",\");\n for (let o of array) {\n if (props.indexOf(o.prop) != -1 || props.indexOf(o.field) != -1) {\n o[key] = value;\n }\n }\n};\nconst getFirstLetter = str => {\n let unicode = str.charCodeAt(0);\n if (unicode >= 19968 && unicode <= 40869) {\n let index = parseInt((unicode - 19968) / 408) + 1;\n return String.fromCharCode(64 + index);\n } else {\n return str.charAt(0);\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n clone,\n clear,\n copeProperties,\n getDifferenceProperties,\n getFirstLetter,\n convertToStringifiedJson\n});\n\n//# sourceURL=webpack://olp-table/./src/utils/object.js?");
|
|
13059
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clear: function() { return /* binding */ clear; },\n/* harmony export */ clone: function() { return /* binding */ clone; },\n/* harmony export */ convertToStringifiedJson: function() { return /* binding */ convertToStringifiedJson; },\n/* harmony export */ copeProperties: function() { return /* binding */ copeProperties; },\n/* harmony export */ fillTemplate: function() { return /* binding */ fillTemplate; },\n/* harmony export */ getFirstLetter: function() { return /* binding */ getFirstLetter; },\n/* harmony export */ parseJson: function() { return /* binding */ parseJson; },\n/* harmony export */ setArrayObjectKeyValue: function() { return /* binding */ setArrayObjectKeyValue; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/core-js/modules/es.iterator.constructor.js\");\n/* harmony import */ var core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_constructor_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.iterator.for-each.js */ \"./node_modules/core-js/modules/es.iterator.for-each.js\");\n/* harmony import */ var core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_for_each_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/core-js/modules/es.iterator.map.js\");\n/* harmony import */ var core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_iterator_map_js__WEBPACK_IMPORTED_MODULE_2__);\n\n\n\n/**\r\n * 对象深拷贝\r\n * @param {Object} obj\r\n */\nconst clone = obj => {\n return JSON.parse(JSON.stringify(obj));\n};\nconst clear = obj => {\n Object.keys(obj).map(key => {\n delete obj[key];\n });\n};\n/**\r\n * 对象属性赋值\r\n * @param obj 被复制对象\r\n * @param target 赋值对象\r\n */\nconst copeProperties = (obj, target) => {\n if (obj && target) {\n Object.keys(obj).forEach(key => {\n target[key] = obj[key];\n });\n }\n};\nconst convertToStringifiedJson = str => {\n // 替换单引号为双引号(如果字符串值本应该包含单引号,这会导致问题)\n let jsonStr = str.replace(/'/g, '\"');\n // 确保整个对象用双引号包围\n jsonStr = `{${jsonStr}}`;\n // 移除花括号(如果它们是因为错误地包含在原始字符串中)\n jsonStr = jsonStr.replace(/^{/, '').replace(/}$/, '').replace(/(\\w+):(\\d+)/g, '\"$1\":$2');\n // 尝试解析JSON字符串\n let obj = JSON.parse(jsonStr);\n for (let key in obj) {\n if (typeof obj[key] === 'number') {\n obj[key] = obj[key].toString();\n }\n }\n return obj;\n};\n/**\r\n * 获取两个对象差异属性\r\n * @param o1 被对照对象\r\n * @param o2 目标对象\r\n */\nconst getDifferenceProperties = (o1, o2) => {\n let differenceProperties = {};\n if (o1 && o2) {\n Object.keys(o1).forEach(k => {\n if (o2[k] !== undefined && o2[k] != o1[k]) {\n differenceProperties[k] = o2[k];\n }\n });\n }\n return differenceProperties;\n};\nconst fillTemplate = (template, params) => {\n return template.replace(/\\$\\{(\\w+)\\}/g, (_, key) => params[key] || '');\n};\nconst setArrayObjectKeyValue = (array, key, value, prop) => {\n let props = prop.split(\",\");\n for (let o of array) {\n if (props.indexOf(o.prop) != -1 || props.indexOf(o.field) != -1) {\n o[key] = value;\n }\n }\n};\nconst getFirstLetter = str => {\n let unicode = str.charCodeAt(0);\n if (unicode >= 19968 && unicode <= 40869) {\n let index = parseInt((unicode - 19968) / 408) + 1;\n return String.fromCharCode(64 + index);\n } else {\n return str.charAt(0);\n }\n};\nconst parseJson = column => {\n let attrs = column.attrs;\n if (attrs) {\n try {\n attrs = JSON.parse(attrs);\n for (let key of Object.keys(attrs)) {\n column[key] = attrs[key];\n }\n } catch (e) {\n console.error(\"解析attrs异常\", attrs);\n }\n }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n parseJson,\n clone,\n clear,\n copeProperties,\n getDifferenceProperties,\n getFirstLetter,\n convertToStringifiedJson\n});\n\n//# sourceURL=webpack://olp-table/./src/utils/object.js?");
|
|
13092
13060
|
|
|
13093
13061
|
/***/ }),
|
|
13094
13062
|
|
|
@@ -15303,50 +15271,6 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
15303
15271
|
|
|
15304
15272
|
/***/ }),
|
|
15305
15273
|
|
|
15306
|
-
/***/ "./src/views/tree/components/form-config/index.vue":
|
|
15307
|
-
/*!*********************************************************!*\
|
|
15308
|
-
!*** ./src/views/tree/components/form-config/index.vue ***!
|
|
15309
|
-
\*********************************************************/
|
|
15310
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
15311
|
-
|
|
15312
|
-
"use strict";
|
|
15313
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _index_vue_vue_type_template_id_79de929c_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.vue?vue&type=template&id=79de929c&scoped=true */ \"./src/views/tree/components/form-config/index.vue?vue&type=template&id=79de929c&scoped=true\");\n/* harmony import */ var _index_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.vue?vue&type=script&lang=js */ \"./src/views/tree/components/form-config/index.vue?vue&type=script&lang=js\");\n/* harmony import */ var _index_vue_vue_type_style_index_0_id_79de929c_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true */ \"./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/dist/exportHelper.js */ \"./node_modules/vue-loader/dist/exportHelper.js\");\n\n\n\n\n;\n\n\nconst __exports__ = /*#__PURE__*/(0,_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_index_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"], [['render',_index_vue_vue_type_template_id_79de929c_scoped_true__WEBPACK_IMPORTED_MODULE_0__.render],['__scopeId',\"data-v-79de929c\"],['__file',\"src/views/tree/components/form-config/index.vue\"]])\n/* hot reload */\nif (false) // removed by dead control flow\n{}\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (__exports__);\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?");
|
|
15314
|
-
|
|
15315
|
-
/***/ }),
|
|
15316
|
-
|
|
15317
|
-
/***/ "./src/views/tree/components/form-config/index.vue?vue&type=script&lang=js":
|
|
15318
|
-
/*!*********************************************************************************!*\
|
|
15319
|
-
!*** ./src/views/tree/components/form-config/index.vue?vue&type=script&lang=js ***!
|
|
15320
|
-
\*********************************************************************************/
|
|
15321
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
15322
|
-
|
|
15323
|
-
"use strict";
|
|
15324
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./index.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=script&lang=js\");\n \n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?");
|
|
15325
|
-
|
|
15326
|
-
/***/ }),
|
|
15327
|
-
|
|
15328
|
-
/***/ "./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true":
|
|
15329
|
-
/*!******************************************************************************************************************!*\
|
|
15330
|
-
!*** ./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true ***!
|
|
15331
|
-
\******************************************************************************************************************/
|
|
15332
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
15333
|
-
|
|
15334
|
-
"use strict";
|
|
15335
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_style_index_0_id_79de929c_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!../../../../../node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../../../../node_modules/vue-loader/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../../../../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!../../../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true */ \"./node_modules/vue-style-loader/index.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=style&index=0&id=79de929c&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_style_index_0_id_79de929c_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_style_index_0_id_79de929c_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_style_index_0_id_79de929c_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = function(key) { return _node_modules_vue_style_loader_index_js_clonedRuleSet_22_use_0_node_modules_css_loader_dist_cjs_js_clonedRuleSet_22_use_1_node_modules_vue_loader_dist_stylePostLoader_js_node_modules_postcss_loader_dist_cjs_js_clonedRuleSet_22_use_2_node_modules_sass_loader_dist_cjs_js_clonedRuleSet_22_use_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_style_index_0_id_79de929c_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__[key]; }.bind(0, __WEBPACK_IMPORT_KEY__)\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?");
|
|
15336
|
-
|
|
15337
|
-
/***/ }),
|
|
15338
|
-
|
|
15339
|
-
/***/ "./src/views/tree/components/form-config/index.vue?vue&type=template&id=79de929c&scoped=true":
|
|
15340
|
-
/*!***************************************************************************************************!*\
|
|
15341
|
-
!*** ./src/views/tree/components/form-config/index.vue?vue&type=template&id=79de929c&scoped=true ***!
|
|
15342
|
-
\***************************************************************************************************/
|
|
15343
|
-
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
15344
|
-
|
|
15345
|
-
"use strict";
|
|
15346
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ render: function() { return /* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_template_id_79de929c_scoped_true__WEBPACK_IMPORTED_MODULE_0__.render; }\n/* harmony export */ });\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_40_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_3_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_index_vue_vue_type_template_id_79de929c_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!../../../../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!../../../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./index.vue?vue&type=template&id=79de929c&scoped=true */ \"./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/views/tree/components/form-config/index.vue?vue&type=template&id=79de929c&scoped=true\");\n\n\n//# sourceURL=webpack://olp-table/./src/views/tree/components/form-config/index.vue?");
|
|
15347
|
-
|
|
15348
|
-
/***/ }),
|
|
15349
|
-
|
|
15350
15274
|
/***/ "./src/views/tree/index.vue":
|
|
15351
15275
|
/*!**********************************!*\
|
|
15352
15276
|
!*** ./src/views/tree/index.vue ***!
|