weaver-e10-builder 1.2.2 → 1.2.3

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 (106) hide show
  1. package/README.md +8 -19
  2. package/dist/commands/actionflow.d.ts.map +1 -1
  3. package/dist/commands/actionflow.js +26 -0
  4. package/dist/commands/actionflow.js.map +1 -1
  5. package/dist/commands/form-add-detail-table.d.ts.map +1 -1
  6. package/dist/commands/form-add-detail-table.js +127 -7
  7. package/dist/commands/form-add-detail-table.js.map +1 -1
  8. package/dist/commands/form-ebuilder-columns.d.ts +7 -0
  9. package/dist/commands/form-ebuilder-columns.d.ts.map +1 -1
  10. package/dist/commands/form-ebuilder-columns.js +2 -24
  11. package/dist/commands/form-ebuilder-columns.js.map +1 -1
  12. package/dist/commands/form-formula.d.ts.map +1 -1
  13. package/dist/commands/form-formula.js +35 -11
  14. package/dist/commands/form-formula.js.map +1 -1
  15. package/dist/commands/form-nlist.d.ts +1 -1
  16. package/dist/commands/form-nlist.d.ts.map +1 -1
  17. package/dist/commands/form-nlist.js +5 -3
  18. package/dist/commands/form-nlist.js.map +1 -1
  19. package/dist/commands/form.d.ts.map +1 -1
  20. package/dist/commands/form.js +93 -72
  21. package/dist/commands/form.js.map +1 -1
  22. package/dist/commands/workflow-auth-resp.d.ts.map +1 -1
  23. package/dist/commands/workflow-auth-resp.js +69 -8
  24. package/dist/commands/workflow-auth-resp.js.map +1 -1
  25. package/dist/commands/workflow-node-assign-flow.d.ts +3 -0
  26. package/dist/commands/workflow-node-assign-flow.d.ts.map +1 -0
  27. package/dist/commands/workflow-node-assign-flow.js +342 -0
  28. package/dist/commands/workflow-node-assign-flow.js.map +1 -0
  29. package/dist/commands/workflow-node.d.ts +2 -0
  30. package/dist/commands/workflow-node.d.ts.map +1 -1
  31. package/dist/commands/workflow-node.js +75 -49
  32. package/dist/commands/workflow-node.js.map +1 -1
  33. package/dist/core/auth.js +1 -1
  34. package/dist/index.js +2 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/services/actionflow/components/assign_var.d.ts +12 -0
  37. package/dist/services/actionflow/components/assign_var.d.ts.map +1 -0
  38. package/dist/services/actionflow/components/assign_var.js +133 -0
  39. package/dist/services/actionflow/components/assign_var.js.map +1 -0
  40. package/dist/services/actionflow/components/index.d.ts.map +1 -1
  41. package/dist/services/actionflow/components/index.js +9 -0
  42. package/dist/services/actionflow/components/index.js.map +1 -1
  43. package/dist/services/actionflow/dynamic_resources.d.ts +7 -1
  44. package/dist/services/actionflow/dynamic_resources.d.ts.map +1 -1
  45. package/dist/services/actionflow/dynamic_resources.js +64 -7
  46. package/dist/services/actionflow/dynamic_resources.js.map +1 -1
  47. package/dist/services/actionflow/form_source.d.ts +35 -0
  48. package/dist/services/actionflow/form_source.d.ts.map +1 -1
  49. package/dist/services/actionflow/form_source.js +50 -0
  50. package/dist/services/actionflow/form_source.js.map +1 -1
  51. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  52. package/dist/services/actionflow/formula_service.js +51 -1
  53. package/dist/services/actionflow/formula_service.js.map +1 -1
  54. package/dist/services/form-create.d.ts +2 -1
  55. package/dist/services/form-create.d.ts.map +1 -1
  56. package/dist/services/form-create.js.map +1 -1
  57. package/dist/services/form-ebuilder-columns.d.ts +50 -0
  58. package/dist/services/form-ebuilder-columns.d.ts.map +1 -0
  59. package/dist/services/form-ebuilder-columns.js +68 -0
  60. package/dist/services/form-ebuilder-columns.js.map +1 -0
  61. package/dist/services/form-field-drop.d.ts +30 -1
  62. package/dist/services/form-field-drop.d.ts.map +1 -1
  63. package/dist/services/form-field-drop.js +60 -0
  64. package/dist/services/form-field-drop.js.map +1 -1
  65. package/dist/services/form-field-patch.d.ts +47 -0
  66. package/dist/services/form-field-patch.d.ts.map +1 -0
  67. package/dist/services/form-field-patch.js +88 -0
  68. package/dist/services/form-field-patch.js.map +1 -0
  69. package/dist/services/form-nlist.d.ts +1 -0
  70. package/dist/services/form-nlist.d.ts.map +1 -1
  71. package/dist/services/form-nlist.js +32 -5
  72. package/dist/services/form-nlist.js.map +1 -1
  73. package/dist/services/form-sub-detail.d.ts +51 -3
  74. package/dist/services/form-sub-detail.d.ts.map +1 -1
  75. package/dist/services/form-sub-detail.js +183 -20
  76. package/dist/services/form-sub-detail.js.map +1 -1
  77. package/dist/services/formula-detail.d.ts +68 -5
  78. package/dist/services/formula-detail.d.ts.map +1 -1
  79. package/dist/services/formula-detail.js +110 -44
  80. package/dist/services/formula-detail.js.map +1 -1
  81. package/dist/services/rich-text.d.ts +33 -0
  82. package/dist/services/rich-text.d.ts.map +1 -0
  83. package/dist/services/rich-text.js +134 -0
  84. package/dist/services/rich-text.js.map +1 -0
  85. package/dist/services/workflow-assign-flow.d.ts +114 -0
  86. package/dist/services/workflow-assign-flow.d.ts.map +1 -0
  87. package/dist/services/workflow-assign-flow.js +311 -0
  88. package/dist/services/workflow-assign-flow.js.map +1 -0
  89. package/dist/services/workflow-node-menu.d.ts +57 -0
  90. package/dist/services/workflow-node-menu.d.ts.map +1 -0
  91. package/dist/services/workflow-node-menu.js +144 -0
  92. package/dist/services/workflow-node-menu.js.map +1 -0
  93. package/package.json +48 -48
  94. package/skill-docs/SKILL.md +6 -5
  95. package/skill-docs/_catalog.md +79 -77
  96. package/skill-docs/actionflows/SKILL.md +168 -167
  97. package/skill-docs/actionflows/references/components/ebuilder/ActionEbAdd.md +1 -1
  98. package/skill-docs/actionflows/references/components/ebuilder/EventButton.md +33 -33
  99. package/skill-docs/references/common/guide-plan-template.md +254 -251
  100. package/skill-docs/references/common/ref-cli-commands.md +529 -519
  101. package/skill-docs/references/form/guide-create-form.md +233 -232
  102. package/skill-docs/references/form/guide-form-formula-functions.md +11 -1
  103. package/skill-docs/references/form/guide-form-sub-detail.md +82 -0
  104. package/skill-docs/references/form/guide-list-custom-text.md +52 -0
  105. package/skill-docs/references/workflow/guide-workflow-auth-resp.md +198 -190
  106. package/skill-docs/references/workflow/guide-workflow.md +7 -0
