@kp-ui/lowcode 1.0.53 → 1.0.55

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.
Files changed (34) hide show
  1. package/_virtual/virtual_svg-icons-register.js +2 -2
  2. package/_virtual/virtual_svg-icons-register.js.map +1 -1
  3. package/package.json +1 -1
  4. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js +4 -3
  5. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js.map +1 -1
  6. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue2.js.map +1 -1
  7. package/src/components/form-designer/setting-panel/form-setting.vue.js +22 -41
  8. package/src/components/form-designer/setting-panel/form-setting.vue.js.map +1 -1
  9. package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/cancelButtonHidden-editor.vue.js +4 -4
  10. package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/cancelButtonHidden-editor.vue.js.map +1 -1
  11. package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/line-height-editor.vue.js +32 -0
  12. package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/line-height-editor.vue.js.map +1 -0
  13. package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/okButtonHidden-editor.vue.js +4 -4
  14. package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/okButtonHidden-editor.vue.js.map +1 -1
  15. package/src/components/form-designer/setting-panel/property-editor/index.js +2 -1
  16. package/src/components/form-designer/setting-panel/property-editor/index.js.map +1 -1
  17. package/src/components/form-designer/setting-panel/propertyRegister.js +1 -0
  18. package/src/components/form-designer/setting-panel/propertyRegister.js.map +1 -1
  19. package/src/components/form-designer/widget-panel/containers/data-table.js +1 -0
  20. package/src/components/form-designer/widget-panel/containers/data-table.js.map +1 -1
  21. package/src/components/form-render/SubmitButtonRender.vue.js +2 -2
  22. package/src/components/form-render/SubmitButtonRender.vue.js.map +1 -1
  23. package/src/components/form-render/container-item/data-table-item.vue.js +4 -4
  24. package/src/components/form-render/container-item/data-table-item.vue.js.map +1 -1
  25. package/src/components/form-render/dynamic-dialog.vue.js +10 -2
  26. package/src/components/form-render/dynamic-dialog.vue.js.map +1 -1
  27. package/src/mixins/useDataTableMixin.js +14 -8
  28. package/src/mixins/useDataTableMixin.js.map +1 -1
  29. package/styles/style.css +1 -1
  30. package/types/src/components/form-designer/setting-panel/index.d.ts +1 -0
  31. package/types/src/components/form-designer/widget-panel/containers/data-table.d.ts.map +1 -1
  32. package/types/src/components/form-render/SubmitButtonRender.d.ts +3 -3
  33. package/types/src/components/form-render/SubmitButtonRender.d.ts.map +1 -1
  34. package/types/src/components/form-render/dynamic-dialog.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-item.vue.js","sources":["../../../../../src/components/form-render/container-item/data-table-item.vue"],"sourcesContent":["<template>\n <container-item-wrapper\n :style=\"{ display: 'flex', height: parseFloat(tableHeight || 0) + 'px' }\"\n v-show=\"!handleHidden()\"\n :widget=\"widget\"\n >\n <s-table\n class=\"tpf-surely-table\"\n ref=\"dataTable2\"\n :columns=\"columns.columns\"\n :class=\"[customClass]\"\n :size=\"widgetSize\"\n :dataSource=\"data\"\n :rowKey=\"record => record[widget.options.rowKey]\"\n :scroll=\"{ y: parseFloat(tableHeight || 0), x: 300 }\"\n :bordered=\"widget.options.border\"\n :style=\"{ width: widget.options.tableWidth }\"\n :row-class-name=\"rowClassName\"\n :rowSelection=\"handleRowSelection()\"\n :pagination=\"fmtPagination\"\n :customRow=\"handleCustomRow\"\n :rowClassName=\"rowClassName\"\n @change=\"handleTablePageChange\"\n @resizeColumn=\"handleResizeColumn\"\n :loading=\"loading\"\n >\n <template #emptyText>\n <a-empty />\n </template>\n <template #bodyCell=\"scope\">\n <template v-if=\"isShowBodyCell(scope.column.dataIndex)\">\n <RenderBodyCell :bodyCell=\"columns.bodyCell\" :scope=\"scope\" />\n </template>\n </template>\n </s-table>\n </container-item-wrapper>\n</template>\n\n<script>\n import ContainerItemWrapper from '@/components/form-render/container-item/container-item-wrapper.vue';\n import emitter from '@/utils/emitter';\n import i18n from '@/utils/i18n';\n\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n import refMixin from '@/components/form-render/refMixin';\n import containerItemMixin from '@/components/form-render/container-item/containerItemMixin';\n import useDataTableMixin from '@/mixins/useDataTableMixin';\n\n export default {\n name: 'DataTableItem',\n componentName: 'ContainerItem', // 必须固定为ContainerItem,用于接收父级组件的broadcast事件\n mixins: [emitter, i18n, refMixin, containerItemMixin, useDataTableMixin],\n components: {\n ContainerItemWrapper,\n ...FieldComponents\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n data: {\n type: Array,\n default: () => []\n },\n subFormRowIndex: {\n /* 子表单组件行索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormColIndex: {\n /* 子表单组件列索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormRowId: {\n /* 子表单组件行Id,唯一id且不可变 */ type: String,\n default: ''\n }\n },\n inject: ['refList', 'sfRefList', 'globalModel', 'getFormConfig', 'getGlobalDsv'],\n data() {\n return {};\n },\n computed: {\n formConfig() {\n return this.getFormConfig();\n }\n },\n created() {\n this.initRefList();\n this.handleOnCreated();\n },\n mounted() {\n this.loadDataTableDataSource();\n this.$nextTick(() => {\n this.handleOnMounted();\n });\n },\n beforeUnmount() {\n this.unregisterFromRefList();\n },\n methods: {\n getDataTableRef() {\n return this;\n },\n\n selectWidget(widget) {\n this.designer.setSelected(widget);\n },\n\n handleOnCreated() {\n if (!!this.widget.options.onCreated) {\n const customFunc = new Function(this.widget.options.onCreated);\n customFunc.call(this);\n }\n },\n\n handleOnMounted() {\n if (!!this.widget.options.onMounted) {\n const customFunc = new Function(this.widget.options.onMounted);\n customFunc.call(this);\n }\n },\n\n // --------------------- 以下为组件支持外部调用的API方法 begin ------------------//\n /* 提示:用户可自行扩充这些方法!!! */\n\n getTableColumns() {\n return this.widget.options.tableColumns;\n },\n\n /**\n * 获取选中行数据,格式为对象数组\n * @returns {[]}\n */\n getSelectedRow() {\n // return this.$refs.dataTable.selection\n return this.selectedRows;\n },\n\n /**\n * 获取选中行索引,格式为数组\n * @returns {[]}\n */\n getSelectedIndex() {\n return this.selectedIndices;\n }\n // --------------------- 以上为组件支持外部调用的API方法 end ------------------//\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .collapse-container {\n margin: 2px;\n\n .form-widget-list {\n min-height: 28px;\n }\n }\n\n :deep(.el-collapsed__header) {\n padding: 10px 12px;\n }\n</style>\n\n<style scoped>\n .data-table {\n flex: 1;\n max-width: 100%;\n min-width: 0;\n :deep(.tpf-surely-table) {\n font-size: 12px;\n .surely-table-cell-content {\n font-size: 12px;\n }\n }\n }\n :deep(.ant-table) .table-striped td {\n background-color: #fafafa;\n }\n</style>\n"],"names":["FieldComponents","_createBlock","_normalizeStyle","_createVNode","_normalizeClass","_withCtx"],"mappings":"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"}
