super-page-designer 2.0.83 → 2.0.87

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 (32) hide show
  1. package/dist/es/components/design/utils/assemblys-config.js +1 -1
  2. package/dist/es/components/design/utils/form-design-util.js +18 -9
  3. package/dist/es/components/design/utils/page-table-util.d.ts +3 -1
  4. package/dist/es/components/design/utils/page-table-util.js +43 -15
  5. package/dist/es/components/design/views/assemblys/button/button/button-attr-advanced.vue.js +1 -0
  6. package/dist/es/components/design/views/assemblys/common/common-advanced-basic-showcondition.vue.js +6 -3
  7. package/dist/es/components/design/views/assemblys/common/common-variable-bind.vue.js +1 -1
  8. package/dist/es/components/design/views/assemblys/common/common-variable-bind.vue3.js +2 -1
  9. package/dist/es/components/design/views/assemblys/data/component/configuration-value.vue.js +1 -1
  10. package/dist/es/components/design/views/assemblys/data/component/data-origin.vue.js +1 -1
  11. package/dist/es/components/design/views/assemblys/data/component/data-origin.vue2.js +6 -3
  12. package/dist/es/components/design/views/assemblys/data/component/formatting-icon-label.vue.js +1 -1
  13. package/dist/es/components/design/views/assemblys/data/component/formatting.vue.js +1 -1
  14. package/dist/es/components/design/views/assemblys/data/component/querySetting.vue.js +1 -1
  15. package/dist/es/components/design/views/assemblys/data/table/table-attr-advanced.vue.js +7 -5
  16. package/dist/es/components/design/views/assemblys/data/table/table-attr.vue2.js +1 -1
  17. package/dist/es/components/design/views/assemblys/data/table/table-design.vue.js +1 -1
  18. package/dist/es/components/design/views/assemblys/data/table/table-design.vue2.js +2 -5
  19. package/dist/es/components/design/views/assemblys/data/table/tablecolumn-attr-base.vue2.js +1 -1
  20. package/dist/es/components/design/views/assemblys/form/common/data-format.vue.js +1 -1
  21. package/dist/es/components/design/views/assemblys/form/common/dataorigin-input-table.vue.js +152 -1
  22. package/dist/es/components/design/views/assemblys/form/common/dataorigin-input-table.vue2.js +1 -152
  23. package/dist/es/components/design/views/assemblys/form/common/{icon-set-dialog.vue.js → icon-set-dialog.vue2.js} +1 -1
  24. package/dist/es/components/design/views/assemblys/form/link/link-attr-base.vue.js +1 -1
  25. package/dist/es/components/design/views/assemblys/object-design.vue.js +2 -2
  26. package/dist/es/components/design/views/assemblys/page/page-attr-base.vue.js +2 -5
  27. package/dist/es/components/design/views/design/page-design.vue.js +10 -7
  28. package/dist/es/components/design/views/design/page-event/page-event-content.vue.js +5 -5
  29. package/dist/es/components/design/views/design/view/components/quick-add-dialog.vue.js +1 -1
  30. package/dist/es/components/design/views/design/view/components/quick-add-fields.vue.js +3 -0
  31. package/dist/es/style.css +8 -8
  32. package/package.json +5 -5