@@ -0,0 +1,50 @@
1
+ /**
2
+ * EBuilder 关联字段的**浏览显示列**(`ffDisplayColumns`)。
3
+ *
4
+ * 显示列存在字段配置里(`{id, name}[]`,id = 目标表字段 fieldId),只能经
5
+ * `saveFormFieldNew` 带着**完整字段 jsonObj** 一起写 —— 直接把它塞进建字段的 payload 不落库。
6
+ *
7
+ * 不配的后果:关联浏览弹窗回落到平台默认列,**把目标表的系统字段也列出来**
8
+ * (创建者/创建时间/数据ID 那一堆)。
9
+ *
10
+ * 抽成服务的原因:`form create`、`add-field`、`edit-field` 三条路都会建出 EBuilder 字段,
11
+ * 各写一份必然走样 —— 事实上 `edit-field --type EBuilder` 就漏了这一步,
12
+ * 出来的字段显示列是空的,而 `add-field` 出来的有。
13
+ */
14
+ import type { ApiClient } from '../core/client.js';
15
+ /** 自动配显示列时的条数上限(业务字段按顺序取前 N 个)。 */
16
+ export declare const DEFAULT_DISPLAY_COLUMN_LIMIT = 5;
17
+ export interface DisplayColumn {
18
+ id: string;
19
+ name: string;
20
+ }
21
+ export interface TargetField {
22
+ id: string;
23
+ name: string;
24
+ system: boolean;
25
+ }
26
+ /** 取 EBuilder 字段的完整配置(写回基底)。 */
27
+ export declare function getEbFieldConfig(client: ApiClient, baseUrl: string, formId: string, fieldId: string): Promise<Record<string, any>>;
28
+ /**
29
+ * 取目标表单字段(含系统字段标记)。
30
+ * 平台约定:业务字段 fieldId 为数字字符串;系统字段(创建者/创建时间/数据ID/流程状态等)
31
+ * fieldId 为固定英文名(name/creator/create_time/…),**不允许设为显示列**。
32
+ */
33
+ export declare function getTargetFields(client: ApiClient, baseUrl: string, objId: string, userId: string, tenantKey: string): Promise<TargetField[]>;
34
+ /** 目标表的默认显示列 = 去系统字段后取前 N 个业务字段。 */
35
+ export declare function defaultDisplayColumns(client: ApiClient, baseUrl: string, targetObjId: string, userId: string, tenantKey: string, limit?: number): Promise<DisplayColumn[]>;
36
+ /** 把显示列写进字段(读完整配置 → 带 ffDisplayColumns 存回)。 */
37
+ export declare function saveDisplayColumns(client: ApiClient, baseUrl: string, appId: string, objId: string, formId: string, fieldId: string, columns: DisplayColumn[]): Promise<void>;
38
+ /**
39
+ * 补齐/修正 EBuilder 字段的显示列。
40
+ *
41
+ * **只在确实缺了或对不上时才写**,两种情况之外一律不动:
42
+ * - 字段压根没有显示列(`edit-field` 改出来的字段就是这种);
43
+ * - 现有显示列里有**不属于当前目标表**的条目(换过关联表,旧列全指错了)。
44
+ *
45
+ * 这条门禁是必要的:不给的话,重复跑一次同样的 `--sform-id` 会把用户手工配好的显示列冲掉。
46
+ *
47
+ * 返回写入的列数;`null` = 无需改动。
48
+ */
49
+ export declare function ensureDisplayColumns(client: ApiClient, baseUrl: string, appId: string, objId: string, formId: string, fieldId: string, targetObjId: string, userId: string, tenantKey: string): Promise<number | null>;
50
+ //# sourceMappingURL=form-ebuilder-columns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-ebuilder-columns.d.ts","sourceRoot":"","sources":["../../src/services/form-ebuilder-columns.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,mCAAmC;AACnC,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,gCAAgC;AAChC,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAClE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAS9B;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GACnF,OAAO,CAAC,WAAW,EAAE,CAAC,CAUxB;AAED,oCAAoC;AACpC,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAC1F,KAAK,SAA+B,GACnC,OAAO,CAAC,aAAa,EAAE,CAAC,CAK1B;AAED,+CAA+C;AAC/C,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAChF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GACxC,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAChF,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GACtE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBxB"}
@@ -0,0 +1,68 @@
1
+ /** 自动配显示列时的条数上限(业务字段按顺序取前 N 个)。 */
2
+ export const DEFAULT_DISPLAY_COLUMN_LIMIT = 5;
3
+ /** 取 EBuilder 字段的完整配置(写回基底)。 */
4
+ export async function getEbFieldConfig(client, baseUrl, formId, fieldId) {
5
+ const gf = await client.post(`${baseUrl}/api/ebuilder/form/form/field/manage/getFormField`, { module: 'ebuilderform', formTableField: { formField: { id: fieldId, form: { id: formId } } } }, { ebbusinessid: formId });
6
+ const d = gf?.data || {};
7
+ if (!d.fieldId)
8
+ throw new Error('未读到 EBuilder 字段配置');
9
+ return d;
10
+ }
11
+ /**
12
+ * 取目标表单字段(含系统字段标记)。
13
+ * 平台约定:业务字段 fieldId 为数字字符串;系统字段(创建者/创建时间/数据ID/流程状态等)
14
+ * fieldId 为固定英文名(name/creator/create_time/…),**不允许设为显示列**。
15
+ */
16
+ export async function getTargetFields(client, baseUrl, objId, userId, tenantKey) {
17
+ const res = await client.post(`${baseUrl}/api/ebuilder/form/dataset/v1/getFields`, {
18
+ objId, userid: userId, tenantKey, isReturnDetail: 'y',
19
+ });
20
+ const mains = res?.data?.mainFields || [];
21
+ return mains.map((f) => ({
22
+ id: String(f.fieldId),
23
+ name: f.fieldName || f.title || '',
24
+ system: !/^\d+$/.test(String(f.fieldId)),
25
+ }));
26
+ }
27
+ /** 目标表的默认显示列 = 去系统字段后取前 N 个业务字段。 */
28
+ export async function defaultDisplayColumns(client, baseUrl, targetObjId, userId, tenantKey, limit = DEFAULT_DISPLAY_COLUMN_LIMIT) {
29
+ const fields = await getTargetFields(client, baseUrl, targetObjId, userId, tenantKey);
30
+ return fields.filter((f) => !f.system)
31
+ .slice(0, limit)
32
+ .map((f) => ({ id: f.id, name: f.name }));
33
+ }
34
+ /** 把显示列写进字段(读完整配置 → 带 ffDisplayColumns 存回)。 */
35
+ export async function saveDisplayColumns(client, baseUrl, appId, objId, formId, fieldId, columns) {
36
+ const full = await getEbFieldConfig(client, baseUrl, formId, fieldId);
37
+ const res = await client.post(`${baseUrl}/api/ebuilder/form/form/field/manage/saveFormFieldNew?apid=${encodeURIComponent(appId)}`, { formId, module: 'ebuilderform', customParam: { appId, objId }, jsonObj: JSON.stringify({ ...full, ffDisplayColumns: columns }) }, { ebbusinessid: formId });
38
+ if (res?.code !== 200 || !res?.status) {
39
+ throw new Error(res?.msg || '保存显示列失败');
40
+ }
41
+ }
42
+ /**
43
+ * 补齐/修正 EBuilder 字段的显示列。
44
+ *
45
+ * **只在确实缺了或对不上时才写**,两种情况之外一律不动:
46
+ * - 字段压根没有显示列(`edit-field` 改出来的字段就是这种);
47
+ * - 现有显示列里有**不属于当前目标表**的条目(换过关联表,旧列全指错了)。
48
+ *
49
+ * 这条门禁是必要的:不给的话,重复跑一次同样的 `--sform-id` 会把用户手工配好的显示列冲掉。
50
+ *
51
+ * 返回写入的列数;`null` = 无需改动。
52
+ */
53
+ export async function ensureDisplayColumns(client, baseUrl, appId, objId, formId, fieldId, targetObjId, userId, tenantKey) {
54
+ const full = await getEbFieldConfig(client, baseUrl, formId, fieldId);
55
+ const current = Array.isArray(full.ffDisplayColumns) ? full.ffDisplayColumns : [];
56
+ const defaults = await defaultDisplayColumns(client, baseUrl, targetObjId, userId, tenantKey);
57
+ if (!defaults.length)
58
+ return null;
59
+ if (current.length) {
60
+ const valid = new Set((await getTargetFields(client, baseUrl, targetObjId, userId, tenantKey)).map((f) => f.id));
61
+ const stale = current.some((c) => !valid.has(String(c.id)));
62
+ if (!stale)
63
+ return null; // 已有且都对得上 —— 是用户自己配的,不碰
64
+ }
65
+ await saveDisplayColumns(client, baseUrl, appId, objId, formId, fieldId, defaults);
66
+ return defaults.length;
67
+ }
68
+ //# sourceMappingURL=form-ebuilder-columns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-ebuilder-columns.js","sourceRoot":"","sources":["../../src/services/form-ebuilder-columns.ts"],"names":[],"mappings":"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"}
@@ -14,15 +14,27 @@ export interface LayoutComp {
14
14
  config?: {
15
15
  fieldId?: unknown;
16
16
  associatedId?: unknown;
17
+ subFormId?: unknown;
18
+ /** EXCEL 布局的位置信息:`nodeId` 是本组件自己的节点 id,`parent` 指向所属容器/明细表的 nodeId。 */
19
+ excel?: {
20
+ nodeId?: unknown;
21
+ parent?: unknown;
22
+ [k: string]: unknown;
23
+ };
17
24
  [k: string]: unknown;
18
25
  };
19
26
  fieldId?: unknown;
27
+ refBusinessId?: unknown;
20
28
  children?: LayoutComp[];
21
29
  [k: string]: unknown;
22
30
  }