1
+ {"version":3,"file":"data-table-item.vue.js","sources":["../../../../../src/components/form-render/container-item/data-table-item.vue"],"sourcesContent":["<template>\n <container-item-wrapper\n :style=\"{ display: 'flex', height: parseFloat(tableHeight || 0) + 'px' }\"\n v-show=\"!handleHidden()\"\n :widget=\"widget\"\n >\n <s-table\n class=\"tpf-surely-table\"\n ref=\"dataTable2\"\n :columns=\"columns.columns\"\n :class=\"[customClass]\"\n :size=\"widgetSize\"\n :dataSource=\"data\"\n :rowKey=\"record => record[widget.options.rowKey]\"\n :scroll=\"{ y: parseFloat(tableHeight || 0), x: 300 }\"\n :bordered=\"widget.options.border\"\n :style=\"{ width: widget.options.tableWidth }\"\n :row-class-name=\"rowClassName\"\n :rowSelection=\"handleRowSelection()\"\n :pagination=\"fmtPagination\"\n :customRow=\"handleCustomRow\"\n @change=\"handleTablePageChange\"\n @resizeColumn=\"handleResizeColumn\"\n :loading=\"loading\"\n :row-height=\"lineHeight\"\n >\n <template #emptyText>\n <a-empty />\n </template>\n <template #bodyCell=\"scope\">\n <template v-if=\"isShowBodyCell(scope.column.dataIndex)\">\n <RenderBodyCell :bodyCell=\"columns.bodyCell\" :scope=\"scope\" />\n </template>\n </template>\n </s-table>\n </container-item-wrapper>\n</template>\n\n<script>\n import ContainerItemWrapper from '@/components/form-render/container-item/container-item-wrapper.vue';\n import emitter from '@/utils/emitter';\n import i18n from '@/utils/i18n';\n\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n import refMixin from '@/components/form-render/refMixin';\n import containerItemMixin from '@/components/form-render/container-item/containerItemMixin';\n import useDataTableMixin from '@/mixins/useDataTableMixin';\n\n export default {\n name: 'DataTableItem',\n componentName: 'ContainerItem', // 必须固定为ContainerItem,用于接收父级组件的broadcast事件\n mixins: [emitter, i18n, refMixin, containerItemMixin, useDataTableMixin],\n components: {\n ContainerItemWrapper,\n ...FieldComponents\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n data: {\n type: Array,\n default: () => []\n },\n subFormRowIndex: {\n /* 子表单组件行索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormColIndex: {\n /* 子表单组件列索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormRowId: {\n /* 子表单组件行Id,唯一id且不可变 */ type: String,\n default: ''\n }\n },\n inject: ['refList', 'sfRefList', 'globalModel', 'getFormConfig', 'getGlobalDsv'],\n data() {\n return {};\n },\n computed: {\n formConfig() {\n return this.getFormConfig();\n }\n },\n created() {\n this.initRefList();\n this.handleOnCreated();\n },\n mounted() {\n this.loadDataTableDataSource();\n this.$nextTick(() => {\n this.handleOnMounted();\n });\n },\n beforeUnmount() {\n this.unregisterFromRefList();\n },\n methods: {\n getDataTableRef() {\n return this;\n },\n\n selectWidget(widget) {\n this.designer.setSelected(widget);\n },\n\n handleOnCreated() {\n if (!!this.widget.options.onCreated) {\n const customFunc = new Function(this.widget.options.onCreated);\n customFunc.call(this);\n }\n },\n\n handleOnMounted() {\n if (!!this.widget.options.onMounted) {\n const customFunc = new Function(this.widget.options.onMounted);\n customFunc.call(this);\n }\n },\n\n // --------------------- 以下为组件支持外部调用的API方法 begin ------------------//\n /* 提示:用户可自行扩充这些方法!!! */\n\n getTableColumns() {\n return this.widget.options.tableColumns;\n },\n\n /**\n * 获取选中行数据,格式为对象数组\n * @returns {[]}\n */\n getSelectedRow() {\n // return this.$refs.dataTable.selection\n return this.selectedRows;\n },\n\n /**\n * 获取选中行索引,格式为数组\n * @returns {[]}\n */\n getSelectedIndex() {\n return this.selectedIndices;\n }\n // --------------------- 以上为组件支持外部调用的API方法 end ------------------//\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .collapse-container {\n margin: 2px;\n\n .form-widget-list {\n min-height: 28px;\n }\n }\n\n :deep(.el-collapsed__header) {\n padding: 10px 12px;\n }\n</style>\n\n<style scoped>\n .data-table {\n flex: 1;\n max-width: 100%;\n min-width: 0;\n :deep(.tpf-surely-table) {\n font-size: 12px;\n .surely-table-cell-content {\n font-size: 12px;\n }\n }\n }\n :deep(.ant-table) .table-striped td {\n background-color: #fafafa;\n }\n</style>\n"],"names":["FieldComponents","_createBlock","_normalizeStyle","_createVNode","_normalizeClass","_withCtx"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import i18n from "../../utils/i18n.js";
2
2
  import zhCN from "ant-design-vue/es/locale/zh_CN";
3
3
  import { defineAsyncComponent, resolveComponent, resolveDirective, createBlock, openBlock, withCtx, createVNode, mergeProps, withDirectives, createElementBlock, createElementVNode } from "vue";
4
+ import _sfc_main$1 from "./SubmitButtonRender.vue.js";
4
5
  /* empty css */
5
6
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
6
7
  const _sfc_main = {
@@ -46,6 +47,7 @@ const _sfc_main = {
46
47
  }
47
48
  },
48
49
  components: {
50
+ SubmitButtonRender: _sfc_main$1,
49
51
  VFormRender: defineAsyncComponent(() => import("../../../render.js"))
50
52
  },
51
53
  data() {
@@ -238,9 +240,10 @@ const _sfc_main = {
238
240
  };
239
241
  const _hoisted_1 = { class: "dialog-content" };
240
242
  const _hoisted_2 = /* @__PURE__ */ createElementVNode("div", { class: "footer-left" }, null, -1);
241
- const _hoisted_3 = /* @__PURE__ */ createElementVNode("div", { class: "footer-right" }, null, -1);
243
+ const _hoisted_3 = { class: "footer-right" };
242
244
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
243
245
  const _component_VFormRender = resolveComponent("VFormRender");
246
+ const _component_SubmitButtonRender = resolveComponent("SubmitButtonRender");
244
247
  const _component_a_modal = resolveComponent("a-modal");
245
248
  const _component_a_config_provider = resolveComponent("a-config-provider");
246
249
  const _directive_loading = resolveDirective("loading");
@@ -271,7 +274,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
271
274
  }, $options.otherAttrs), {
272
275
  footer: withCtx(() => [
273
276
  _hoisted_2,
274
- _hoisted_3
277
+ createElementVNode("div", _hoisted_3, [
278
+ createVNode(_component_SubmitButtonRender, {
279
+ options: $props.options,
280
+ ctx: this
281
+ }, null, 8, ["options"])
282
+ ])
275
283
  ]),
276
284
  default: withCtx(() => [
277
285
  withDirectives((openBlock(), createElementBlock("div", _hoisted_1, [
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-dialog.vue.js","sources":["../../../../src/components/form-render/dynamic-dialog.vue"],"sourcesContent":["<template>\n <a-config-provider :locale=\"elLocale\" :input=\"{ autocomplete: 'off' }\">\n <a-modal\n class=\"tpf-model design-model\"\n :transitionName=\"!dialogVisible ? '' : 'zoom'\"\n :maskTransitionName=\"!dialogVisible ? '' : 'fade'\"\n :destroyOnClose=\"true\"\n :title=\"options.title\"\n :bodyStyle=\"{\n height: options.height,\n overflow: 'auto',\n ...JSON.parse(this.options.bodyStyle || '{}')\n }\"\n :centered=\"true\"\n v-model:visible=\"dialogVisible\"\n :width=\"options.width\"\n :mask=\"options.showModal\"\n :maskClosable=\"options.closeOnClickModal\"\n :keyboard=\"options.closeOnPressEscape\"\n @cancel=\"handleCloseEvent\"\n v-bind=\"otherAttrs\"\n >\n <div v-loading=\"isLoading\" class=\"dialog-content\">\n <VFormRender\n :isLoading=\"isLoading\"\n ref=\"dFormRef\"\n :form-json=\"formJson\"\n :form-data=\"formData\"\n :vfCtx=\"vfCtx\"\n :option-data=\"optionData\"\n :global-dsv=\"globalDsv\"\n :parent-form=\"parentForm\"\n :disabled-mode=\"options.disabledMode\"\n :dynamic-creation=\"true\"\n />\n </div>\n <template #footer>\n <div class=\"footer-left\"></div>\n <div class=\"footer-right\">\n <!-- <a-button v-if=\"!options.cancelButtonHidden\" @click=\"handleCancelClick\">\n {{ cancelBtnLabel }}\n </a-button>\n <a-button v-if=\"!options.okButtonHidden\" type=\"primary\" @click=\"handleOkClick\">\n {{ okBtnLabel }}\n </a-button> -->\n </div>\n </template>\n </a-modal>\n </a-config-provider>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n import zhCN from 'ant-design-vue/es/locale/zh_CN';\n import { defineAsyncComponent } from 'vue';\n\n export default {\n name: 'dynamic-dialog',\n mixins: [i18n],\n\n props: {\n options: {\n type: Object,\n default: () => ({})\n },\n formJson: {\n type: Object\n },\n formData: {\n type: Object,\n default: () => ({})\n },\n vfCtx: {\n type: Object,\n default: () => ({})\n },\n optionData: {\n //prop传入的选项数据\n type: Object,\n default: () => ({})\n },\n globalDsv: {\n // 全局数据源变量\n type: Object,\n default: () => ({})\n },\n parentFormRef: {\n type: Object,\n default: null\n },\n extraData: {\n type: Object,\n default: () => ({})\n },\n wrapperId: {\n type: String,\n default: null\n }\n },\n components: {\n VFormRender: defineAsyncComponent(() => import('@/components/form-render/index.vue'))\n },\n data() {\n /**\n * @type {{\n * 'zh-CN': typeof zhCN,\n * 'en-US': Record<string, any>\n * }}\n */\n const elLocaleMap = {\n 'zh-CN': { ...zhCN },\n 'en-US': {}\n };\n return {\n isSubmitting: false, // 添加提交状态标记\n isClosing: false, // 添加关闭状态标记\n isLoading: true,\n dialogVisible: false,\n elLocaleMap\n };\n },\n created() {},\n computed: {\n elLocale() {\n const curLocale = localStorage.getItem('lowcode_local') || 'zh-CN';\n return this.elLocaleMap[curLocale];\n },\n\n parentForm() {\n return {\n ...this.parentFormRef,\n parentDom: this,\n getParentFormRef: this.getParentFormRef\n };\n },\n otherAttrs() {\n if (this.options.cancelButtonHidden && this.options.okButtonHidden) {\n return { footer: null };\n }\n return {};\n },\n cancelBtnLabel() {\n return this.options.cancelButtonLabel || this.i18nt('designer.hint.cancel');\n },\n\n okBtnLabel() {\n return this.options.okButtonLabel || this.i18nt('designer.hint.confirm');\n }\n },\n mounted() {\n //\n },\n beforeUnmount() {\n this.parentFormRef.setChildFormRef(null);\n },\n methods: {\n async loadFormCode() {\n if (this.options.formCode) {\n this.isLoading = true;\n try {\n const res = await this.$http\n .get(`/api/tmgc2-query/dataQuery/detail/FormDefinitionManagement`, {\n params: { code: this.options.formCode }\n })\n .then(res => res.data.object.frontendDefinition || '{}');\n const formJson = JSON.parse(res);\n console.log('formJson: ', formJson);\n this.$refs.dFormRef.setFormJson(formJson);\n } catch (error) {}\n this.isLoading = false;\n }\n },\n setLoading(status) {\n this.isLoading = status;\n },\n setFormJson(formJson) {\n this.$refs.dFormRef.setFormJson(formJson);\n },\n setTitle(title) {\n this.options.title = title;\n },\n beforeOpen() {\n this.isLoading = true;\n this.dialogVisible = true;\n },\n show() {\n this.dialogVisible = true;\n\n //设置readMode模式\n this.$nextTick(() => {\n if (!!this.options.readMode) {\n this.$refs['dFormRef'].setReadMode(true);\n }\n this.loadFormCode();\n this.$refs['dFormRef']?.setDialogOrDrawerRef(this);\n if (this.parentFormRef) {\n this.parentFormRef.setChildFormRef(this.$refs['dFormRef']);\n }\n this.handleOpenedEvent();\n });\n },\n\n close() {\n if (!!this.options.onDialogBeforeClose) {\n const customFn = new Function('done', this.options.onDialogBeforeClose);\n const closeResult = customFn.call(this);\n if (closeResult === false) {\n return;\n }\n }\n\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n },\n\n deleteWrapperNode() {\n const wrapperNode = document.getElementById(\n 'vf-dynamic-dialog-wrapper' + this.wrapperId\n );\n if (!!wrapperNode) {\n document.body.removeChild(wrapperNode);\n }\n },\n\n handleBeforeClose() {\n if (!!this.options.onDialogBeforeClose) {\n const customFn = new Function(this.options.onDialogBeforeClose);\n return customFn.call(this);\n }\n\n return true;\n },\n\n handleCloseEvent() {\n if (!this.handleBeforeClose()) return;\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n },\n\n handleOpenedEvent() {\n if (!!this.options.onDialogOpened) {\n const customFn = new Function(this.options.onDialogOpened);\n customFn.call(this);\n }\n },\n\n handleCancelClick() {\n if (this.isClosing) return; // 防止重复关闭\n if (!this.handleBeforeClose()) return;\n try {\n this.isClosing = true;\n if (!!this.options.onCancelButtonClick) {\n const customFn = new Function(this.options.onCancelButtonClick);\n const clickResult = customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n async handleOkClick() {\n if (this.isSubmitting) return; // 防止重复提交\n\n try {\n this.isSubmitting = true;\n if (!!this.options.onOkButtonClick) {\n const customFn = new Function(this.options.onOkButtonClick);\n const clickResult = await customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n getParentFormRef() {\n return this.parentFormRef;\n },\n\n getFormRef() {\n console.log('getFormRef');\n return this.$refs['dFormRef'];\n },\n\n getWidgetRef(widgetName, showError = false) {\n return this.$refs['dFormRef'].getWidgetRef(widgetName, showError);\n },\n updateTable() {\n if (this.vfCtx?.parent?.exposed?.updateTable) {\n this.vfCtx.parent.exposed.updateTable();\n }\n },\n getExtraData() {\n return this.extraData;\n }\n }\n };\n</script>\n\n<style lang=\"less\">\n .design-model {\n .ant-modal-close-x {\n padding: 0 20px !important;\n }\n .dialog-content {\n min-height: 300px;\n }\n }\n</style>\n"],"names":["res","_createElementVNode","_createBlock","_createVNode","_mergeProps","_withDirectives","_openBlock","_createElementBlock"],"mappings":"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"}
1
+ {"version":3,"file":"dynamic-dialog.vue.js","sources":["../../../../src/components/form-render/dynamic-dialog.vue"],"sourcesContent":["<template>\n <a-config-provider :locale=\"elLocale\" :input=\"{ autocomplete: 'off' }\">\n <a-modal\n class=\"tpf-model design-model\"\n :transitionName=\"!dialogVisible ? '' : 'zoom'\"\n :maskTransitionName=\"!dialogVisible ? '' : 'fade'\"\n :destroyOnClose=\"true\"\n :title=\"options.title\"\n :bodyStyle=\"{\n height: options.height,\n overflow: 'auto',\n ...JSON.parse(this.options.bodyStyle || '{}')\n }\"\n :centered=\"true\"\n v-model:visible=\"dialogVisible\"\n :width=\"options.width\"\n :mask=\"options.showModal\"\n :maskClosable=\"options.closeOnClickModal\"\n :keyboard=\"options.closeOnPressEscape\"\n @cancel=\"handleCloseEvent\"\n v-bind=\"otherAttrs\"\n >\n <div v-loading=\"isLoading\" class=\"dialog-content\">\n <VFormRender\n :isLoading=\"isLoading\"\n ref=\"dFormRef\"\n :form-json=\"formJson\"\n :form-data=\"formData\"\n :vfCtx=\"vfCtx\"\n :option-data=\"optionData\"\n :global-dsv=\"globalDsv\"\n :parent-form=\"parentForm\"\n :disabled-mode=\"options.disabledMode\"\n :dynamic-creation=\"true\"\n />\n </div>\n <template #footer>\n <div class=\"footer-left\"></div>\n <div class=\"footer-right\">\n <SubmitButtonRender :options=\"options\" :ctx=\"this\" />\n </div>\n </template>\n </a-modal>\n </a-config-provider>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n import zhCN from 'ant-design-vue/es/locale/zh_CN';\n import { defineAsyncComponent } from 'vue';\n import SubmitButtonRender from '@/components/form-render/SubmitButtonRender.vue';\n export default {\n name: 'dynamic-dialog',\n mixins: [i18n],\n props: {\n options: {\n type: Object,\n default: () => ({})\n },\n formJson: {\n type: Object\n },\n formData: {\n type: Object,\n default: () => ({})\n },\n vfCtx: {\n type: Object,\n default: () => ({})\n },\n optionData: {\n //prop传入的选项数据\n type: Object,\n default: () => ({})\n },\n globalDsv: {\n // 全局数据源变量\n type: Object,\n default: () => ({})\n },\n parentFormRef: {\n type: Object,\n default: null\n },\n extraData: {\n type: Object,\n default: () => ({})\n },\n wrapperId: {\n type: String,\n default: null\n }\n },\n components: {\n SubmitButtonRender,\n VFormRender: defineAsyncComponent(() => import('@/components/form-render/index.vue'))\n },\n data() {\n /**\n * @type {{\n * 'zh-CN': typeof zhCN,\n * 'en-US': Record<string, any>\n * }}\n */\n const elLocaleMap = {\n 'zh-CN': { ...zhCN },\n 'en-US': {}\n };\n return {\n isSubmitting: false, // 添加提交状态标记\n isClosing: false, // 添加关闭状态标记\n isLoading: true,\n dialogVisible: false,\n elLocaleMap\n };\n },\n created() {},\n computed: {\n elLocale() {\n const curLocale = localStorage.getItem('lowcode_local') || 'zh-CN';\n return this.elLocaleMap[curLocale];\n },\n\n parentForm() {\n return {\n ...this.parentFormRef,\n parentDom: this,\n getParentFormRef: this.getParentFormRef\n };\n },\n otherAttrs() {\n if (this.options.cancelButtonHidden && this.options.okButtonHidden) {\n return { footer: null };\n }\n return {};\n },\n cancelBtnLabel() {\n return this.options.cancelButtonLabel || this.i18nt('designer.hint.cancel');\n },\n\n okBtnLabel() {\n return this.options.okButtonLabel || this.i18nt('designer.hint.confirm');\n }\n },\n mounted() {\n //\n },\n beforeUnmount() {\n this.parentFormRef.setChildFormRef(null);\n },\n methods: {\n async loadFormCode() {\n if (this.options.formCode) {\n this.isLoading = true;\n try {\n const res = await this.$http\n .get(`/api/tmgc2-query/dataQuery/detail/FormDefinitionManagement`, {\n params: { code: this.options.formCode }\n })\n .then(res => res.data.object.frontendDefinition || '{}');\n const formJson = JSON.parse(res);\n console.log('formJson: ', formJson);\n this.$refs.dFormRef.setFormJson(formJson);\n } catch (error) {}\n this.isLoading = false;\n }\n },\n setLoading(status) {\n this.isLoading = status;\n },\n setFormJson(formJson) {\n this.$refs.dFormRef.setFormJson(formJson);\n },\n setTitle(title) {\n this.options.title = title;\n },\n beforeOpen() {\n this.isLoading = true;\n this.dialogVisible = true;\n },\n show() {\n this.dialogVisible = true;\n\n //设置readMode模式\n this.$nextTick(() => {\n if (!!this.options.readMode) {\n this.$refs['dFormRef'].setReadMode(true);\n }\n this.loadFormCode();\n this.$refs['dFormRef']?.setDialogOrDrawerRef(this);\n if (this.parentFormRef) {\n this.parentFormRef.setChildFormRef(this.$refs['dFormRef']);\n }\n this.handleOpenedEvent();\n });\n },\n\n close() {\n if (!!this.options.onDialogBeforeClose) {\n const customFn = new Function('done', this.options.onDialogBeforeClose);\n const closeResult = customFn.call(this);\n if (closeResult === false) {\n return;\n }\n }\n\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n },\n\n deleteWrapperNode() {\n const wrapperNode = document.getElementById(\n 'vf-dynamic-dialog-wrapper' + this.wrapperId\n );\n if (!!wrapperNode) {\n document.body.removeChild(wrapperNode);\n }\n },\n\n handleBeforeClose() {\n if (!!this.options.onDialogBeforeClose) {\n const customFn = new Function(this.options.onDialogBeforeClose);\n return customFn.call(this);\n }\n\n return true;\n },\n\n handleCloseEvent() {\n if (!this.handleBeforeClose()) return;\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n },\n\n handleOpenedEvent() {\n if (!!this.options.onDialogOpened) {\n const customFn = new Function(this.options.onDialogOpened);\n customFn.call(this);\n }\n },\n\n handleCancelClick() {\n if (this.isClosing) return; // 防止重复关闭\n if (!this.handleBeforeClose()) return;\n try {\n this.isClosing = true;\n if (!!this.options.onCancelButtonClick) {\n const customFn = new Function(this.options.onCancelButtonClick);\n const clickResult = customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n async handleOkClick() {\n if (this.isSubmitting) return; // 防止重复提交\n\n try {\n this.isSubmitting = true;\n if (!!this.options.onOkButtonClick) {\n const customFn = new Function(this.options.onOkButtonClick);\n const clickResult = await customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n getParentFormRef() {\n return this.parentFormRef;\n },\n\n getFormRef() {\n console.log('getFormRef');\n return this.$refs['dFormRef'];\n },\n\n getWidgetRef(widgetName, showError = false) {\n return this.$refs['dFormRef'].getWidgetRef(widgetName, showError);\n },\n updateTable() {\n if (this.vfCtx?.parent?.exposed?.updateTable) {\n this.vfCtx.parent.exposed.updateTable();\n }\n },\n getExtraData() {\n return this.extraData;\n }\n }\n };\n</script>\n\n<style lang=\"less\">\n .design-model {\n .ant-modal-close-x {\n padding: 0 20px !important;\n }\n .dialog-content {\n min-height: 300px;\n }\n }\n</style>\n"],"names":["SubmitButtonRender","res","_createElementVNode","_createBlock","_createVNode","_mergeProps","_withDirectives","_openBlock","_createElementBlock"],"mappings":"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"}
@@ -84,6 +84,10 @@ const useDataTableMixin = {
84
84
  widgetSize() {
85
85
  return this.widget.options.tableSize || "default";
86
86
  },
87
+ lineHeight() {
88
+ console.log(this.widget.options.lineHeight);
89
+ return this.widget.options.lineHeight || 40;
90
+ },
87
91
  fmtPagination() {
88
92
  const {
89
93
  showPagination
@@ -215,14 +219,16 @@ const useDataTableMixin = {
215
219
  if (!this.widget.options.dsEnabled) {
216
220
  return;
217
221
  }
218
- const ops = this.widget.options;
219
- if (ops.dsEnabled && ops.http.url) {
220
- this.loading = true;
221
- const res = await fmtHttpParams.call(this, ops);
222
- this.setPagination(res);
223
- this.setDataSource(res.list);
224
- this.loading = false;
225
- }
222
+ setTimeout(async () => {
223
+ const ops = this.widget.options;
224
+ if (ops.dsEnabled && ops.http.url) {
225
+ this.loading = true;
226
+ const res = await fmtHttpParams.call(this, ops);
227
+ this.setPagination(res);
228
+ this.setDataSource(res.list);
229
+ this.loading = false;
230
+ }
231
+ }, 500);
226
232
  },
227
233
  handleCustomRow(record) {
228
234
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"useDataTableMixin.js","sources":["../../../src/mixins/useDataTableMixin.jsx"],"sourcesContent":["import { omit, isEmpty, isArray } from 'lodash-es';\nimport { fmtHttpParams } from '@/utils/request/fmtHttpParams';\nimport { TpfConfirm } from '@/hooks/TpfConfirm';\nimport RenderBodyCell from '@/components/CustomRender/components/RenderBodyCell.tsx';\nimport { executeFunction } from '@/utils/executeFunction';\nimport ActionButtonListRender from '@/components/public/ActionButtonListRender.vue';\nexport default {\n data() {\n return {\n selectedRowInfo: { selectedRowKeys: [], selectedRows: [] },\n selectRow: {},\n loading: false\n };\n },\n components: {\n RenderBodyCell\n },\n computed: {\n columns() {\n const leftFixedColumns = [];\n const optins = this.widget?.options ?? {};\n if (optins.showIndex) {\n leftFixedColumns.push({\n title: '序号',\n align: 'left',\n width: 90,\n fixed: 'left',\n field: 'dataIndex',\n customRender: this.customRenderIndex\n });\n }\n const centerColumns = optins.tableColumns\n .filter(item => item.show)\n .map(item => ({\n ...item,\n ...this.handleColumnItem(item)\n }));\n const rightFixedColumns = [];\n if (optins.showButtonsColumn) {\n const operationButtons = optins.operationButtons ?? [];\n\n rightFixedColumns.push({\n fixed: 'right',\n align: 'center',\n title: optins.buttonsColumnTitle,\n width: optins.buttonsColumnWidth,\n customRender(scope) {\n return (\n <ActionButtonListRender\n buttonList={operationButtons}\n flex=\"center\"\n scope={scope}\n ctx={this}\n />\n );\n }\n });\n }\n\n let bodyCell = {};\n\n // 把customRender渲染成 bodyCell 插槽\n let _columns = [...leftFixedColumns, ...centerColumns, ...rightFixedColumns].map(\n item => {\n if (item.bodyCell) {\n bodyCell[item.dataIndex] = item.bodyCell;\n delete item.customRender;\n }\n return item;\n }\n );\n\n return {\n columns: _columns,\n bodyCell\n };\n },\n tableHeight() {\n return this.widget.options.tableHeight || undefined;\n },\n // rowClassName() {\n // if (this.widget.options.stripe) {\n // return (_record, index) => (index % 2 === 1 ? 'table-striped' : null);\n // }\n // return null;\n // },\n customClass() {\n return this.widget.options.customClass || '';\n },\n widgetSize() {\n return this.widget.options.tableSize || 'default';\n },\n fmtPagination() {\n const { showPagination } = this.widget.options;\n if (!showPagination) return false;\n return {\n ...this.widget.options.pagination,\n showTotal: total => `共 ${total} 条`\n };\n }\n },\n methods: {\n isShowBodyCell(dataIndex) {\n return this.columns?.bodyCell?.[dataIndex];\n },\n handleHidden() {\n const { onHidden, hidden } = this.widget.options;\n if (hidden) return true;\n if (onHidden) {\n const onHiddenFn = new Function(onHidden);\n return onHiddenFn.call(this);\n }\n return false;\n },\n rowClassName(record) {\n const { rowKey, colorRow } = this.widget.options;\n\n if (!colorRow) return '';\n return this.selectRow[rowKey] === record[rowKey] ? 'colorRowClassName' : '';\n },\n handleResizeColumn(w, col) {\n const { tableColumns } = this.widget.options;\n const newTableColumns = tableColumns.map(item => {\n if (item.dataIndex === col.dataIndex) {\n item.width = w;\n }\n return { ...item };\n });\n this.setTableColumns(newTableColumns);\n },\n disabledClick() {\n const { hasRowSelection } = this.widget.options.rowSelection;\n if (hasRowSelection) {\n return isEmpty(this.selectedRowInfo.selectedRowKeys);\n }\n return isEmpty(this.selectRow);\n },\n getSelectedRowKeys() {\n return this.selectedRowInfo.selectedRowKeys;\n },\n getSelectedRows() {\n return this.selectedRowInfo.getSelectedRows;\n },\n getTableColumns() {\n return this.widget.options.tableColumns;\n },\n setTableColumns(list) {\n this.widget.options.tableColumns = list;\n return;\n },\n async delSelectRow(delKeys) {\n await TpfConfirm({ content: '确定删除选中的数据吗' });\n delKeys = delKeys || this.selectedRowInfo.selectedRowKeys;\n if (!delKeys.length) return;\n const { rowKey } = this.widget.options;\n const data = this.getDataSource();\n const newList = data.filter(item => !delKeys?.includes(item[rowKey]));\n this.setDataSource(newList);\n\n this.$message.success('操作成功');\n },\n\n getPagination() {\n return this.widget.options.pagination;\n },\n /**\n * 设置表格分页\n * @param pagination\n */\n setPagination(pagination) {\n if (pagination.page !== undefined) {\n this.widget.options.pagination.current = pagination.page;\n }\n\n if (pagination.pageSize !== undefined) {\n this.widget.options.pagination.pageSize = pagination.pageSize;\n }\n\n if (pagination.total !== undefined) {\n this.widget.options.pagination.total = pagination.total;\n }\n },\n setDataSource(list) {\n this.selectedRowInfo = { selectedRowKeys: [], selectedRows: [] };\n this.selectRow = {};\n const val = isArray(list) ? list : [list];\n\n this.getFormRef().setTableValue(this.widget.options.name, val);\n // this.widget.options.dataSource = [...val];\n },\n setValue(list) {\n console.log('list: ', list);\n this.setDataSource(list);\n },\n setRowDataSource(scope, value) {\n console.log(scope, value);\n this.getFormRef().setTableRowDataValue(this.widget.options.name, scope, value);\n },\n getDataSource() {\n return this.widget.options.dataSource;\n },\n getValue() {\n return this.getDataSource();\n },\n async loadDataTableDataSource() {\n if (!this.widget.options.dsEnabled) {\n return;\n }\n const ops = this.widget.options;\n if (ops.dsEnabled && ops.http.url) {\n this.loading = true;\n const res = await fmtHttpParams.call(this, ops);\n this.setPagination(res);\n this.setDataSource(res.list);\n this.loading = false;\n }\n },\n handleCustomRow(record) {\n const { customRow, colorRow } = this.widget.options;\n const { hasRowSelection } = this.widget.options.rowSelection;\n // if (!customRow) return {};\n return {\n onClick: event => {\n if (colorRow) {\n this.selectRow = record;\n }\n const customFn = new Function('record', 'event', customRow.onClick);\n customFn.call(this, record, event);\n },\n onDblclick: event => {\n const customFn = new Function('record', 'event', customRow.onDblclick);\n customFn.call(this, record, event);\n },\n onMouseenter: event => {\n const customFn = new Function('record', 'event', customRow.onMouseenter);\n customFn.call(this, record, event);\n },\n onMouseleave: event => {\n const customFn = new Function('record', 'event', customRow.onMouseleave);\n customFn.call(this, record, event);\n }\n };\n },\n // 处理列配置\n handleColumnItem(item) {\n const res = omit(item, ['customRender']);\n const customRenderFn = item.customRender;\n if (!customRenderFn) return item;\n return {\n ...res,\n bodyCell: scope => {\n return executeFunction({\n functionBody: customRenderFn,\n params: scope,\n context: this,\n errorCallback: error => {\n console.error('Custom render error:', error);\n }\n });\n }\n };\n },\n getOperationButtonLabel(buttonConfig, rowIndex, row) {\n const { onGetOperationButtonLabel } = this.widget.options;\n if (!!onGetOperationButtonLabel) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onGetOperationButtonLabel\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.label;\n }\n },\n // 处理操作按钮点击\n async handleOperationButtonClick(btnName, rowIndex, row, scope, ob) {\n this.skipSelectionChangeEvent = true;\n\n try {\n if (ob.onClick) {\n await executeFunction({\n functionBody: ob.onClick,\n params: { record: row, index: rowIndex, column: scope.column, btn: ob },\n context: this\n });\n return;\n }\n\n const { onOperationButtonClick } = this.widget.options;\n if (onOperationButtonClick) {\n await executeFunction({\n functionBody: onOperationButtonClick,\n params: { buttonName: btnName, rowIndex, row },\n context: this\n });\n } else {\n this.dispatch('VFormRender', 'operationButtonClick', [\n this,\n btnName,\n rowIndex,\n row\n ]);\n }\n } finally {\n this.skipSelectionChangeEvent = false;\n }\n },\n showOperationButton(buttonConfig, rowIndex, row) {\n const { onHideOperationButton } = this.widget.options;\n if (!!onHideOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onHideOperationButton\n );\n return !!customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return !buttonConfig.hidden;\n }\n },\n disableOperationButton(buttonConfig, rowIndex, row) {\n const { onDisableOperationButton } = this.widget.options;\n if (!!onDisableOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onDisableOperationButton\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.disabled;\n }\n },\n customRenderIndex({ index }) {\n return index + 1;\n },\n handleCurrentPageChange(currentPage) {\n this.currentPage = currentPage;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n\n const { onCurrentPageChange } = this.widget.options;\n\n if (!!onCurrentPageChange) {\n const customFn = new Function('pageSize', 'currentPage', onCurrentPageChange);\n customFn.call(this, this.pageSize, currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageChange', [\n this,\n this.pageSize,\n currentPage\n ]);\n }\n },\n handlePageSizeChange(pageSize) {\n this.pageSize = pageSize;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n const { onPageSizeChange } = this.widget.options;\n if (!!onPageSizeChange) {\n const customFn = new Function('pageSize', 'currentPage', onPageSizeChange);\n customFn.call(this, pageSize, this.currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageSizeChange', [\n this,\n pageSize,\n this.currentPage\n ]);\n }\n },\n handleTablePageChange(pagination, filters, sorter, { currentDataSource }) {\n const fn = this.widget.options.onTableChange;\n this.widget.options.pagination.current = pagination.current;\n this.widget.options.pagination.pageSize = pagination.pageSize;\n if (fn) {\n const changeFunc = new Function(\n 'pagination',\n 'filters',\n 'sorter',\n 'currentDataSource',\n fn\n );\n changeFunc.call(this, pagination, filters, sorter, { currentDataSource });\n }\n this.loadDataTableDataSource();\n },\n handleRowSelection() {\n const info = this.widget.options.rowSelection;\n if (!info.hasRowSelection) {\n return undefined;\n }\n return {\n ...omit(info, ['onChange']),\n onChange: (selectedRowKeys, selectedRows) => {\n this.selectedRowInfo = { selectedRowKeys, selectedRows };\n const rcFunc = new Function('selectedRowKeys', 'selectedRows', info.onChange);\n rcFunc.call(this, selectedRowKeys, selectedRows);\n }\n };\n }\n }\n};\n"],"names":["data","selectedRowInfo","selectedRowKeys","selectedRows","selectRow","loading","components","RenderBodyCell","computed","columns","leftFixedColumns","optins","widget","options","showIndex","push","title","align","width","fixed","field","customRender","customRenderIndex","centerColumns","tableColumns","filter","item","show","map","handleColumnItem","rightFixedColumns","showButtonsColumn","operationButtons","buttonsColumnTitle","buttonsColumnWidth","scope","_createVNode","ActionButtonListRender","bodyCell","_columns","dataIndex","tableHeight","undefined","customClass","widgetSize","tableSize","fmtPagination","showPagination","pagination","showTotal","total","methods","isShowBodyCell","handleHidden","onHidden","hidden","onHiddenFn","Function","call","rowClassName","record","rowKey","colorRow","handleResizeColumn","w","col","newTableColumns","setTableColumns","disabledClick","hasRowSelection","rowSelection","isEmpty","getSelectedRowKeys","getSelectedRows","getTableColumns","list","delSelectRow","delKeys","TpfConfirm","content","length","getDataSource","newList","includes","setDataSource","$message","success","getPagination","setPagination","page","current","pageSize","val","isArray","getFormRef","setTableValue","name","setValue","console","log","setRowDataSource","value","setTableRowDataValue","dataSource","getValue","loadDataTableDataSource","dsEnabled","ops","http","url","res","fmtHttpParams","handleCustomRow","customRow","onClick","event","customFn","onDblclick","onMouseenter","onMouseleave","omit","customRenderFn","executeFunction","functionBody","params","context","errorCallback","error","getOperationButtonLabel","buttonConfig","rowIndex","row","onGetOperationButtonLabel","label","handleOperationButtonClick","btnName","ob","skipSelectionChangeEvent","index","column","btn","onOperationButtonClick","buttonName","dispatch","showOperationButton","onHideOperationButton","disableOperationButton","onDisableOperationButton","disabled","handleCurrentPageChange","currentPage","onCurrentPageChange","handlePageSizeChange","onPageSizeChange","handleTablePageChange","filters","sorter","currentDataSource","fn","onTableChange","changeFunc","handleRowSelection","info","onChange","rcFunc"],"mappings":"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"}
1
+ {"version":3,"file":"useDataTableMixin.js","sources":["../../../src/mixins/useDataTableMixin.jsx"],"sourcesContent":["import { omit, isEmpty, isArray } from 'lodash-es';\nimport { fmtHttpParams } from '@/utils/request/fmtHttpParams';\nimport { TpfConfirm } from '@/hooks/TpfConfirm';\nimport RenderBodyCell from '@/components/CustomRender/components/RenderBodyCell.tsx';\nimport { executeFunction } from '@/utils/executeFunction';\nimport ActionButtonListRender from '@/components/public/ActionButtonListRender.vue';\nexport default {\n data() {\n return {\n selectedRowInfo: { selectedRowKeys: [], selectedRows: [] },\n selectRow: {},\n loading: false\n };\n },\n components: {\n RenderBodyCell\n },\n computed: {\n columns() {\n const leftFixedColumns = [];\n const optins = this.widget?.options ?? {};\n if (optins.showIndex) {\n leftFixedColumns.push({\n title: '序号',\n align: 'left',\n width: 90,\n fixed: 'left',\n field: 'dataIndex',\n customRender: this.customRenderIndex\n });\n }\n const centerColumns = optins.tableColumns\n .filter(item => item.show)\n .map(item => ({\n ...item,\n ...this.handleColumnItem(item)\n }));\n const rightFixedColumns = [];\n if (optins.showButtonsColumn) {\n const operationButtons = optins.operationButtons ?? [];\n\n rightFixedColumns.push({\n fixed: 'right',\n align: 'center',\n title: optins.buttonsColumnTitle,\n width: optins.buttonsColumnWidth,\n customRender(scope) {\n return (\n <ActionButtonListRender\n buttonList={operationButtons}\n flex=\"center\"\n scope={scope}\n ctx={this}\n />\n );\n }\n });\n }\n\n let bodyCell = {};\n\n // 把customRender渲染成 bodyCell 插槽\n let _columns = [...leftFixedColumns, ...centerColumns, ...rightFixedColumns].map(\n item => {\n if (item.bodyCell) {\n bodyCell[item.dataIndex] = item.bodyCell;\n delete item.customRender;\n }\n return item;\n }\n );\n\n return {\n columns: _columns,\n bodyCell\n };\n },\n tableHeight() {\n return this.widget.options.tableHeight || undefined;\n },\n // rowClassName() {\n // if (this.widget.options.stripe) {\n // return (_record, index) => (index % 2 === 1 ? 'table-striped' : null);\n // }\n // return null;\n // },\n customClass() {\n return this.widget.options.customClass || '';\n },\n widgetSize() {\n return this.widget.options.tableSize || 'default';\n },\n lineHeight() {\n console.log(this.widget.options.lineHeight);\n return this.widget.options.lineHeight || 40;\n },\n fmtPagination() {\n const { showPagination } = this.widget.options;\n if (!showPagination) return false;\n return {\n ...this.widget.options.pagination,\n showTotal: total => `共 ${total} 条`\n };\n }\n },\n methods: {\n isShowBodyCell(dataIndex) {\n return this.columns?.bodyCell?.[dataIndex];\n },\n handleHidden() {\n const { onHidden, hidden } = this.widget.options;\n if (hidden) return true;\n if (onHidden) {\n const onHiddenFn = new Function(onHidden);\n return onHiddenFn.call(this);\n }\n return false;\n },\n rowClassName(record) {\n const { rowKey, colorRow } = this.widget.options;\n\n if (!colorRow) return '';\n return this.selectRow[rowKey] === record[rowKey] ? 'colorRowClassName' : '';\n },\n handleResizeColumn(w, col) {\n const { tableColumns } = this.widget.options;\n const newTableColumns = tableColumns.map(item => {\n if (item.dataIndex === col.dataIndex) {\n item.width = w;\n }\n return { ...item };\n });\n this.setTableColumns(newTableColumns);\n },\n disabledClick() {\n const { hasRowSelection } = this.widget.options.rowSelection;\n if (hasRowSelection) {\n return isEmpty(this.selectedRowInfo.selectedRowKeys);\n }\n return isEmpty(this.selectRow);\n },\n getSelectedRowKeys() {\n return this.selectedRowInfo.selectedRowKeys;\n },\n getSelectedRows() {\n return this.selectedRowInfo.getSelectedRows;\n },\n getTableColumns() {\n return this.widget.options.tableColumns;\n },\n setTableColumns(list) {\n this.widget.options.tableColumns = list;\n return;\n },\n async delSelectRow(delKeys) {\n await TpfConfirm({ content: '确定删除选中的数据吗' });\n delKeys = delKeys || this.selectedRowInfo.selectedRowKeys;\n if (!delKeys.length) return;\n const { rowKey } = this.widget.options;\n const data = this.getDataSource();\n const newList = data.filter(item => !delKeys?.includes(item[rowKey]));\n this.setDataSource(newList);\n\n this.$message.success('操作成功');\n },\n\n getPagination() {\n return this.widget.options.pagination;\n },\n /**\n * 设置表格分页\n * @param pagination\n */\n setPagination(pagination) {\n if (pagination.page !== undefined) {\n this.widget.options.pagination.current = pagination.page;\n }\n\n if (pagination.pageSize !== undefined) {\n this.widget.options.pagination.pageSize = pagination.pageSize;\n }\n\n if (pagination.total !== undefined) {\n this.widget.options.pagination.total = pagination.total;\n }\n },\n setDataSource(list) {\n this.selectedRowInfo = { selectedRowKeys: [], selectedRows: [] };\n this.selectRow = {};\n const val = isArray(list) ? list : [list];\n\n this.getFormRef().setTableValue(this.widget.options.name, val);\n // this.widget.options.dataSource = [...val];\n },\n setValue(list) {\n console.log('list: ', list);\n this.setDataSource(list);\n },\n setRowDataSource(scope, value) {\n console.log(scope, value);\n this.getFormRef().setTableRowDataValue(this.widget.options.name, scope, value);\n },\n getDataSource() {\n return this.widget.options.dataSource;\n },\n getValue() {\n return this.getDataSource();\n },\n async loadDataTableDataSource() {\n if (!this.widget.options.dsEnabled) {\n return;\n }\n setTimeout(async () => {\n const ops = this.widget.options;\n if (ops.dsEnabled && ops.http.url) {\n this.loading = true;\n const res = await fmtHttpParams.call(this, ops);\n this.setPagination(res);\n this.setDataSource(res.list);\n this.loading = false;\n }\n }, 500);\n },\n handleCustomRow(record) {\n const { customRow, colorRow } = this.widget.options;\n const { hasRowSelection } = this.widget.options.rowSelection;\n // if (!customRow) return {};\n return {\n onClick: event => {\n if (colorRow) {\n this.selectRow = record;\n }\n const customFn = new Function('record', 'event', customRow.onClick);\n customFn.call(this, record, event);\n },\n onDblclick: event => {\n const customFn = new Function('record', 'event', customRow.onDblclick);\n customFn.call(this, record, event);\n },\n onMouseenter: event => {\n const customFn = new Function('record', 'event', customRow.onMouseenter);\n customFn.call(this, record, event);\n },\n onMouseleave: event => {\n const customFn = new Function('record', 'event', customRow.onMouseleave);\n customFn.call(this, record, event);\n }\n };\n },\n // 处理列配置\n handleColumnItem(item) {\n const res = omit(item, ['customRender']);\n const customRenderFn = item.customRender;\n if (!customRenderFn) return item;\n return {\n ...res,\n bodyCell: scope => {\n return executeFunction({\n functionBody: customRenderFn,\n params: scope,\n context: this,\n errorCallback: error => {\n console.error('Custom render error:', error);\n }\n });\n }\n };\n },\n getOperationButtonLabel(buttonConfig, rowIndex, row) {\n const { onGetOperationButtonLabel } = this.widget.options;\n if (!!onGetOperationButtonLabel) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onGetOperationButtonLabel\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.label;\n }\n },\n // 处理操作按钮点击\n async handleOperationButtonClick(btnName, rowIndex, row, scope, ob) {\n this.skipSelectionChangeEvent = true;\n\n try {\n if (ob.onClick) {\n await executeFunction({\n functionBody: ob.onClick,\n params: { record: row, index: rowIndex, column: scope.column, btn: ob },\n context: this\n });\n return;\n }\n\n const { onOperationButtonClick } = this.widget.options;\n if (onOperationButtonClick) {\n await executeFunction({\n functionBody: onOperationButtonClick,\n params: { buttonName: btnName, rowIndex, row },\n context: this\n });\n } else {\n this.dispatch('VFormRender', 'operationButtonClick', [\n this,\n btnName,\n rowIndex,\n row\n ]);\n }\n } finally {\n this.skipSelectionChangeEvent = false;\n }\n },\n showOperationButton(buttonConfig, rowIndex, row) {\n const { onHideOperationButton } = this.widget.options;\n if (!!onHideOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onHideOperationButton\n );\n return !!customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return !buttonConfig.hidden;\n }\n },\n disableOperationButton(buttonConfig, rowIndex, row) {\n const { onDisableOperationButton } = this.widget.options;\n if (!!onDisableOperationButton) {\n const customFn = new Function(\n 'buttonConfig',\n 'rowIndex',\n 'row',\n onDisableOperationButton\n );\n return customFn.call(this, buttonConfig, rowIndex, row);\n } else {\n return buttonConfig.disabled;\n }\n },\n customRenderIndex({ index }) {\n return index + 1;\n },\n handleCurrentPageChange(currentPage) {\n this.currentPage = currentPage;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n\n const { onCurrentPageChange } = this.widget.options;\n\n if (!!onCurrentPageChange) {\n const customFn = new Function('pageSize', 'currentPage', onCurrentPageChange);\n customFn.call(this, this.pageSize, currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageChange', [\n this,\n this.pageSize,\n currentPage\n ]);\n }\n },\n handlePageSizeChange(pageSize) {\n this.pageSize = pageSize;\n // if (!!this.widget.options.dsEnabled && !!this.widget.options.dsName) {\n // this.loadDataFromDS();\n // }\n const { onPageSizeChange } = this.widget.options;\n if (!!onPageSizeChange) {\n const customFn = new Function('pageSize', 'currentPage', onPageSizeChange);\n customFn.call(this, pageSize, this.currentPage);\n } else {\n this.dispatch('VFormRender', 'dataTablePageSizeChange', [\n this,\n pageSize,\n this.currentPage\n ]);\n }\n },\n handleTablePageChange(pagination, filters, sorter, { currentDataSource }) {\n const fn = this.widget.options.onTableChange;\n this.widget.options.pagination.current = pagination.current;\n this.widget.options.pagination.pageSize = pagination.pageSize;\n if (fn) {\n const changeFunc = new Function(\n 'pagination',\n 'filters',\n 'sorter',\n 'currentDataSource',\n fn\n );\n changeFunc.call(this, pagination, filters, sorter, { currentDataSource });\n }\n this.loadDataTableDataSource();\n },\n handleRowSelection() {\n const info = this.widget.options.rowSelection;\n if (!info.hasRowSelection) {\n return undefined;\n }\n return {\n ...omit(info, ['onChange']),\n onChange: (selectedRowKeys, selectedRows) => {\n this.selectedRowInfo = { selectedRowKeys, selectedRows };\n const rcFunc = new Function('selectedRowKeys', 'selectedRows', info.onChange);\n rcFunc.call(this, selectedRowKeys, selectedRows);\n }\n };\n }\n }\n};\n"],"names":["data","selectedRowInfo","selectedRowKeys","selectedRows","selectRow","loading","components","RenderBodyCell","computed","columns","leftFixedColumns","optins","widget","options","showIndex","push","title","align","width","fixed","field","customRender","customRenderIndex","centerColumns","tableColumns","filter","item","show","map","handleColumnItem","rightFixedColumns","showButtonsColumn","operationButtons","buttonsColumnTitle","buttonsColumnWidth","scope","_createVNode","ActionButtonListRender","bodyCell","_columns","dataIndex","tableHeight","undefined","customClass","widgetSize","tableSize","lineHeight","console","log","fmtPagination","showPagination","pagination","showTotal","total","methods","isShowBodyCell","handleHidden","onHidden","hidden","onHiddenFn","Function","call","rowClassName","record","rowKey","colorRow","handleResizeColumn","w","col","newTableColumns","setTableColumns","disabledClick","hasRowSelection","rowSelection","isEmpty","getSelectedRowKeys","getSelectedRows","getTableColumns","list","delSelectRow","delKeys","TpfConfirm","content","length","getDataSource","newList","includes","setDataSource","$message","success","getPagination","setPagination","page","current","pageSize","val","isArray","getFormRef","setTableValue","name","setValue","setRowDataSource","value","setTableRowDataValue","dataSource","getValue","loadDataTableDataSource","dsEnabled","setTimeout","ops","http","url","res","fmtHttpParams","handleCustomRow","customRow","onClick","event","customFn","onDblclick","onMouseenter","onMouseleave","omit","customRenderFn","executeFunction","functionBody","params","context","errorCallback","error","getOperationButtonLabel","buttonConfig","rowIndex","row","onGetOperationButtonLabel","label","handleOperationButtonClick","btnName","ob","skipSelectionChangeEvent","index","column","btn","onOperationButtonClick","buttonName","dispatch","showOperationButton","onHideOperationButton","disableOperationButton","onDisableOperationButton","disabled","handleCurrentPageChange","currentPage","onCurrentPageChange","handlePageSizeChange","onPageSizeChange","handleTablePageChange","filters","sorter","currentDataSource","fn","onTableChange","changeFunc","handleRowSelection","info","onChange","rcFunc"],"mappings":"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"}