@@ -54,7 +54,7 @@ const tableOperateColumnConf = {
54
54
  title: "操作",
55
55
  prop: "operation",
56
56
  columnWidth: 150,
57
- sortable: true,
57
+ sortable: false,
58
58
  displayOrder: 3,
59
59
  visible: true,
60
60
  alignTittle: "center",
@@ -379,18 +379,27 @@ function watchValidateType(configure, type, fieldInfo) {
379
379
  if (type) {
380
380
  const prop = configure.props.base.prop;
381
381
  if (prop) {
382
- const rule = {
383
- type,
384
- message: `${configure.props.base.title}格式不匹配`,
385
- label: configure.props.base.title,
386
- myType: type
387
- // 删除格式时需要用该属性
388
- };
389
- packageStringRuleByDataType(fieldInfo, type, rule);
390
- configure.props.rules.push(rule);
382
+ if (typeof type === "string") {
383
+ addRuleToConfigure(configure, type, fieldInfo);
384
+ } else if (Array.isArray(type)) {
385
+ for (let i = 0; i < type.length; i++) {
386
+ addRuleToConfigure(configure, type[i], fieldInfo);
387
+ }
388
+ }
391
389
  }
392
390
  }
393
391
  }
392
+ function addRuleToConfigure(configure, type, fieldInfo) {
393
+ const rule = {
394
+ type,
395
+ message: `${configure.props.base.title}格式不匹配`,
396
+ label: configure.props.base.title,
397
+ myType: type
398
+ // 删除格式时需要用该属性
399
+ };
400
+ packageStringRuleByDataType(fieldInfo, type, rule);
401
+ configure.props.rules.push(rule);
402
+ }
394
403
  function watchPatternValidate(configure, pattern, fieldInfo) {
395
404
  const prop = configure.props.base.prop;
396
405
  if (prop) {
@@ -15,7 +15,7 @@ export declare function queryTableFields(systemCode: string, systemVersion: numb
15
15
  * @param tableName
16
16
  * @returns
17
17
  */
18
- export declare function queryTableFieldsOrMap(systemCode: string, systemVersion: number, tableName: string): Promise<any>;
18
+ export declare function queryTableFieldsOrMap(systemVersion: number, tableName: string): Promise<any>;
19
19
  /**
20
20
  * 查询子表
21
21
  * @param systemCode
@@ -35,3 +35,5 @@ export declare function setTableRuntimesFromConfigure(tableConfigure: Component,
35
35
  * @return {*}
36
36
  */
37
37
  export declare function tableResetConfigIndo(configure: object, moduleValue: any): void;
38
+ export declare function changeFeieldToMap(modelFieldsMap: any, tableFields: any): void;
39
+ export declare function getTableNameByTableUuid(pageDesign: any, tableUuid: any): any;
@@ -8,17 +8,6 @@ function queryTableFields(systemCode, systemVersion, tableName) {
8
8
  url += "&tableName=" + (tableName ? tableName : "");
9
9
  return http.get(url);
10
10
  }
11
- function queryTableFieldsOrMap(systemCode, systemVersion, tableName) {
12
- const param = {
13
- systemCode,
14
- publishVersion: systemVersion,
15
- tableName
16
- };
17
- return http.get(
18
- window["$vueApp"].config.globalProperties.baseAPI + "/mms/data-tables/table-columns/findAttributeMap",
19
- param
20
- );
21
- }
22
11
  function querySublist(systemCode, systemVersion, publishVersion) {
23
12
  const param = {
24
13
  systemCode,
@@ -180,7 +169,7 @@ function getListColumns(configure, pageDesign) {
180
169
  // 校验的正则
181
170
  pattern: item.props.verification.verifyRegex,
182
171
  // 校验的类型
183
- checkType: item.props.verification.type,
172
+ checkType: getCheckType(item.props.verification.type),
184
173
  // 内容显示位置
185
174
  contAlign: item.props.base ? item.props.base.alignContent : null
186
175
  // 国际化key,如果配置了该列则使用该列的key去查询国际化配置,如果没用配置就以“headerName”字段的值为准
@@ -373,6 +362,19 @@ function getFileSet(item) {
373
362
  if (propName) {
374
363
  fileSet.serverNameData = { name: propName, dbName: propName.toUpperCase() };
375
364
  }
365
+ if (item.props.uploadConfig) {
366
+ if (item.props.uploadConfig.multiple) {
367
+ fileSet.multiple = true;
368
+ } else {
369
+ fileSet.multiple = false;
370
+ }
371
+ if (item.props.uploadConfig.accept) {
372
+ fileSet.accept = item.props.uploadConfig.accept;
373
+ }
374
+ if (item.props.uploadConfig.limitFileSize) {
375
+ fileSet.limitFileSize = item.props.uploadConfig.limitFileSize;
376
+ }
377
+ }
376
378
  return JSON.stringify(fileSet);
377
379
  }
378
380
  return null;
@@ -449,6 +451,12 @@ function getDynamicColumnJson(item) {
449
451
  }
450
452
  return null;
451
453
  }
454
+ function getCheckType(type) {
455
+ if (Array.isArray(type) && type.length > 0) {
456
+ return JSON.stringify(type);
457
+ }
458
+ return type;
459
+ }
452
460
  function tableResetConfigIndo(configure, moduleValue) {
453
461
  let newColumnInfo = {
454
462
  uuid: configure.uuid,
@@ -458,7 +466,8 @@ function tableResetConfigIndo(configure, moduleValue) {
458
466
  editLine: configure.props.editLine,
459
467
  format: configure.props.format,
460
468
  verification: configure.props.verification,
461
- definition: configure.props.definition
469
+ definition: configure.props.definition,
470
+ size: configure.props.size
462
471
  };
463
472
  configure.props = {};
464
473
  configure.uuid = newColumnInfo.uuid;
@@ -469,13 +478,32 @@ function tableResetConfigIndo(configure, moduleValue) {
469
478
  configure.props.format = newColumnInfo.format;
470
479
  configure.props.verification = newColumnInfo.verification;
471
480
  configure.props.definition = newColumnInfo.definition;
481
+ configure.props.size = newColumnInfo.size;
472
482
  configure.events = getDesignEvents(moduleValue);
473
- configure.name = "table";
483
+ configure.name = moduleValue;
484
+ }
485
+ function changeFeieldToMap(modelFieldsMap, tableFields) {
486
+ modelFieldsMap = {};
487
+ tableFields.forEach((attrbt) => {
488
+ modelFieldsMap[attrbt.dbColumnName] = attrbt;
489
+ });
490
+ }
491
+ function getTableNameByTableUuid(pageDesign, tableUuid) {
492
+ let tableName = pageDesign.tableName;
493
+ if (!tableUuid && tableName) {
494
+ return tableName;
495
+ }
496
+ let tableConfigure;
497
+ if (pageDesign.tableRuntimes && tableUuid && pageDesign.tableRuntimes[tableUuid]) {
498
+ tableConfigure = JSON.parse(pageDesign.tableRuntimes[tableUuid].configure);
499
+ }
500
+ return tableConfigure && tableConfigure.props && tableConfigure.props.dataOrigin ? tableConfigure.props.dataOrigin.tableName : null;
474
501
  }
475
502
  export {
503
+ changeFeieldToMap,
504
+ getTableNameByTableUuid,
476
505
  querySublist,
477
506
  queryTableFields,
478
- queryTableFieldsOrMap,
479
507
  setTableRuntimesFromConfigure,
480
508
  tableResetConfigIndo
481
509
  };
@@ -203,6 +203,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
203
203
  (openBlock(), createBlock(_sfc_main$1, {
204
204
  key: __props.configure.uuid + "_edit",
205
205
  configure: __props.configure,
206
+ title: "启用条件",
206
207
  type: "editConditions"
207
208
  }, null, 8, ["configure"]))
208
209
  ]),
@@ -22,7 +22,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
22
22
  }
23
23
  },
24
24
  setup(__props) {
25
- var _a;
26
25
  const pageDesignUtil = usePageContextStore();
27
26
  const props = __props;
28
27
  if (!props.configure.props) {
@@ -35,8 +34,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
35
34
  }
36
35
  tableDatas = props.configure.props.base.editConditions;
37
36
  } else {
38
- if (!((_a = props.configure.props.base) == null ? void 0 : _a.showConditions)) {
39
- props.configure.props.base.showConditions = [];
37
+ if (!props.configure.props.base) {
38
+ props.configure.props.base = { showConditions: [] };
39
+ } else {
40
+ if (!props.configure.props.base.showConditions) {
41
+ props.configure.props.base.showConditions = [];
42
+ }
40
43
  }
41
44
  tableDatas = props.configure.props.base.showConditions;
42
45
  }
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./common-variable-bind.vue3.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.js";
4
- const BindVariable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-468275d2"]]);
4
+ const BindVariable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-34b580aa"]]);
5
5
  export {
6
6
  BindVariable as default
7
7
  };
@@ -5,7 +5,7 @@ import { deepCopy, getUuidv4 } from "../../../utils/common-util.js";
5
5
  import { getTypeOptions, taskVarOptions, contextVarOptions } from "./common-variable-bind-option.js";
6
6
  import { usePageContextStore } from "../../../../../stores/page-store.js";
7
7
  import { tableField } from "../../../../../stores/table-store.js";
8
- const _withScopeId = (n) => (pushScopeId("data-v-468275d2"), n = n(), popScopeId(), n);
8
+ const _withScopeId = (n) => (pushScopeId("data-v-34b580aa"), n = n(), popScopeId(), n);
9
9
  const _hoisted_1 = { key: 0 };
10
10
  const _hoisted_2 = { style: { "margin-top": "10px", "font-size": "10px", "display": "flex", "align-items": "center", "justify-self": "center" } };
11
11
  const _hoisted_3 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("span", { style: { "margin-left": "5px" } }, "输入变量名后点击加号按钮添加", -1));
@@ -319,6 +319,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
319
319
  popoverRef.value.hide();
320
320
  }
321
321
  function selectRow(row) {
322
+ debugger;
322
323
  if (row.type == "range") {
323
324
  if (row.symbolNum === "") {
324
325
  ElMessage.warning("周期不能为空!");
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, createTextVNode, createCommentVNode, createElementBlock, Fragment, renderList } from "vue";
2
2
  import "@element-plus/icons-vue";
3
- /* empty css */
3
+ /* empty css */
4
4
  import http from "agilebuilder-ui/src/utils/request";
5
5
  const _hoisted_1 = { class: "dialog-footer" };
6
6
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -1,7 +1,7 @@
1
1
  import _sfc_main from "./data-origin.vue2.js";
2
2
  /* empty css */
3
3
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
4
- const DataOrigin = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-9388107f"]]);
4
+ const DataOrigin = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-a8c75465"]]);
5
5
  export {
6
6
  DataOrigin as default
7
7
  };
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, computed, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, createTextVNode, unref, createCommentVNode, withDirectives, vShow, createElementBlock, Fragment, renderList, normalizeClass, toDisplayString, renderSlot } from "vue";
2
- import _sfc_main$1 from "../../form/common/dataorigin-input-table.vue2.js";
2
+ import _sfc_main$1 from "../../form/common/dataorigin-input-table.vue.js";
3
3
  import { Codemirror } from "vue-codemirror";
4
4
  import _sfc_main$6 from "../../workflow/component/combination.vue.js";
5
5
  import _sfc_main$5 from "./return-set-table.vue.js";
@@ -373,15 +373,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
373
373
  modelValue: __props.configure.props.dataOrigin.tableName,
374
374
  "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => __props.configure.props.dataOrigin.tableName = $event),
375
375
  title: __props.configure.props.dataOrigin.tableName,
376
+ onClick: selectTable,
376
377
  clearable: "",
377
378
  readonly: "true"
378
379
  }, {
379
- append: withCtx(() => [
380
+ prepend: withCtx(() => [
380
381
  createVNode(_component_el_button, {
381
382
  icon: unref(Search),
382
383
  onClick: selectTable,
383
384
  size: "small"
384
- }, null, 8, ["icon"]),
385
+ }, null, 8, ["icon"])
386
+ ]),
387
+ append: withCtx(() => [
385
388
  createVNode(_component_el_button, {
386
389
  icon: unref(Close),
387
390
  onClick: clearTable,
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, createTextVNode, createBlock, createCommentVNode } from "vue";
2
- import IconSetDialog from "../../form/common/icon-set-dialog.vue.js";
2
+ import IconSetDialog from "../../form/common/icon-set-dialog.vue2.js";
3
3
  const _sfc_main = /* @__PURE__ */ defineComponent({
4
4
  __name: "formatting-icon-label",
5
5
  props: {
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, createTextVNode, createCommentVNode, unref } from "vue";
2
2
  import _sfc_main$1 from "../../form/common/suffixmodule.vue.js";
3
3
  import { Search } from "@element-plus/icons-vue";
4
- /* empty css */
4
+ /* empty css */
5
5
  import _sfc_main$2 from "./formatting-icon-label.vue.js";
6
6
  const _hoisted_1 = { class: "dialog-footer" };
7
7
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, createTextVNode } from "vue";
2
2
  import "@element-plus/icons-vue";
3
- /* empty css */
3
+ /* empty css */
4
4
  const _hoisted_1 = { class: "dialog-footer" };
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "querySetting",
@@ -4,7 +4,7 @@ import { Plus, Remove, Delete } from "@element-plus/icons-vue";
4
4
  import _sfc_main$1 from "../component/variate-select.vue.js";
5
5
  import CompositeHeader from "../component/composite-header.vue.js";
6
6
  import _sfc_main$2 from "../component/import-header.vue.js";
7
- import { querySublist, queryTableFieldsOrMap } from "../../../../utils/page-table-util.js";
7
+ import { querySublist, queryTableFields, changeFeieldToMap } from "../../../../utils/page-table-util.js";
8
8
  import _sfc_main$4 from "../../workflow/component/combination.vue.js";
9
9
  import _sfc_main$3 from "../../common/common-select-table.vue.js";
10
10
  import { Search, Close } from "@element-plus/icons";
@@ -120,10 +120,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
120
120
  props.configure.props.otherSettings.alias = tableInfo.alias;
121
121
  const systemCode = tableInfo.systemCode ? tableInfo.systemCode : props.pageDesign.systemCode;
122
122
  const systemVersion = tableInfo.systemVersion ? tableInfo.systemVersion : props.pageDesign.version;
123
- queryTableFieldsOrMap(systemCode, systemVersion, tableInfo.name).then((tableFields) => {
124
- props.configure.props["otherSettings"]["modelFields"] = tableFields.attributeArr;
125
- props.configure.props["otherSettings"]["modelFieldsMap"] = tableFields.fieldMap;
126
- console.log("queryTableFields", tableFields);
123
+ queryTableFields(systemCode, systemVersion, tableInfo.name).then((tableFields) => {
124
+ props.configure.props["otherSettings"]["modelFields"] = tableFields;
125
+ if (!props.configure.props["otherSettings"]["modelFieldsMap"]) {
126
+ props.configure.props["otherSettings"]["modelFieldsMap"] = {};
127
+ }
128
+ changeFeieldToMap(props.configure.props["otherSettings"]["modelFieldsMap"], tableFields);
127
129
  });
128
130
  }
129
131
  }
@@ -43,7 +43,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
43
43
  tableConfigure.value = val.tableConfigure;
44
44
  });
45
45
  return (_ctx, _cache) => {
46
- return Object.keys(columnData.value).length > 0 && !_ctx.formModu ? (openBlock(), createElementBlock("div", _hoisted_1, [
46
+ return Object.keys(columnData.value).length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1, [
47
47
  createVNode(AttrHeader, {
48
48
  modelValue: unref(currentConfigType),
49
49
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(currentConfigType) ? currentConfigType.value = $event : currentConfigType = $event),
@@ -2,7 +2,7 @@ import _sfc_main from "./table-design.vue2.js";
2
2
  /* empty css */
3
3
  /* empty css */
4
4
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
5
- const tableDesign = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f6500856"]]);
5
+ const tableDesign = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-81648b04"]]);
6
6
  export {
7
7
  tableDesign as default
8
8
  };
@@ -11,7 +11,7 @@ import "@element-plus/icons";
11
11
  import "super-page-runtime";
12
12
  import "../../../../../../stores/page-store.js";
13
13
  import _sfc_main$1 from "../component/table-children-column.vue.js";
14
- import { queryTableFields } from "../../../../utils/page-table-util.js";
14
+ import { queryTableFields, changeFeieldToMap } from "../../../../utils/page-table-util.js";
15
15
  const _hoisted_1 = {
16
16
  id: "tableDesignMenu",
17
17
  ref: "headerMenu",
@@ -143,10 +143,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
143
143
  const systemVersion = props.configure.tableSysVersion ? props.configure.tableSysVersion : props.pageDesign.version;
144
144
  const tableName = props.configure.props.dataOrigin.tableName;
145
145
  queryTableFields(systemCode, systemVersion, tableName).then((tableFields) => {
146
- props.configure.modelFieldsMap = {};
147
- tableFields.forEach((attrbt) => {
148
- props.configure.modelFieldsMap[attrbt.dbColumnName] = attrbt;
149
- });
146
+ changeFeieldToMap(props.configure.modelFieldsMap, tableFields);
150
147
  props.configure.modelFields = tableFields;
151
148
  });
152
149
  }
@@ -9,7 +9,7 @@ import { getUuidv4 } from "../../../../utils/common-util.js";
9
9
  import eventBus from "../../../../utils/eventBus.js";
10
10
  import _sfc_main$1 from "../component/variate-select.vue.js";
11
11
  import _sfc_main$6 from "../../form/common/suffixmodule.vue.js";
12
- /* empty css */
12
+ /* empty css */
13
13
  import _sfc_main$2 from "../../common/common-function-code.vue.js";
14
14
  import _sfc_main$9 from "../../common/common-select-table.vue.js";
15
15
  import { queryTableFields, tableResetConfigIndo } from "../../../../utils/page-table-util.js";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, onMounted, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, unref, createCommentVNode, withDirectives, createTextVNode, createElementBlock, Fragment, renderList, vShow, normalizeClass } from "vue";
2
- import _sfc_main$3 from "./dataorigin-input-table.vue2.js";
2
+ import _sfc_main$3 from "./dataorigin-input-table.vue.js";
3
3
  import _sfc_main$2 from "./condition.vue.js";
4
4
  import _sfc_main$1 from "./row-ul-li.vue.js";
5
5
  import "uuid";
@@ -1,4 +1,155 @@
1
- import _sfc_main from "./dataorigin-input-table.vue2.js";
1
+ import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, unref, createElementVNode, createTextVNode } from "vue";
2
+ import { Search } from "@element-plus/icons-vue";
3
+ const _hoisted_1 = { class: "dialog-footer" };
4
+ const _sfc_main = /* @__PURE__ */ defineComponent({
5
+ __name: "dataorigin-input-table",
6
+ props: {
7
+ modelValue: {
8
+ type: String,
9
+ default: ""
10
+ }
11
+ },
12
+ emits: ["update:modelValue"],
13
+ setup(__props, { emit: __emit }) {
14
+ const props = __props;
15
+ const inputValue = ref(props.modelValue);
16
+ const emit = __emit;
17
+ const tableData = [
18
+ {
19
+ id: 1,
20
+ date: "2016-05-03",
21
+ name: "Tom",
22
+ address: "No. 189, Grove St, Los Angeles"
23
+ },
24
+ {
25
+ id: 2,
26
+ date: "2016-05-02",
27
+ name: "Tom",
28
+ address: "No. 189, Grove St, Los Angeles"
29
+ },
30
+ {
31
+ id: 3,
32
+ date: "2016-05-04",
33
+ name: "Tom",
34
+ address: "No. 189, Grove St, Los Angeles"
35
+ },
36
+ {
37
+ id: 4,
38
+ date: "2016-05-01",
39
+ name: "Tom",
40
+ address: "No. 189, Grove St, Los Angeles"
41
+ }
42
+ ];
43
+ const dialogVisible = ref(false);
44
+ const selectData = ref([]);
45
+ watch(() => props.modelValue, (newVal) => {
46
+ inputValue.value = newVal;
47
+ });
48
+ function confirm() {
49
+ if (selectData.value.length > 0) {
50
+ let str = "";
51
+ selectData.value.forEach((item) => {
52
+ str = str + item.name + ",";
53
+ });
54
+ str = str.substring(0, str.length - 1);
55
+ emit("update:modelValue", str);
56
+ dialogVisible.value = false;
57
+ } else {
58
+ dialogVisible.value = false;
59
+ }
60
+ }
61
+ function handleSelectionChange(selection) {
62
+ selectData.value = selection;
63
+ }
64
+ function inputClick() {
65
+ dialogVisible.value = true;
66
+ }
67
+ return (_ctx, _cache) => {
68
+ const _component_el_icon = resolveComponent("el-icon");
69
+ const _component_el_input = resolveComponent("el-input");
70
+ const _component_el_table_column = resolveComponent("el-table-column");
71
+ const _component_el_table = resolveComponent("el-table");
72
+ const _component_el_button = resolveComponent("el-button");
73
+ const _component_el_dialog = resolveComponent("el-dialog");
74
+ return openBlock(), createElementBlock(Fragment, null, [
75
+ createVNode(_component_el_input, {
76
+ modelValue: inputValue.value,
77
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => inputValue.value = $event),
78
+ placeholder: "请选择",
79
+ onClick: inputClick
80
+ }, {
81
+ suffix: withCtx(() => [
82
+ createVNode(_component_el_icon, { onClick: inputClick }, {
83
+ default: withCtx(() => [
84
+ createVNode(unref(Search))
85
+ ]),
86
+ _: 1
87
+ })
88
+ ]),
89
+ _: 1
90
+ }, 8, ["modelValue"]),
91
+ createVNode(_component_el_dialog, {
92
+ modelValue: dialogVisible.value,
93
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => dialogVisible.value = $event),
94
+ title: "Tips",
95
+ width: "500"
96
+ }, {
97
+ footer: withCtx(() => [
98
+ createElementVNode("div", _hoisted_1, [
99
+ createVNode(_component_el_button, {
100
+ onClick: _cache[1] || (_cache[1] = ($event) => dialogVisible.value = false)
101
+ }, {
102
+ default: withCtx(() => [
103
+ createTextVNode("取消")
104
+ ]),
105
+ _: 1
106
+ }),
107
+ createVNode(_component_el_button, {
108
+ type: "primary",
109
+ onClick: confirm
110
+ }, {
111
+ default: withCtx(() => [
112
+ createTextVNode(" 确定 ")
113
+ ]),
114
+ _: 1
115
+ })
116
+ ])
117
+ ]),
118
+ default: withCtx(() => [
119
+ createVNode(_component_el_table, {
120
+ data: tableData,
121
+ style: { "width": "100%" },
122
+ onSelectionChange: handleSelectionChange
123
+ }, {
124
+ default: withCtx(() => [
125
+ createVNode(_component_el_table_column, {
126
+ type: "selection",
127
+ width: "55"
128
+ }),
129
+ createVNode(_component_el_table_column, {
130
+ prop: "date",
131
+ label: "Date",
132
+ width: "180"
133
+ }),
134
+ createVNode(_component_el_table_column, {
135
+ prop: "name",
136
+ label: "Name",
137
+ width: "180"
138
+ }),
139
+ createVNode(_component_el_table_column, {
140
+ prop: "address",
141
+ label: "Address"
142
+ })
143
+ ]),
144
+ _: 1
145
+ })
146
+ ]),
147
+ _: 1
148
+ }, 8, ["modelValue"])
149
+ ], 64);
150
+ };
151
+ }
152
+ });
2
153
  export {
3
154
  _sfc_main as default
4
155
  };
@@ -1,155 +1,4 @@
1
- import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, unref, createElementVNode, createTextVNode } from "vue";
2
- import { Search } from "@element-plus/icons-vue";
3
- const _hoisted_1 = { class: "dialog-footer" };
4
- const _sfc_main = /* @__PURE__ */ defineComponent({
5
- __name: "dataorigin-input-table",
6
- props: {
7
- modelValue: {
8
- type: String,
9
- default: ""
10
- }
11
- },
12
- emits: ["update:modelValue"],
13
- setup(__props, { emit: __emit }) {
14
- const props = __props;
15
- const inputValue = ref(props.modelValue);
16
- const emit = __emit;
17
- const tableData = [
18
- {
19
- id: 1,
20
- date: "2016-05-03",
21
- name: "Tom",
22
- address: "No. 189, Grove St, Los Angeles"
23
- },
24
- {
25
- id: 2,
26
- date: "2016-05-02",
27
- name: "Tom",
28
- address: "No. 189, Grove St, Los Angeles"
29
- },
30
- {
31
- id: 3,
32
- date: "2016-05-04",
33
- name: "Tom",
34
- address: "No. 189, Grove St, Los Angeles"
35
- },
36
- {
37
- id: 4,
38
- date: "2016-05-01",
39
- name: "Tom",
40
- address: "No. 189, Grove St, Los Angeles"
41
- }
42
- ];
43
- const dialogVisible = ref(false);
44
- const selectData = ref([]);
45
- watch(() => props.modelValue, (newVal) => {
46
- inputValue.value = newVal;
47
- });
48
- function confirm() {
49
- if (selectData.value.length > 0) {
50
- let str = "";
51
- selectData.value.forEach((item) => {
52
- str = str + item.name + ",";
53
- });
54
- str = str.substring(0, str.length - 1);
55
- emit("update:modelValue", str);
56
- dialogVisible.value = false;
57
- } else {
58
- dialogVisible.value = false;
59
- }
60
- }
61
- function handleSelectionChange(selection) {
62
- selectData.value = selection;
63
- }
64
- function inputClick() {
65
- dialogVisible.value = true;
66
- }
67
- return (_ctx, _cache) => {
68
- const _component_el_icon = resolveComponent("el-icon");
69
- const _component_el_input = resolveComponent("el-input");
70
- const _component_el_table_column = resolveComponent("el-table-column");
71
- const _component_el_table = resolveComponent("el-table");
72
- const _component_el_button = resolveComponent("el-button");
73
- const _component_el_dialog = resolveComponent("el-dialog");
74
- return openBlock(), createElementBlock(Fragment, null, [
75
- createVNode(_component_el_input, {
76
- modelValue: inputValue.value,
77
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => inputValue.value = $event),
78
- placeholder: "请选择",
79
- onClick: inputClick
80
- }, {
81
- suffix: withCtx(() => [
82
- createVNode(_component_el_icon, { onClick: inputClick }, {
83
- default: withCtx(() => [
84
- createVNode(unref(Search))
85
- ]),
86
- _: 1
87
- })
88
- ]),
89
- _: 1
90
- }, 8, ["modelValue"]),
91
- createVNode(_component_el_dialog, {
92
- modelValue: dialogVisible.value,
93
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => dialogVisible.value = $event),
94
- title: "Tips",
95
- width: "500"
96
- }, {
97
- footer: withCtx(() => [
98
- createElementVNode("div", _hoisted_1, [
99
- createVNode(_component_el_button, {
100
- onClick: _cache[1] || (_cache[1] = ($event) => dialogVisible.value = false)
101
- }, {
102
- default: withCtx(() => [
103
- createTextVNode("取消")
104
- ]),
105
- _: 1
106
- }),
107
- createVNode(_component_el_button, {
108
- type: "primary",
109
- onClick: confirm
110
- }, {
111
- default: withCtx(() => [
112
- createTextVNode(" 确定 ")
113
- ]),
114
- _: 1
115
- })
116
- ])
117
- ]),
118
- default: withCtx(() => [
119
- createVNode(_component_el_table, {
120
- data: tableData,
121
- style: { "width": "100%" },
122
- onSelectionChange: handleSelectionChange
123
- }, {
124
- default: withCtx(() => [
125
- createVNode(_component_el_table_column, {
126
- type: "selection",
127
- width: "55"
128
- }),
129
- createVNode(_component_el_table_column, {
130
- prop: "date",
131
- label: "Date",
132
- width: "180"
133
- }),
134
- createVNode(_component_el_table_column, {
135
- prop: "name",
136
- label: "Name",
137
- width: "180"
138
- }),
139
- createVNode(_component_el_table_column, {
140
- prop: "address",
141
- label: "Address"
142
- })
143
- ]),
144
- _: 1
145
- })
146
- ]),
147
- _: 1
148
- }, 8, ["modelValue"])
149
- ], 64);
150
- };
151
- }
152
- });
1
+ import _sfc_main from "./dataorigin-input-table.vue.js";
153
2
  export {
154
3
  _sfc_main as default
155
4
  };
@@ -1,5 +1,5 @@
1
1
  import _sfc_main from "./icon-set-dialog.vue3.js";
2
- /* empty css */
2
+ /* empty css */
3
3
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
4
4
  const IconSetDialog = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4aa5ce08"]]);
5
5
  export {
@@ -2,7 +2,7 @@ import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx
2
2
  import _sfc_main$3 from "../common/suffixmodule.vue.js";
3
3
  import { getFormComponentOptions } from "../../../../utils/assemblys-config.js";
4
4
  import { componentNameChange } from "../../../../utils/form-design-util.js";
5
- import IconSetDialog from "../common/icon-set-dialog.vue.js";
5
+ import IconSetDialog from "../common/icon-set-dialog.vue2.js";
6
6
  import _sfc_main$4 from "../../common/common-attr-size.vue.js";
7
7
  import BindVariable from "../../common/common-variable-bind.vue.js";
8
8
  import _sfc_main$2 from "../common/condition.vue.js";
@@ -156,8 +156,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
156
156
  }
157
157
  );
158
158
  onUnmounted(() => {
159
- var _a;
160
- removePropFromRefrencePropMap(props.configure.props.base.prop, (_a = props.pageDesign.runtime) == null ? void 0 : _a.refercePropMap);
159
+ var _a, _b;
160
+ removePropFromRefrencePropMap(props.configure.props.base.prop, (_b = (_a = props.pageDesign) == null ? void 0 : _a.runtime) == null ? void 0 : _b.refercePropMap);
161
161
  });
162
162
  }
163
163
  watch(props.configure.props.verification, (newValue, oldValue) => {
@@ -2,7 +2,7 @@ import { defineComponent, ref, resolveComponent, openBlock, createBlock, withCtx
2
2
  import { Search, Close, Setting } from "@element-plus/icons";
3
3
  import _sfc_main$1 from "../common/common-select-table.vue.js";
4
4
  import _sfc_main$2 from "./variable-dialog.vue.js";
5
- import { queryTableFields } from "../../../utils/page-table-util.js";
5
+ import { queryTableFields, changeFeieldToMap } from "../../../utils/page-table-util.js";
6
6
  import { usePageContextStore } from "../../../../../stores/page-store.js";
7
7
  import { queryWorkflowsRequest, createWorkflowRequest } from "../../../utils/page-design-util.js";
8
8
  const _hoisted_1 = { style: { "padding": "8px 0px 0px 0px" } };
@@ -71,10 +71,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
71
71
  const systemVersion = tableInfo.systemVersion ? tableInfo.systemVersion : props.configure.systemVersion;
72
72
  queryTableFields(systemCode, systemVersion, tableInfo.name).then((tableFields) => {
73
73
  props.configure.modelFields = tableFields;
74
- props.configure.modelFieldsMap = {};
75
- tableFields.forEach((item) => {
76
- props.configure.modelFieldsMap[item.dbColumnName] = item;
77
- });
74
+ changeFeieldToMap(props.configure.modelFieldsMap, tableFields);
78
75
  pageContextUtil.setPageContext(props.configure);
79
76
  });
80
77
  }
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, createElementVNode, createVNode, withCtx, createBlock, createCommentVNode, normalizeClass, withDirectives, vShow, unref } from "vue";
2
2
  import _sfc_main$1 from "./view/view-design.vue.js";
3
3
  import { initComponentRefState } from "../../utils/page-helper-util.js";
4
- import { queryTableFields } from "../../utils/page-table-util.js";
4
+ import { getTableNameByTableUuid, queryTableFields, changeFeieldToMap } from "../../utils/page-table-util.js";
5
5
  import { addPermission, delPermission } from "../../utils/page-permission-util.js";
6
6
  import { usePageContextStore } from "../../../../stores/page-store.js";
7
7
  import ServiceFlowDesginer from "service-flow-designer";
@@ -83,15 +83,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
83
83
  }
84
84
  function initPageDesign(pageDesign2) {
85
85
  initComponentRefState(pageDesign2);
86
- if (pageDesign2.tableName) {
86
+ let tableUuid;
87
+ const tableUuids = pageDesign2 == null ? void 0 : pageDesign2.tableUuids;
88
+ if (tableUuids && tableUuids.length > 0) {
89
+ tableUuid = tableUuids[0];
90
+ }
91
+ const tableName = getTableNameByTableUuid(pageDesign2, tableUuid);
92
+ if (tableName) {
87
93
  const systemCode = pageDesign2.tableSysCode ? pageDesign2.tableSysCode : pageDesign2.systemCode;
88
94
  const systemVersion = pageDesign2.tableSysVersion ? pageDesign2.tableSysVersion : pageDesign2.systemVersion;
89
- queryTableFields(systemCode, systemVersion, pageDesign2.tableName).then((tableFields) => {
95
+ queryTableFields(systemCode, systemVersion, tableName).then((tableFields) => {
90
96
  pageDesign2.modelFields = tableFields;
91
- pageDesign2.modelFieldsMap = {};
92
- tableFields.forEach((item) => {
93
- pageDesign2.modelFieldsMap[item.dbColumnName] = item;
94
- });
97
+ changeFeieldToMap(pageDesign2.modelFieldsMap, tableFields);
95
98
  pageDesignUtil.setPageContext(pageDesign2);
96
99
  });
97
100
  }
@@ -296,22 +296,22 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
296
296
  event2.remark = "";
297
297
  event2.standardValues = [];
298
298
  pageDesign.customEvents.splice(i, 1);
299
- deleteComponentEvent(tempObj);
299
+ restoreComponentEvent(tempObj, event2);
300
300
  break;
301
301
  }
302
302
  }
303
303
  }
304
304
  }
305
305
  }
306
- function deleteComponentEvent(event) {
306
+ function restoreComponentEvent(sourceEvent, event) {
307
307
  const pageDesign = pageDesignUtil.pageContext;
308
- const itemConfig = findDesignItemByUuid(pageDesign, event.componentUuid);
308
+ const itemConfig = findDesignItemByUuid(pageDesign, sourceEvent.componentUuid);
309
309
  if (itemConfig && itemConfig.events) {
310
310
  const eventIndex = itemConfig.events.findIndex(
311
- (e) => e.name == event.name && e.componentUuid == event.componentUuid
311
+ (e) => e.name == sourceEvent.name && e.componentUuid == sourceEvent.componentUuid
312
312
  );
313
313
  if (eventIndex > -1) {
314
- itemConfig.events.splice(eventIndex, 1);
314
+ itemConfig.events[eventIndex] = event;
315
315
  }
316
316
  }
317
317
  }
@@ -284,7 +284,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
284
284
  newColumn.props.editLine.plugType = f.componentName;
285
285
  newColumn.props.editLine.editable = true;
286
286
  newColumn.props.base.defaultValue = f.value;
287
- if (f.valid) {
287
+ if (f.valid && f.valid.length > 0) {
288
288
  if (!newColumn.props.verification) {
289
289
  newColumn.props.verification = {};
290
290
  }
@@ -178,6 +178,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
178
178
  const rowItem = {
179
179
  uuid: getUuidv4()
180
180
  };
181
+ if (props.model.pageType == "list") {
182
+ rowItem.isTable = true;
183
+ }
181
184
  const existIndex = queryIndex(rowObj);
182
185
  if (existIndex > -1) {
183
186
  props.model.fieldInfos.splice(existIndex + 1, 0, rowItem);
package/dist/es/style.css CHANGED
@@ -672,7 +672,7 @@ fieldset.amb-design-item-selected {
672
672
  align-items: center; /* 子元素在交叉轴(垂直方向)上居中对齐 */
673
673
  }
674
674
 
675
- [data-v-468275d2] .el-cascader-menu {
675
+ [data-v-34b580aa] .el-cascader-menu {
676
676
  min-width: 120px !important;
677
677
  }
678
678
 
@@ -9460,10 +9460,10 @@ fieldset.amb-design-item-selected {
9460
9460
  background: #c8ebfb;
9461
9461
  }
9462
9462
 
9463
- li[data-v-f6500856] {
9463
+ li[data-v-81648b04] {
9464
9464
  color: #333;
9465
9465
  }
9466
- .context-menu[data-v-f6500856] {
9466
+ .context-menu[data-v-81648b04] {
9467
9467
  position: fixed;
9468
9468
  background: #fff;
9469
9469
  z-index: 999;
@@ -9471,7 +9471,7 @@ li[data-v-f6500856] {
9471
9471
  margin: 0;
9472
9472
  margin-top: 30px;
9473
9473
  }
9474
- .context-menu li[data-v-f6500856] {
9474
+ .context-menu li[data-v-81648b04] {
9475
9475
  min-width: 75px;
9476
9476
  height: 28px;
9477
9477
  line-height: 28px;
@@ -9479,16 +9479,16 @@ li[data-v-f6500856] {
9479
9479
  color: #1a1a1a;
9480
9480
  cursor: pointer;
9481
9481
  }
9482
- .context-menu li[data-v-f6500856]:hover {
9482
+ .context-menu li[data-v-81648b04]:hover {
9483
9483
  background: #5893ef;
9484
9484
  color: #fff;
9485
9485
  }
9486
- .context-menu[data-v-f6500856] {
9486
+ .context-menu[data-v-81648b04] {
9487
9487
  border: 1px solid #eee;
9488
9488
  box-shadow: 0 0.5em 1em 0 rgba(0, 0, 0, 0.1);
9489
9489
  border-radius: 5px;
9490
9490
  }
9491
- li[data-v-f6500856] {
9491
+ li[data-v-81648b04] {
9492
9492
  list-style-type: none;
9493
9493
  }
9494
9494
 
@@ -9500,7 +9500,7 @@ li[data-v-f6500856] {
9500
9500
  color: #7b7b7b;
9501
9501
  }
9502
9502
 
9503
- .seleteSort[data-v-9388107f] {
9503
+ .seleteSort[data-v-a8c75465] {
9504
9504
  border-radius: 5px;
9505
9505
  border: 1px solid rgba(88, 147, 239);
9506
9506
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "super-page-designer",
3
- "version": "2.0.83",
3
+ "version": "2.0.87",
4
4
  "description": "AgileBuilder super page designer",
5
5
  "license": "ISC",
6
6
  "main": "dist/es/index.js",
@@ -28,7 +28,7 @@
28
28
  "@logicflow/layout": "1.2.0-alpha.16",
29
29
  "@vitejs/plugin-vue": "^5.0.4",
30
30
  "@vueuse/core": "^10.9.0",
31
- "agilebuilder-ui": "1.0.57",
31
+ "agilebuilder-ui": "1.0.58",
32
32
  "echarts": "^5.5.0",
33
33
  "element-plus": "^2.6.1",
34
34
  "font-awesome": "^4.7.0",
@@ -38,8 +38,8 @@
38
38
  "pinia": "^2.1.7",
39
39
  "qrcode": "^1.5.3",
40
40
  "quill": "^2.0.1",
41
- "service-flow-designer": "2.0.81",
42
- "super-page-runtime": "2.0.81",
41
+ "service-flow-designer": "2.0.85",
42
+ "super-page-runtime": "2.0.86",
43
43
  "uuid": "^9.0.1",
44
44
  "vite": "^5.1.6",
45
45
  "vite-plugin-node-stdlib-browser": "^0.2.1",
@@ -50,7 +50,7 @@
50
50
  "vue-echarts": "^6.6.9",
51
51
  "vue-router": "^4.3.0",
52
52
  "vuex": "^4.1.0",
53
- "workflow-editor": "0.0.37-up"
53
+ "workflow-editor": "0.0.38-up"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@codemirror/autocomplete": "^6.16.0",