23
- /** 一页布局。`comps` 是顶层组件,容器组件还有 `children`。 */
31
+ /** 一页布局。`comps` 是顶层组件,容器组件还有 `children`;`config.workbook` 是 EXCEL 版式数据。 */
24
32
  export interface LayoutPage {
25
33
  comps?: LayoutComp[];
34
+ config?: {
35
+ workbook?: Record<string, any>;
36
+ [k: string]: unknown;
37
+ };
26
38
  [k: string]: unknown;
27
39
  }
28
40
  /** 某个组件是否属于这些字段(本体或它的标题标签)。 */
@@ -32,6 +44,23 @@ export declare function compBelongsToField(comp: LayoutComp | undefined, fieldId
32
44
  * 返回摘掉的组件数 —— 调用方据此判断「布局里到底有没有这些字段」,避免误存一个没变的布局。
33
45
  */
34
46
  export declare function dropFieldComponents(pageLayouts: LayoutPage[], fieldIds: Iterable<string>): number;
47
+ /**
48
+ * 就地摘除 `pageLayouts` 里属于某张**明细表**的组件 —— 删明细表前的必经一步。
49
+ *
50
+ * 与删字段同一个成因(平台不允许删「仍被布局引用」的明细表),但组件不是按字段配对的:
51
+ *
52
+ * - **本体**:`type === 'DetailTable'`,靠 `config.associatedId`(或 `refBusinessId`)指向 subFormId。
53
+ * - **子字段组件**:明细字段的组件**不是**挂在明细表的 `children` 里,而是与它平级躺在同一层
54
+ * comps 中,靠 `config.excel.parent === 明细表组件的 config.excel.nodeId` 认亲。
55
+ * 每列还是「本体 + InternalTitle 标签」一对。
56
+ *
57
+ * 摘完之后**还要清 `config.workbook`**:明细表组件在里头占一张自己的 sheet(键就是组件 id),
58
+ * 表单那页 `Sheet1` 的 cells 里也有它的格子。服务端接受带着这些残留的保存(照存不误),
59
+ * 但会在设计器里留下幽灵 —— 所以要一并删掉。
60
+ *
61
+ * 返回摘掉的组件数;0 = 布局里没有这张明细表(调用方据此决定要不要继续)。
62
+ */
63
+ export declare function dropDetailTableComponents(pageLayouts: LayoutPage[], subFormId: string): number;
35
64
  /**
36
65
  * 清掉布局上会导致保存失败的派生键,并补 `formId`。
37
66
  *
@@ -1 +1 @@
1
- {"version":3,"file":"form-field-drop.d.ts","sourceRoot":"","sources":["../../src/services/form-field-drop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,gDAAgD;AAChD,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,4CAA4C;AAC5C,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,+BAA+B;AAC/B,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAK/F;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,CAqBjG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAMpG"}
1
+ {"version":3,"file":"form-field-drop.d.ts","sourceRoot":"","sources":["../../src/services/form-field-drop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,gDAAgD;AAChD,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE;QACP,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,uEAAuE;QACvE,KAAK,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE,OAAO,CAAC;YAAC,MAAM,CAAC,EAAE,OAAO,CAAC;YAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC;QACrE,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;KACtB,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAClE,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,+BAA+B;AAC/B,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAK/F;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,CAqBjG;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAwC9F;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAMpG"}
@@ -42,6 +42,66 @@ export function dropFieldComponents(pageLayouts, fieldIds) {
42
42
  }
43
43
  return removed;
44
44
  }
45
+ /**
46
+ * 就地摘除 `pageLayouts` 里属于某张**明细表**的组件 —— 删明细表前的必经一步。
47
+ *
48
+ * 与删字段同一个成因(平台不允许删「仍被布局引用」的明细表),但组件不是按字段配对的:
49
+ *
50
+ * - **本体**:`type === 'DetailTable'`,靠 `config.associatedId`(或 `refBusinessId`)指向 subFormId。
51
+ * - **子字段组件**:明细字段的组件**不是**挂在明细表的 `children` 里,而是与它平级躺在同一层
52
+ * comps 中,靠 `config.excel.parent === 明细表组件的 config.excel.nodeId` 认亲。
53
+ * 每列还是「本体 + InternalTitle 标签」一对。
54
+ *
55
+ * 摘完之后**还要清 `config.workbook`**:明细表组件在里头占一张自己的 sheet(键就是组件 id),
56
+ * 表单那页 `Sheet1` 的 cells 里也有它的格子。服务端接受带着这些残留的保存(照存不误),
57
+ * 但会在设计器里留下幽灵 —— 所以要一并删掉。
58
+ *
59
+ * 返回摘掉的组件数;0 = 布局里没有这张明细表(调用方据此决定要不要继续)。
60
+ */
61
+ export function dropDetailTableComponents(pageLayouts, subFormId) {
62
+ const wanted = String(subFormId);
63
+ let removed = 0;
64
+ for (const page of pageLayouts) {
65
+ if (!Array.isArray(page?.comps))
66
+ continue;
67
+ const isBody = (comp) => String(comp?.type ?? '') === 'DetailTable' &&
68
+ (String(comp?.config?.associatedId ?? '') === wanted ||
69
+ String(comp?.refBusinessId ?? '') === wanted ||
70
+ String(comp?.config?.subFormId ?? '') === wanted);
71
+ const bodies = page.comps.filter(isBody);
72
+ if (!bodies.length)
73
+ continue;
74
+ // 子字段组件与明细表平级,靠 excel.parent 指向明细表的 excel.nodeId 认亲
75
+ const nodes = new Set(bodies.map((b) => String(b?.config?.excel?.nodeId ?? '')).filter(Boolean));
76
+ page.comps = page.comps.filter((c) => {
77
+ if (isBody(c)) {
78
+ removed++;
79
+ return false;
80
+ }
81
+ if (nodes.has(String(c?.config?.excel?.parent ?? ''))) {
82
+ removed++;
83
+ return false;
84
+ }
85
+ return true;
86
+ });
87
+ // workbook 里还挂着明细表自己那张 sheet(键就是组件 id),表单那页的 cells 里也有它的格子
88
+ const workbook = page.config?.workbook;
89
+ if (!workbook)
90
+ continue;
91
+ for (const body of bodies) {
92
+ const compId = String(body.id ?? '');
93
+ if (!compId)
94
+ continue;
95
+ delete workbook[compId];
96
+ for (const sheet of Object.values(workbook)) {
97
+ if (!Array.isArray(sheet?.cells))
98
+ continue;
99
+ sheet.cells = sheet.cells.filter((cell) => String(cell?.style?.cellType?.comId ?? '') !== compId);
100
+ }
101
+ }
102
+ }
103
+ return removed;
104
+ }
45
105
  /**
46
106
  * 清掉布局上会导致保存失败的派生键,并补 `formId`。
47
107
  *
@@ -1 +1 @@
1
- {"version":3,"file":"form-field-drop.js","sourceRoot":"","sources":["../../src/services/form-field-drop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgBH,+BAA+B;AAC/B,MAAM,UAAU,kBAAkB,CAAC,IAA4B,EAAE,QAAqB;IACpF,MAAM,GAAG,GAAG,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,KAAK,EAAE,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACpF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAyB,EAAE,QAA0B;IACvF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,EAAE,IAAI,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,MAAM,IAAI,GAAG,CAAC,KAAmB,EAAgB,EAAE,CACjD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACjB,IAAI,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEL,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9D,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;gBAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAgC,UAAa,EAAE,MAAc;IAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IACnD,OAAO,GAAG,CAAC,iBAAiB,CAAC;IAC7B,OAAO,GAAG,CAAC,gBAAgB,CAAC;IAC5B,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACrC,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"form-field-drop.js","sourceRoot":"","sources":["../../src/services/form-field-drop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * 字段级属性补丁:编辑/新增字段时把命令行选项落到 jsonObj 上。
3
+ *
4
+ * 抽成独立模块的原因:这几条规则**都不只是「赋个值」**——哪些类型适用、取值边界、
5
+ * 一次改几个键,都是平台侧定死的。散在 add-field / edit-field 两处早晚会走样
6
+ * (历史上 `add-field` 与 `edit-field` 改类型是否补附加配置就不一致过)。
7
+ *
8
+ * 所有写入都走 `saveFormFieldNew`,而它是**全量覆盖**:调用方必须已经拿完整基底,
9
+ * 本模块只负责按选项打补丁,不负责读回。
10
+ */
11
+ /**
12
+ * **字段定义里没有 `maxLen` 这个属性**的类型。
13
+ *
14
+ * 这份名单不是猜的,来源是本仓 `add-field` 各类型分支里显式 `delete jsonObj.maxLen` 的那几处
15
+ * (IDCard / Date / DateTime / City / EInvoice / 下拉多选)—— 那是按平台实际结构定下来的。
16
+ * 对它们设长度会被平台丢弃或写进脏属性,所以直接拒。
17
+ */
18
+ export declare const NO_MAX_LEN_TYPES: readonly ["IDCard", "Date", "DateTime", "Time", "City", "EInvoice", "SelectMultiple"];
19
+ /** 支持「默认值」的类型(文本类写 content,数字类同键)。 */
20
+ export declare const DEFAULT_VALUE_TYPES: readonly ["Text", "TextArea", "Number", "Money"];
21
+ export interface FieldPatchOpts {
22
+ /** 文本最大长度(字符串形式,来自命令行)。 */
23
+ maxLen?: string;
24
+ /** 默认值。 */
25
+ defaultValue?: string;
26
+ /** 清空默认值。 */
27
+ clearDefault?: boolean;
28
+ /** 数据库字段名(同时写 dataKey 与 columnName)。 */
29
+ dataKey?: string;
30
+ /** 字段描述。 */
31
+ desc?: string;
32
+ }
33
+ export interface PatchOutcome {
34
+ /** 实际改动的键,供调用方打印。 */
35
+ applied: string[];
36
+ warnings: string[];
37
+ errors: string[];
38
+ }
39
+ /**
40
+ * 平台接口本身比设计器更宽容:`maxLen` 到 10000 都照收(65535 会被拒,
41
+ * 但报的是「表单字段已超限制,不能继续新增字段」——指的是加字段数,与长度无关)。
42
+ * 设计器的输入框上限定在 999,超过 999 命令行能写进去、设计器里编辑却不方便,
43
+ * 所以**只告警不拦**:不把「编辑器不便」伪造成「平台不允许」。
44
+ */
45
+ export declare const MAX_LEN_UI_HINT = 999;
46
+ export declare function applyFieldPatches(jsonObj: Record<string, any>, opts: FieldPatchOpts): PatchOutcome;
47
+ //# sourceMappingURL=form-field-patch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-field-patch.d.ts","sourceRoot":"","sources":["../../src/services/form-field-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,uFAEnB,CAAC;AAEX,sCAAsC;AACtC,eAAO,MAAM,mBAAmB,kDAAmD,CAAC;AAEpF,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa;IACb,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,qBAAqB;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,cAAc,GACjD,YAAY,CA0Dd"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * 字段级属性补丁:编辑/新增字段时把命令行选项落到 jsonObj 上。
3
+ *
4
+ * 抽成独立模块的原因:这几条规则**都不只是「赋个值」**——哪些类型适用、取值边界、
5
+ * 一次改几个键,都是平台侧定死的。散在 add-field / edit-field 两处早晚会走样
6
+ * (历史上 `add-field` 与 `edit-field` 改类型是否补附加配置就不一致过)。
7
+ *
8
+ * 所有写入都走 `saveFormFieldNew`,而它是**全量覆盖**:调用方必须已经拿完整基底,
9
+ * 本模块只负责按选项打补丁,不负责读回。
10
+ */
11
+ /**
12
+ * **字段定义里没有 `maxLen` 这个属性**的类型。
13
+ *
14
+ * 这份名单不是猜的,来源是本仓 `add-field` 各类型分支里显式 `delete jsonObj.maxLen` 的那几处
15
+ * (IDCard / Date / DateTime / City / EInvoice / 下拉多选)—— 那是按平台实际结构定下来的。
16
+ * 对它们设长度会被平台丢弃或写进脏属性,所以直接拒。
17
+ */
18
+ export const NO_MAX_LEN_TYPES = [
19
+ 'IDCard', 'Date', 'DateTime', 'Time', 'City', 'EInvoice', 'SelectMultiple',
20
+ ];
21
+ /** 支持「默认值」的类型(文本类写 content,数字类同键)。 */
22
+ export const DEFAULT_VALUE_TYPES = ['Text', 'TextArea', 'Number', 'Money'];
23
+ /**
24
+ * 平台接口本身比设计器更宽容:`maxLen` 到 10000 都照收(65535 会被拒,
25
+ * 但报的是「表单字段已超限制,不能继续新增字段」——指的是加字段数,与长度无关)。
26
+ * 设计器的输入框上限定在 999,超过 999 命令行能写进去、设计器里编辑却不方便,
27
+ * 所以**只告警不拦**:不把「编辑器不便」伪造成「平台不允许」。
28
+ */
29
+ export const MAX_LEN_UI_HINT = 999;
30
+ export function applyFieldPatches(jsonObj, opts) {
31
+ const applied = [];
32
+ const warnings = [];
33
+ const errors = [];
34
+ const type = String(jsonObj.type || '');
35
+ // ── 最大长度 ────────────────────────────────────────────
36
+ if (opts.maxLen !== undefined) {
37
+ if (NO_MAX_LEN_TYPES.includes(type)) {
38
+ errors.push(`${type} 类型的字段定义里没有「最大长度」这项属性,--max-len 不适用`);
39
+ }
40
+ else {
41
+ const n = Number(opts.maxLen);
42
+ if (!Number.isInteger(n) || n <= 0) {
43
+ errors.push(`--max-len 必须是正整数,收到 "${opts.maxLen}"`);
44
+ }
45
+ else {
46
+ jsonObj.maxLen = n;
47
+ applied.push(`maxLen=${n}`);
48
+ if (n > MAX_LEN_UI_HINT) {
49
+ warnings.push(`最大长度 ${n} 超过设计器输入框上限 ${MAX_LEN_UI_HINT},接口接受,但在表单设计器里编辑该字段时会不便`);
50
+ }
51
+ }
52
+ }
53
+ }
54
+ // ── 默认值 ──────────────────────────────────────────────
55
+ if (opts.clearDefault || opts.defaultValue !== undefined) {
56
+ if (!DEFAULT_VALUE_TYPES.includes(type)) {
57
+ errors.push(`默认值只适用于 ${DEFAULT_VALUE_TYPES.join(' / ')},当前字段是 ${type || '(未知类型)'}`);
58
+ }
59
+ else {
60
+ const val = opts.clearDefault ? '' : String(opts.defaultValue ?? '');
61
+ // 内容与开关必须**一起**写:只改 content 不置 isDefault,平台不认它是默认值
62
+ jsonObj.content = val;
63
+ jsonObj.isDefault = !opts.clearDefault && val !== '';
64
+ applied.push(opts.clearDefault ? '默认值已清空' : `默认值=${val}`);
65
+ }
66
+ }
67
+ // ── 数据库字段名 ────────────────────────────────────────
68
+ if (opts.dataKey !== undefined) {
69
+ const k = opts.dataKey.trim();
70
+ if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(k)) {
71
+ errors.push(`--data-key 只能由字母、数字、下划线组成且不以数字开头,收到 "${opts.dataKey}"`);
72
+ }
73
+ else {
74
+ // dataKey 与 columnName 是同一个物理列名的两个写法,**必须一起改**,
75
+ // 只改一个会留下两个不一致的名字。
76
+ jsonObj.dataKey = k;
77
+ jsonObj.columnName = k;
78
+ applied.push(`dataKey/columnName=${k}`);
79
+ }
80
+ }
81
+ // ── 字段描述 ────────────────────────────────────────────
82
+ if (opts.desc !== undefined) {
83
+ jsonObj.describe = opts.desc;
84
+ applied.push(`describe=${opts.desc}`);
85
+ }
86
+ return { applied, warnings, errors };
87
+ }
88
+ //# sourceMappingURL=form-field-patch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-field-patch.js","sourceRoot":"","sources":["../../src/services/form-field-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB;CAClE,CAAC;AAEX,sCAAsC;AACtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAsBpF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AAEnC,MAAM,UAAU,iBAAiB,CAC/B,OAA4B,EAAE,IAAoB;IAElD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAExC,uDAAuD;IACvD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAK,gBAAsC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3D,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,qCAAqC,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,CAAC,GAAG,eAAe,EAAE,CAAC;oBACxB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,eAAe,yBAAyB,CAAC,CAAC;gBAClF,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACzD,IAAI,CAAE,mBAAyC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,WAAW,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,QAAQ,EAAE,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YACrE,mDAAmD;YACnD,OAAO,CAAC,OAAO,GAAG,GAAG,CAAC;YACtB,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,GAAG,KAAK,EAAE,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,gDAAgD;YAChD,mBAAmB;YACnB,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;YACpB,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC"}
@@ -28,6 +28,7 @@ export interface NListConfig {
28
28
  export declare function buildNListConfig(client: ApiClient, baseUrl: string, objId: string, appId: string, listId: string, template: NListTemplateRow[], formId: string, existingConfig?: Record<string, any> | null): Promise<{
29
29
  config: Record<string, any>;
30
30
  errors: string[];
31
+ warnings: string[];
31
32
  }>;
32
33
  /** 读取配置后,用 fieldUsage 的完整元数据回填 cardLayout 字段 */
33
34
  export declare function enrichCardLayoutFields(client: ApiClient, baseUrl: string, appId: string, objId: string, listId: string): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"form-nlist.d.ts","sourceRoot":"","sources":["../../src/services/form-nlist.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,oBAAoB;AACpB,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,EAAE,CAAC;AAEnD,eAAe;AACf,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B;AAkED,wBAAwB;AACxB,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAC1C,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAuK5D;AAED,gDAAgD;AAChD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2D7C;AAED,uEAAuE;AACvE,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAQrC;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GACxC,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA2BrE"}
1
+ {"version":3,"file":"form-nlist.d.ts","sourceRoot":"","sources":["../../src/services/form-nlist.ts"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGnD,oBAAoB;AACpB,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,EAAE,CAAC;AAEnD,eAAe;AACf,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B;AAkED,wBAAwB;AACxB,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAC1C,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA+LhF;AAED,gDAAgD;AAChD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2D7C;AAED,uEAAuE;AACvE,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,CAQrC;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GACxC,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA2BrE"}
@@ -21,7 +21,9 @@
21
21
  * 每项可含:
22
22
  * - fieldId 真实字段 ID(从表单读取元数据)
23
23
  * - text 显示文本(字段名或自定义文本)
24
- * - html 自定义文本的 HTML content(无 fieldId 时必填,视为自定义文本)
24
+ * - html 自定义文本的 HTML content(无 fieldId 时必填,视为自定义文本)。
25
+ * 里面写 `{{字段名}}` 或 `{{fieldId}}` 会展开成平台的字段引用标记
26
+ * (富文本里「插入表单字段」的等价物,见 services/rich-text.ts)
25
27
  * - width 网格宽度(列数,缺省 1)
26
28
  * - height 网格高度(行数,缺省 1)
27
29
  * - style 样式对象 {color, fontSize, ...}
@@ -34,6 +36,7 @@
34
36
  * - padding 内边距
35
37
  */
36
38
  import { createHash, randomUUID } from 'node:crypto';
39
+ import { expandFieldRefs, auditFieldRefs } from './rich-text.js';
37
40
  /** 生成短 UID */
38
41
  function shortUid() {
39
42
  return randomUUID().replace(/-/g, '').slice(0, 32);
@@ -89,7 +92,11 @@ async function getFormFieldMap(client, baseUrl, objId, formId, existingConfig) {
89
92
  /** 从模板生成完整的 NList 配置 */
90
93
  export async function buildNListConfig(client, baseUrl, objId, appId, listId, template, formId, existingConfig) {
91
94
  const errors = [];
95
+ const warnings = [];
92
96
  const fieldMap = await getFormFieldMap(client, baseUrl, objId, formId, existingConfig);
97
+ // 自定义文本里 `{{字段名}}` 的展开依据;同一字段在 fieldMap 里有 id/fieldId 两个键,去重交给 expandFieldRefs
98
+ const fieldRefSources = [...fieldMap.values()];
99
+ const knownFieldIds = new Set(fieldRefSources.map((f) => String(f.fieldId || f.id || '')).filter(Boolean));
93
100
  // 生成 listField 和 cardLayout.grid
94
101
  const listField = [];
95
102
  // 构建 cardLayout.grid:3 层嵌套 grid[0][row][item]
@@ -110,8 +117,26 @@ export async function buildNListConfig(client, baseUrl, objId, appId, listId, te
110
117
  x += w;
111
118
  continue;
112
119
  }
120
+ // 自定义文本:把 `{{字段名}}` 展开成平台的字段引用标记(见 services/rich-text.ts)。
121
+ // 展开失败就不继续,避免把半截 HTML 写进视图。
122
+ let html = item.html;
123
+ if (isCustom) {
124
+ const expanded = expandFieldRefs(String(item.html), objId, fieldRefSources);
125
+ for (const e of expanded.errors)
126
+ errors.push(`行 ${y} 列 ${x}:${e}`);
127
+ for (const w2 of expanded.warnings)
128
+ warnings.push(`行 ${y} 列 ${x}:${w2}`);
129
+ if (expanded.errors.length) {
130
+ x += w;
131
+ continue;
132
+ }
133
+ html = expanded.html;
134
+ // 手写 data-val 的场景也查一遍,把「静默显示不出值」提前说出来
135
+ for (const w2 of auditFieldRefs(html, knownFieldIds))
136
+ warnings.push(`行 ${y} 列 ${x}:${w2}`);
137
+ }
113
138
  // 生成 uid
114
- const uidSeed = isCustom ? `custom_${y}_${x}_${item.html}` : `field_${item.fieldId}`;
139
+ const uidSeed = isCustom ? `custom_${y}_${x}_${html}` : `field_${item.fieldId}`;
115
140
  let uid = stableUid(uidSeed);
116
141
  // 避免 uid 冲突
117
142
  while (usedUids.has(uid)) {
@@ -123,7 +148,7 @@ export async function buildNListConfig(client, baseUrl, objId, appId, listId, te
123
148
  listField.push({
124
149
  id: '-1', name: 'custom_text', objId: '-1', text: item.text || '自定义文本',
125
150
  mainPrimaryKey: false, uid, type: 'string', compType: 'Text',
126
- content: item.html, frontField: true, fieldVersion: 1,
151
+ content: html, frontField: true, fieldVersion: 1,
127
152
  });
128
153
  }
129
154
  else {
@@ -165,8 +190,10 @@ export async function buildNListConfig(client, baseUrl, objId, appId, listId, te
165
190
  fieldConfig.type = 'string';
166
191
  fieldConfig.objId = '-1';
167
192
  fieldConfig.mainPrimaryKey = false;
168
- fieldConfig.content = item.html;
193
+ fieldConfig.content = html;
169
194
  fieldConfig.frontField = true;
195
+ // 平台的 cardLayout 自定义文本格还带 text,缺了虽然能渲染但回读会少一项
196
+ fieldConfig.text = item.text || '自定义文本';
170
197
  }
171
198
  else {
172
199
  const ff = fieldMap.get(String(item.fieldId));
@@ -257,7 +284,7 @@ export async function buildNListConfig(client, baseUrl, objId, appId, listId, te
257
284
  { id: 'd294a2', showType: 'FONTBTN', btnFrom: 'DEFAULT', showContent: '下一页', event: { to: 'NEXTPAGE', value: '快捷翻页:下一页' }, isOpen: true, showOrder: 3 },
258
285
  ],
259
286
  };
260
- return { config, errors };
287
+ return { config, errors, warnings };
261
288
  }
262
289
  /** 读取配置后,用 fieldUsage 的完整元数据回填 cardLayout 字段 */
263
290
  export async function enrichCardLayoutFields(client, baseUrl, appId, objId, listId) {
@@ -1 +1 @@
1
- {"version":3,"file":"form-nlist.js","sourceRoot":"","sources":["../../src/services/form-nlist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-nlist.js","sourceRoot":"","sources":["../../src/services/form-nlist.ts"],"names":[],"mappings":"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"}