weaver-e10-builder 1.6.13 → 1.6.15

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 (213) hide show
  1. package/dist/cli-register.d.ts.map +1 -1
  2. package/dist/cli-register.js +14 -2
  3. package/dist/cli-register.js.map +1 -1
  4. package/dist/commands/actionflow.d.ts.map +1 -1
  5. package/dist/commands/actionflow.js +4 -0
  6. package/dist/commands/actionflow.js.map +1 -1
  7. package/dist/commands/designer-event.d.ts +3 -0
  8. package/dist/commands/designer-event.d.ts.map +1 -0
  9. package/dist/commands/designer-event.js +106 -0
  10. package/dist/commands/designer-event.js.map +1 -0
  11. package/dist/commands/designer-source.d.ts +3 -0
  12. package/dist/commands/designer-source.d.ts.map +1 -0
  13. package/dist/commands/designer-source.js +51 -0
  14. package/dist/commands/designer-source.js.map +1 -0
  15. package/dist/commands/form-browser-scope-rules.d.ts +2 -1
  16. package/dist/commands/form-browser-scope-rules.d.ts.map +1 -1
  17. package/dist/commands/form-browser-scope-rules.js +8 -4
  18. package/dist/commands/form-browser-scope-rules.js.map +1 -1
  19. package/dist/commands/form-browser-scope-tree.js +1 -1
  20. package/dist/commands/form-browser-scope-tree.js.map +1 -1
  21. package/dist/commands/form-field-linkage.d.ts.map +1 -1
  22. package/dist/commands/form-field-linkage.js +6 -11
  23. package/dist/commands/form-field-linkage.js.map +1 -1
  24. package/dist/commands/form-layout-detail-settings.d.ts +3 -0
  25. package/dist/commands/form-layout-detail-settings.d.ts.map +1 -0
  26. package/dist/commands/form-layout-detail-settings.js +36 -0
  27. package/dist/commands/form-layout-detail-settings.js.map +1 -0
  28. package/dist/commands/form-list-columns.d.ts.map +1 -1
  29. package/dist/commands/form-list-columns.js +178 -5
  30. package/dist/commands/form-list-columns.js.map +1 -1
  31. package/dist/commands/form-list-config.d.ts.map +1 -1
  32. package/dist/commands/form-list-config.js +81 -5
  33. package/dist/commands/form-list-config.js.map +1 -1
  34. package/dist/commands/form-list-event.d.ts.map +1 -1
  35. package/dist/commands/form-list-event.js +2 -1
  36. package/dist/commands/form-list-event.js.map +1 -1
  37. package/dist/commands/form-list-hierarchy.d.ts.map +1 -1
  38. package/dist/commands/form-list-hierarchy.js +2 -1
  39. package/dist/commands/form-list-hierarchy.js.map +1 -1
  40. package/dist/commands/form-list-utils.d.ts.map +1 -1
  41. package/dist/commands/form-list-utils.js +4 -3
  42. package/dist/commands/form-list-utils.js.map +1 -1
  43. package/dist/commands/form-list.d.ts.map +1 -1
  44. package/dist/commands/form-list.js +2 -1
  45. package/dist/commands/form-list.js.map +1 -1
  46. package/dist/commands/form-nlist.d.ts.map +1 -1
  47. package/dist/commands/form-nlist.js +77 -0
  48. package/dist/commands/form-nlist.js.map +1 -1
  49. package/dist/commands/form-permission.d.ts.map +1 -1
  50. package/dist/commands/form-permission.js +743 -77
  51. package/dist/commands/form-permission.js.map +1 -1
  52. package/dist/commands/page-combination.d.ts +3 -0
  53. package/dist/commands/page-combination.d.ts.map +1 -0
  54. package/dist/commands/page-combination.js +86 -0
  55. package/dist/commands/page-combination.js.map +1 -0
  56. package/dist/commands/page-permission.d.ts +3 -0
  57. package/dist/commands/page-permission.d.ts.map +1 -0
  58. package/dist/commands/page-permission.js +46 -0
  59. package/dist/commands/page-permission.js.map +1 -0
  60. package/dist/commands/role.d.ts.map +1 -1
  61. package/dist/commands/role.js +3 -2
  62. package/dist/commands/role.js.map +1 -1
  63. package/dist/services/actionflow/components/action_eb_update.d.ts.map +1 -1
  64. package/dist/services/actionflow/components/action_eb_update.js +7 -0
  65. package/dist/services/actionflow/components/action_eb_update.js.map +1 -1
  66. package/dist/services/actionflow/components/action_eb_update_compiler.js +4 -4
  67. package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
  68. package/dist/services/actionflow/components/enquiry_form.js +1 -1
  69. package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
  70. package/dist/services/actionflow/components/form_data_builder.d.ts.map +1 -1
  71. package/dist/services/actionflow/components/form_data_builder.js +131 -4
  72. package/dist/services/actionflow/components/form_data_builder.js.map +1 -1
  73. package/dist/services/actionflow/components/multiple_execution.js +7 -7
  74. package/dist/services/actionflow/components/multiple_execution.js.map +1 -1
  75. package/dist/services/actionflow/components/output.d.ts.map +1 -1
  76. package/dist/services/actionflow/components/output.js +4 -1
  77. package/dist/services/actionflow/components/output.js.map +1 -1
  78. package/dist/services/actionflow/components/send_message.d.ts.map +1 -1
  79. package/dist/services/actionflow/components/send_message.js +2 -1
  80. package/dist/services/actionflow/components/send_message.js.map +1 -1
  81. package/dist/services/actionflow/context_discovery.d.ts +2 -0
  82. package/dist/services/actionflow/context_discovery.d.ts.map +1 -1
  83. package/dist/services/actionflow/context_discovery.js +32 -4
  84. package/dist/services/actionflow/context_discovery.js.map +1 -1
  85. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  86. package/dist/services/actionflow/context_preflight.js +33 -5
  87. package/dist/services/actionflow/context_preflight.js.map +1 -1
  88. package/dist/services/actionflow/filter_rules.d.ts.map +1 -1
  89. package/dist/services/actionflow/filter_rules.js +3 -2
  90. package/dist/services/actionflow/filter_rules.js.map +1 -1
  91. package/dist/services/actionflow/formula_service.d.ts +2 -0
  92. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  93. package/dist/services/actionflow/formula_service.js +20 -15
  94. package/dist/services/actionflow/formula_service.js.map +1 -1
  95. package/dist/services/actionflow/preflight_service.d.ts +8 -0
  96. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  97. package/dist/services/actionflow/preflight_service.js +89 -15
  98. package/dist/services/actionflow/preflight_service.js.map +1 -1
  99. package/dist/services/actionflow/readback_verifier.d.ts.map +1 -1
  100. package/dist/services/actionflow/readback_verifier.js +115 -0
  101. package/dist/services/actionflow/readback_verifier.js.map +1 -1
  102. package/dist/services/actionflow/workflow_compiler.d.ts +1 -1
  103. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  104. package/dist/services/actionflow/workflow_compiler.js +151 -34
  105. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  106. package/dist/services/designer-event.d.ts +54 -0
  107. package/dist/services/designer-event.d.ts.map +1 -0
  108. package/dist/services/designer-event.js +312 -0
  109. package/dist/services/designer-event.js.map +1 -0
  110. package/dist/services/designer-source.d.ts +46 -0
  111. package/dist/services/designer-source.d.ts.map +1 -0
  112. package/dist/services/designer-source.js +145 -0
  113. package/dist/services/designer-source.js.map +1 -0
  114. package/dist/services/field-identity.d.ts +3 -0
  115. package/dist/services/field-identity.d.ts.map +1 -0
  116. package/dist/services/field-identity.js +8 -0
  117. package/dist/services/field-identity.js.map +1 -0
  118. package/dist/services/form-layout-detail-advanced.d.ts +10 -0
  119. package/dist/services/form-layout-detail-advanced.d.ts.map +1 -0
  120. package/dist/services/form-layout-detail-advanced.js +134 -0
  121. package/dist/services/form-layout-detail-advanced.js.map +1 -0
  122. package/dist/services/form-layout-detail-settings.d.ts +151 -0
  123. package/dist/services/form-layout-detail-settings.d.ts.map +1 -0
  124. package/dist/services/form-layout-detail-settings.js +131 -0
  125. package/dist/services/form-layout-detail-settings.js.map +1 -0
  126. package/dist/services/form-list-columns.d.ts.map +1 -1
  127. package/dist/services/form-list-columns.js +2 -1
  128. package/dist/services/form-list-columns.js.map +1 -1
  129. package/dist/services/form-list-config.d.ts +36 -1
  130. package/dist/services/form-list-config.d.ts.map +1 -1
  131. package/dist/services/form-list-config.js +252 -23
  132. package/dist/services/form-list-config.js.map +1 -1
  133. package/dist/services/form-list-fields.d.ts +3 -1
  134. package/dist/services/form-list-fields.d.ts.map +1 -1
  135. package/dist/services/form-list-fields.js +95 -16
  136. package/dist/services/form-list-fields.js.map +1 -1
  137. package/dist/services/form-list-search-group.d.ts.map +1 -1
  138. package/dist/services/form-list-search-group.js +3 -2
  139. package/dist/services/form-list-search-group.js.map +1 -1
  140. package/dist/services/form-list-search.d.ts.map +1 -1
  141. package/dist/services/form-list-search.js +3 -13
  142. package/dist/services/form-list-search.js.map +1 -1
  143. package/dist/services/form-list-table-fields.d.ts +58 -0
  144. package/dist/services/form-list-table-fields.d.ts.map +1 -0
  145. package/dist/services/form-list-table-fields.js +265 -0
  146. package/dist/services/form-list-table-fields.js.map +1 -0
  147. package/dist/services/form-nlist-field-attrs.d.ts +43 -0
  148. package/dist/services/form-nlist-field-attrs.d.ts.map +1 -0
  149. package/dist/services/form-nlist-field-attrs.js +170 -0
  150. package/dist/services/form-nlist-field-attrs.js.map +1 -0
  151. package/dist/services/form-nlist.d.ts.map +1 -1
  152. package/dist/services/form-nlist.js +4 -3
  153. package/dist/services/form-nlist.js.map +1 -1
  154. package/dist/services/form-permission-edit.d.ts +115 -0
  155. package/dist/services/form-permission-edit.d.ts.map +1 -0
  156. package/dist/services/form-permission-edit.js +552 -0
  157. package/dist/services/form-permission-edit.js.map +1 -0
  158. package/dist/services/matrix-condition.d.ts +0 -30
  159. package/dist/services/matrix-condition.d.ts.map +1 -1
  160. package/dist/services/matrix-condition.js +3 -2
  161. package/dist/services/matrix-condition.js.map +1 -1
  162. package/dist/services/page-combination.d.ts +58 -0
  163. package/dist/services/page-combination.d.ts.map +1 -0
  164. package/dist/services/page-combination.js +296 -0
  165. package/dist/services/page-combination.js.map +1 -0
  166. package/dist/services/page-permission.d.ts +74 -0
  167. package/dist/services/page-permission.d.ts.map +1 -0
  168. package/dist/services/page-permission.js +287 -0
  169. package/dist/services/page-permission.js.map +1 -0
  170. package/dist/services/report/verify.d.ts.map +1 -1
  171. package/dist/services/report/verify.js +1 -7
  172. package/dist/services/report/verify.js.map +1 -1
  173. package/dist/services/role-function-permission.d.ts +8 -1
  174. package/dist/services/role-function-permission.d.ts.map +1 -1
  175. package/dist/services/role-function-permission.js +23 -8
  176. package/dist/services/role-function-permission.js.map +1 -1
  177. package/package.json +3 -3
  178. package/skill-docs/SKILL.md +14 -4
  179. package/skill-docs/_catalog.md +7 -0
  180. package/skill-docs/actionflows/SKILL.md +7 -3
  181. package/skill-docs/actionflows/references/components/ebuilder/ActionEbAdd.md +5 -1
  182. package/skill-docs/actionflows/references/components/ebuilder/ActionEbUpdate.md +5 -1
  183. package/skill-docs/actionflows/references/components/ebuilder/EnquiryForm.md +2 -0
  184. package/skill-docs/actionflows/references/components/personnel/HrmEmployeeUpdate.md +1 -0
  185. package/skill-docs/actionflows/references/components/personnel/PersonnelOnboarding.md +1 -0
  186. package/skill-docs/actionflows/references/trigger_runtime_notes.md +1 -1
  187. package/skill-docs/references/common/ref-cli-commands.md +22 -7
  188. package/skill-docs/references/ebuilder-designer/events/actions-integration.md +88 -0
  189. package/skill-docs/references/ebuilder-designer/events/actions-interaction.md +108 -0
  190. package/skill-docs/references/ebuilder-designer/events/guide-events.md +57 -0
  191. package/skill-docs/references/ebuilder-designer/guide-designer.md +296 -288
  192. package/skill-docs/references/ebuilder-designer/guide-page-combination.md +142 -0
  193. package/skill-docs/references/ebuilder-designer/guide-page-permission.md +145 -0
  194. package/skill-docs/references/ebuilder-designer/page-source/page-source-guide.md +129 -0
  195. package/skill-docs/references/ebuilder-designer/page-source/sdk-chart.md +49 -0
  196. package/skill-docs/references/ebuilder-designer/page-source/sdk-coverage.json +372 -0
  197. package/skill-docs/references/ebuilder-designer/page-source/sdk-date.md +54 -0
  198. package/skill-docs/references/ebuilder-designer/page-source/sdk-dialogs.md +279 -0
  199. package/skill-docs/references/ebuilder-designer/page-source/sdk-form.md +255 -0
  200. package/skill-docs/references/ebuilder-designer/page-source/sdk-foundations.md +401 -0
  201. package/skill-docs/references/ebuilder-designer/page-source/sdk-index.md +34 -0
  202. package/skill-docs/references/ebuilder-designer/page-source/sdk-list.md +297 -0
  203. package/skill-docs/references/ebuilder-designer/page-source/sdk-native.md +193 -0
  204. package/skill-docs/references/ebuilder-designer/page-source/sdk-navigation.md +156 -0
  205. package/skill-docs/references/ebuilder-designer/page-source/sdk-other.md +242 -0
  206. package/skill-docs/references/ebuilder-designer/page-source/sdk-refresh.md +132 -0
  207. package/skill-docs/references/ebuilder-designer/page-source/sdk-sql.md +39 -0
  208. package/skill-docs/references/form/guide-form-permission.md +185 -0
  209. package/skill-docs/references/form/guide-form-view.md +725 -624
  210. package/skill-docs/references/form/layout/detail-advanced.md +124 -0
  211. package/skill-docs/references/form/layout/detail-settings.md +106 -0
  212. package/skill-docs/references/form/layout/layout-overview.md +2 -0
  213. package/skill-docs/references/hrm/guide-role.md +4 -4
@@ -0,0 +1,287 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { parseLayoutJson } from './form-layout-source/json.js';
3
+ import { ebFormValueFields, matrixValueFields } from './form-permission-archive.js';
4
+ const SUBJECTS = {
5
+ resource: ['USER', 1, '人员'], department: ['DEPT', 2, '部门'], subcompany: ['SUBCOMPANY', 5, '分部'],
6
+ role: ['ROLE', 10, '角色'], position: ['POSITION', 1311, '岗位'], all: ['ALL', 11, '所有人'], allExternal: ['ALLEXTERNAL', 1101, '所有外部人'],
7
+ };
8
+ function check(ok, message) { if (!ok)
9
+ throw new Error(message); }
10
+ const copy = (v) => structuredClone(v);
11
+ const same = (a, b) => JSON.stringify(stable(a)) === JSON.stringify(stable(b));
12
+ function stable(v) { return Array.isArray(v) ? v.map(stable) : v && typeof v === 'object' ? Object.fromEntries(Object.keys(v).sort().map(k => [k, stable(v[k])])) : v; }
13
+ function data(r, label) { check(r?.code === 200 && r.status === true && r.fail !== true && r.data !== false && r.data !== undefined, `${label}失败:${r?.msg || '业务响应无效'}`); return r.data; }
14
+ function object(v, keys, name) { check(v && typeof v === 'object' && !Array.isArray(v), `${name}必须是对象`); check(Object.keys(v).every(k => keys.includes(k)), `${name}包含未知属性`); }
15
+ function parse(v) { return typeof v === 'string' && v ? parseLayoutJson(v) : v; }
16
+ const temp = () => `temp_${randomUUID().replace(/-/g, '')}`;
17
+ export async function readPagePermission(client, base, pageId) {
18
+ check(/^[1-9]\d*$/.test(pageId), 'pageId 必须为正整数字符串');
19
+ const page = data(await client.get(`${base}/api/ebuilder/page/external/getById?id=${pageId}`), '读取页面权限');
20
+ check(String(page.id) === pageId, '页面身份不一致');
21
+ for (const key of ['viewRight', 'disableRight', 'matrixRight', 'viewPermissionGroup'])
22
+ check(Array.isArray(page[key]), `页面缺少完整 ${key},停止写入`);
23
+ return page;
24
+ }
25
+ export async function pagePermissionSchema(client, base) {
26
+ const form = data(await client.post(`${base}/api/app/ebuilder/page/component/data/permission/form/query`, {
27
+ browserMultiple: true, sourceId: '', permissionId: 'ebdcomm_view', sourceType: 1,
28
+ }), '读取权限配置表');
29
+ check(form?.items?.objType?.options, '权限表单缺少对象类型');
30
+ return { form, security: data(await client.get(`${base}/api/hrm/common/querySecelInfo`), '读取安全级别能力'),
31
+ disableAll: await (async () => { const r = await client.get(`${base}/api/ebuilder/coms/authority/checkDisableAll`); check(r?.code === 200 && r.status === true && typeof r.data === 'boolean', '读取禁用全体能力失败'); return r.data; })() };
32
+ }
33
+ /** Match authorization semantics, not server assigned keys, UI names or ordering. */
34
+ export function pagePermissionSemantics(page) {
35
+ const common = (row) => {
36
+ const type = row.targetType || SUBJECTS[row.objType]?.[0];
37
+ const level = String(row.role_level ?? row._roleLevel ?? '');
38
+ const position = String(row.position_level ?? '');
39
+ return { type, id: ['ALL', 'ALLEXTERNAL'].includes(type) ? '0' : String(row.targetId ?? row.id),
40
+ role: type === 'ROLE' ? level : '', position: type === 'POSITION' ? position : '',
41
+ departments: position === '3' ? (row.position_level_department || []).map((x) => String(x.id ?? x)).sort() : [],
42
+ subcompanies: position === '2' ? (row.position_level_subcompany || []).map((x) => String(x.id ?? x)).sort() : [],
43
+ attributes: [...(row.department_attribute || [])].sort(), positionAttributes: [...(row.position_attribute || [])].sort(),
44
+ min: Number(row.seclevel?.min ?? row.targetMinSecLevel), max: Number(row.seclevel?.max ?? row.targetMaxSecLevel) };
45
+ };
46
+ const tree = (v) => v?.isParent ? { relationship: String(v.relationship), datas: (v.datas || []).map(tree) } :
47
+ v ? { field: v.id, compType: v.compType, conditions: v.conditions } : null;
48
+ const matrix = (row) => ({ source: row.selectedType, id: String(row.dataid?.[0]?.id),
49
+ values: (parse(row.matrixValueRelation) || []).map((v) => ({ field: String(v.valueId), relation: v.type, type: v.valueType })),
50
+ condition: row.matrixConditionData ? tree(parse(row.matrixConditionData)) : null });
51
+ const sorted = (rows) => rows.map(stable).sort((a, b) => JSON.stringify(a).localeCompare(JSON.stringify(b)));
52
+ return { common: sorted(page.viewRight.map(common)), disabled: sorted(page.disableRight.map(common)),
53
+ matrix: sorted(page.matrixRight.map(matrix)), groups: stable(page.viewPermissionGroup) };
54
+ }
55
+ async function subject(client, base, type, id) {
56
+ const r = data(await client.post(`${base}/api/ebuilder/page/common/browser/destData/${type}`, {
57
+ browserMultiple: true, selectIds: id, selectedData: [], types: [],
58
+ }), '读取权限对象');
59
+ const rows = Array.isArray(r) ? r : r?.data;
60
+ check(Array.isArray(rows), '对象浏览返回缺少列表');
61
+ const matches = rows.filter((x) => String(x.id) === id);
62
+ check(matches.length === 1, `权限对象 ${type}:${id} 未唯一匹配`);
63
+ return matches[0];
64
+ }
65
+ export async function compilePageCommon(client, base, pageId, scope, input, previous) {
66
+ object(input, ['type', 'id', 'roleLevel', 'positionLevel', 'subcompanies', 'departments', 'attributes', 'positionAttributes', 'security'], '通用权限');
67
+ const schema = await pagePermissionSchema(client, base);
68
+ const type = input.type || previous?.objType;
69
+ const descriptor = SUBJECTS[type];
70
+ check(descriptor && schema.form.items.objType.options.some((o) => o.id === type && !o.disabled), '当前页面不支持该主体类型');
71
+ check(scope !== 'disabled' || !['all', 'allExternal'].includes(type), '禁用范围不接受全体对象');
72
+ check(!previous || previous.objType === type, '修改主体类型请删除原条目后新增');
73
+ const id = ['all', 'allExternal'].includes(type) ? '0' : String(input.id || previous?.targetId || '');
74
+ check(/^\d+$/.test(id), '权限对象需要真实 ID');
75
+ const item = ['all', 'allExternal'].includes(type) ? { id: '0', content: descriptor[2], name: descriptor[2] } : await subject(client, base, type, id);
76
+ const name = String(item.name || item.content || item.title || '');
77
+ check(name, '权限对象没有名称');
78
+ const row = previous ? copy(previous) : { ...copy(item), objType: type, objTypeSpan: descriptor[2],
79
+ shareKey: temp(), sourceType: 1, permissionId: 'ebdcomm_view', permissionTargetType: descriptor[1],
80
+ targetType: descriptor[0], targetMinSecLevel: -1, targetMaxSecLevel: 999 };
81
+ Object.assign(row, { id, sourceId: pageId, targetId: id, targetName: name, content: name, obj_id_span: name,
82
+ objIdList: [name], targetType: descriptor[0], permissionType: scope === 'use' ? 1 : -1 });
83
+ const arrayKey = { resource: 'obj_id', department: 'obj_id_department', subcompany: 'obj_id_subcompany', role: 'obj_id_role', position: 'obj_id_position', all: 'obj_id_all', allExternal: 'obj_id_allExternal' }[type];
84
+ row[arrayKey] = [copy(item)];
85
+ const option = (key, value) => check(schema.form.items[key]?.options?.some((o) => String(o.id) === String(value) && !o.disabled), `${key} 取值无效`);
86
+ if (type === 'role') {
87
+ const level = String(input.roleLevel ?? previous?.role_level ?? schema.form.data?.role_level ?? '4');
88
+ option('role_level', level);
89
+ row.role_level = level;
90
+ row._roleLevel = Number(level);
91
+ }
92
+ else
93
+ check(input.roleLevel === undefined, '仅角色支持 roleLevel');
94
+ for (const [key, source, allowed] of [['department_attribute', 'attributes', ['department', 'subcompany']], ['position_attribute', 'positionAttributes', ['position']]]) {
95
+ if (input[source] !== undefined) {
96
+ check(allowed.includes(type) && Array.isArray(input[source]), `${source} 不适用于该主体`);
97
+ input[source].forEach((v) => option(key, v));
98
+ row[key] = copy(input[source]);
99
+ }
100
+ }
101
+ if (type === 'position') {
102
+ const level = String(input.positionLevel ?? previous?.position_level ?? '1');
103
+ option('position_level', level);
104
+ row.position_level = level;
105
+ for (const [inputKey, nativeKey, levelCode, browser] of [['subcompanies', 'position_level_subcompany', '2', 'subcompany'], ['departments', 'position_level_department', '3', 'department']]) {
106
+ if (input[inputKey] !== undefined) {
107
+ check(level === levelCode && Array.isArray(input[inputKey]) && input[inputKey].length > 0, `${inputKey} 需匹配岗位级别且不能为空`);
108
+ row[nativeKey] = await Promise.all(input[inputKey].map((orgId) => subject(client, base, browser, String(orgId))));
109
+ }
110
+ if (level === levelCode)
111
+ check(row[nativeKey]?.length, '指定机构的岗位级别必须提供机构');
112
+ }
113
+ }
114
+ else
115
+ check(input.positionLevel === undefined && input.subcompanies === undefined && input.departments === undefined, '岗位机构设置仅用于岗位');
116
+ if (input.security !== undefined) {
117
+ check(schema.security.seclevelSupport === true, '当前环境未启用安全级别');
118
+ object(input.security, ['min', 'max'], 'security');
119
+ check(Number.isFinite(input.security.min) && Number.isFinite(input.security.max) && input.security.min <= input.security.max, '安全级别范围无效');
120
+ row.seclevel = copy(input.security);
121
+ row.targetMinSecLevel = input.security.min;
122
+ row.targetMaxSecLevel = input.security.max;
123
+ }
124
+ else if (!previous && ['department', 'subcompany', 'role', 'all'].includes(type)) {
125
+ row.seclevel = copy(schema.form.data?.seclevel || { min: 0, max: 100 });
126
+ row.targetMinSecLevel = Number(row.seclevel.min);
127
+ row.targetMaxSecLevel = Number(row.seclevel.max);
128
+ }
129
+ return row;
130
+ }
131
+ export async function pageMatrixFields(client, base, page, source) {
132
+ object(source, ['type', 'id'], '矩阵来源');
133
+ check(['matrix', 'ebuilder_form'].includes(source.type) && /^\d+$/.test(source.id), '矩阵来源无效');
134
+ if (source.type === 'matrix') {
135
+ const objects = data(await client.post(`${base}/api/bs/hrm/matrix2/list`, { idList: [source.id] }), '读取矩阵名称');
136
+ const sourceRows = Array.isArray(objects) ? objects : objects?.data;
137
+ const sourceRow = sourceRows?.find((x) => String(x.id) === source.id);
138
+ check(sourceRow && (sourceRow.name || sourceRow.content), '矩阵对象未返回真实名称');
139
+ const cfg = data(await client.get(`${base}/api/bs/hrm/matrix2/config?id=${source.id}`), '读取矩阵');
140
+ const conditions = data(await client.get(`${base}/api/ebuilder/form/permission/getMatrixConditionConfigList?apid=${page.appid}&matrixId=${source.id}&name=`), '读取矩阵条件列');
141
+ const values = data(await client.get(`${base}/api/ebuilder/form/permission/getMatrixValueConfigList?apid=${page.appid}&matrixId=${source.id}&name=`), '读取矩阵取值列');
142
+ check(Array.isArray(conditions) && Array.isArray(values), '矩阵候选返回无效');
143
+ return { source, name: sourceRow.name || sourceRow.content, conditions, values: matrixValueFields(cfg).filter(v => values.some(x => String(x.id) === v.valueId)), fields: [] };
144
+ }
145
+ const info = data(await client.get(`${base}/api/ebuilder/form/obj/getInfo/${source.id}`), '读取 EB 来源表单');
146
+ check((!info.id || String(info.id) === source.id) && info.formId, 'EB 来源身份无效');
147
+ const response = data(await client.postForm(`${base}/api/ebuilder/common/ds/fields`, new URLSearchParams({
148
+ groupId: 'weaver-ebuilder-form-service', sourceId: source.id, sourceType: 'LOGIC', detailFieldsGroup: 'true', enableMerge: 'true', needTableName: 'true', params: '[]',
149
+ }).toString()), '读取来源字段');
150
+ const fields = response?.[0]?.fields;
151
+ check(Array.isArray(fields), '来源表单缺少字段');
152
+ const name = response[0].name || info.objName || info.showName || info.name;
153
+ check(typeof name === 'string' && name.length > 0, '来源表单缺少真实名称');
154
+ return { source, name, values: ebFormValueFields(fields),
155
+ conditions: fields.filter((f) => !f.subTableId && f.mainField !== false), fields };
156
+ }
157
+ export function compilePageCondition(tree, candidates, source) {
158
+ const match = (id) => { const rows = candidates.conditions.filter((f) => String(f.id) === id); check(rows.length === 1, `条件字段 ${id} 不在来源中`); return rows[0]; };
159
+ let count = 0;
160
+ const build = (node, parent, depth) => {
161
+ check(depth <= 12 && ++count <= 500, '条件树过深或过大');
162
+ const key = temp();
163
+ if (node?.children !== undefined) {
164
+ object(node, ['logic', 'children'], '条件组');
165
+ check(['and', 'or'].includes(node.logic) && Array.isArray(node.children) && node.children.length > 0, '条件组需要 and/or 及非空 children');
166
+ return { key, relationship: node.logic === 'and' ? '0' : '1', isParent: true, isNewFilter: true, parentNode: parent, datas: node.children.map((n) => build(n, key, depth + 1)), ...(parent ? {} : { version: 1 }) };
167
+ }
168
+ object(node, ['field', 'operator', 'value', 'fieldRef'], '条件叶子');
169
+ const f = match(node.field), op = { eq: 'eq', neq: 'neq', notEq: 'neq', in: 'aggregate', aggregate: 'aggregate',
170
+ notIn: 'unaggregate', unaggregate: 'unaggregate', isNull: 'empty', empty: 'empty', isNotNull: 'nempty', nempty: 'nempty', contains: 'contains' }[node.operator];
171
+ check(op, '页面权限条件操作符无效');
172
+ const noValue = ['empty', 'nempty'].includes(op);
173
+ if (noValue)
174
+ check(node.value === undefined && node.fieldRef === undefined, '为空/不为空不接受右值');
175
+ else
176
+ check((node.value !== undefined) !== (node.fieldRef !== undefined), '条件右值在 value 与 fieldRef 中二选一');
177
+ const comp = f.compType || f.componentKey || { subcompany: 'Subcompany', department: 'Department', resource: 'Employee' }[f.type];
178
+ check(comp, '条件字段缺少组件类型');
179
+ const text = ['Text', 'TextArea'].includes(comp);
180
+ if (op === 'contains')
181
+ check(text, 'contains 只用于文本');
182
+ const conditions = { func: op, isEsb: false };
183
+ if (noValue) {
184
+ conditions.value = '';
185
+ conditions.type = 'custombyhander';
186
+ }
187
+ else if (node.fieldRef !== undefined) {
188
+ const right = match(node.fieldRef);
189
+ check(text && ['Text', 'TextArea'].includes(right.compType), '当前字段引用只开放来源表内文本字段之间比较');
190
+ conditions.value = { dynamicField: { id: 'hold_matrixField', content: '矩阵表字段', field: copy(right) } };
191
+ conditions.type = '';
192
+ conditions.text = '';
193
+ }
194
+ else {
195
+ check(text || comp === 'Ebuilder' || ['Subcompany', 'Department'].includes(comp), '该条件字段的值协议尚未开放');
196
+ if (text || comp === 'Ebuilder') {
197
+ check(typeof node.value === 'string', '条件值需要字符串');
198
+ conditions.value = node.value;
199
+ conditions.type = 'custombyhander';
200
+ }
201
+ else {
202
+ check(Array.isArray(node.value) && node.value.length > 0 && node.value.every((x) => x && typeof x.id === 'string'), '组织条件需真实浏览对象数组');
203
+ conditions.value = copy(node.value);
204
+ conditions.type = 'custom';
205
+ conditions.text = node.value.map((x) => x.content || x.name);
206
+ }
207
+ }
208
+ return { isParent: false, parentNode: parent, id: String(f.id), fieldName: String(f.id), fieldType: f.type,
209
+ text: f.text || f.name, compType: comp, type: 'condition', conditions, multiSelect: f.multiSelect ?? false,
210
+ mainField: f.mainField ?? false, subTableId: '', key, ...(source.type === 'ebuilder_form' ? { objId: source.id, ...(f.formInfo ? { formInfo: copy(f.formInfo) } : {}) } : {}) };
211
+ };
212
+ return build(tree.children ? tree : { logic: 'and', children: [tree] }, '', 0);
213
+ }
214
+ export async function compilePageMatrix(client, base, page, input, previous) {
215
+ object(input, ['source', 'values', 'condition'], '矩阵规则');
216
+ const source = input.source || { type: previous?.selectedType, id: String(previous?.dataid?.[0]?.id || '') };
217
+ if (previous && input.source && !same(source, { type: previous.selectedType, id: String(previous.dataid?.[0]?.id) }))
218
+ check(input.values && Object.hasOwn(input, 'condition'), '更换来源时需显式重新提供 values 和 condition');
219
+ const candidates = await pageMatrixFields(client, base, page, source);
220
+ const row = previous ? copy(previous) : { rightsType: 'rightsMatrix', rightsTypeSpan: '矩阵相关' };
221
+ row.selectedType = source.type;
222
+ row.dataid = [{ id: source.id, name: candidates.name || source.id }];
223
+ if (input.values !== undefined) {
224
+ check(Array.isArray(input.values) && input.values.length > 0, '至少一个取值字段');
225
+ row.matrixValueRelation = JSON.stringify(input.values.map((value) => {
226
+ object(value, ['field', 'relation'], '取值行');
227
+ const matches = candidates.values.filter(v => v.valueId === value.field);
228
+ check(matches.length === 1, `取值字段 ${value.field} 不在来源候选中`);
229
+ const field = matches[0];
230
+ const allowed = field.valueType === 'system_creator' ? ['SELF', 'IMMEDIATE_SUPERIOR', 'IMMEDIATE_SUBORDINATE', 'DEPARTMENT', 'COMPANY'] :
231
+ field.valueType === 'resource' ? ['SELF', 'IMMEDIATE_SUPERIOR', 'IMMEDIATE_SUBORDINATE'] : ['SELF'];
232
+ const relation = value.relation || 'SELF';
233
+ check(allowed.includes(relation), `取值关系 ${relation} 不适用于 ${field.valueType}`);
234
+ return { id: temp(), valueId: field.valueId, type: relation, valueName: field.valueName, valueType: field.valueType };
235
+ }));
236
+ }
237
+ check(parse(row.matrixValueRelation)?.length, '新增规则必须提供 values');
238
+ if (Object.hasOwn(input, 'condition'))
239
+ row.matrixConditionData = input.condition === null ? '' : JSON.stringify(compilePageCondition(input.condition, candidates, source));
240
+ if (row.matrixConditionData === undefined)
241
+ row.matrixConditionData = '';
242
+ const values = parse(row.matrixValueRelation);
243
+ const labels = { SELF: '本人', IMMEDIATE_SUPERIOR: '直接上级', IMMEDIATE_SUBORDINATE: '直接下属', DEPARTMENT: '本部门', COMPANY: '所在分部' };
244
+ row.rightsName = `${candidates.name}(${values.map((v) => `${v.valueName}:${labels[v.type] || v.type}`).join(';')})`;
245
+ return row;
246
+ }
247
+ export async function mutatePagePermission(client, base, pageId, kind, action, scope, input, ruleId, apply = false) {
248
+ check(['use', 'disabled'].includes(scope), 'scope 只能是 use/disabled');
249
+ const before = await readPagePermission(client, base, pageId), planned = copy(before);
250
+ const key = kind === 'matrix' ? 'matrixRight' : scope === 'use' ? 'viewRight' : 'disableRight';
251
+ const identity = (r) => String(kind === 'matrix' ? r.id ?? '' : r.shareKey ?? '');
252
+ let index = -1;
253
+ if (action !== 'add') {
254
+ check(ruleId, '修改或删除必须指定规则 ID');
255
+ const matches = planned[key].map((r, i) => identity(r) === ruleId ? i : -1).filter((i) => i >= 0);
256
+ check(matches.length === 1, '规则未唯一匹配');
257
+ index = matches[0];
258
+ }
259
+ if (action === 'remove')
260
+ planned[key].splice(index, 1);
261
+ else {
262
+ const row = kind === 'matrix' ? await compilePageMatrix(client, base, before, input, index < 0 ? undefined : planned[key][index]) :
263
+ await compilePageCommon(client, base, pageId, scope, input, index < 0 ? undefined : planned[key][index]);
264
+ if (index < 0) {
265
+ const semanticKey = kind === 'matrix' ? 'matrix' : scope === 'use' ? 'common' : 'disabled';
266
+ const single = (r) => pagePermissionSemantics({ ...planned, [key]: [r] })[semanticKey][0];
267
+ if (!planned[key].some((existing) => same(single(existing), single(row))))
268
+ planned[key].push(row);
269
+ }
270
+ else
271
+ planned[key][index] = row;
272
+ }
273
+ check(planned.viewRight.length + planned.matrixRight.length > 0, '使用范围需保留至少一条通用或矩阵规则');
274
+ const expected = pagePermissionSemantics(planned), baseline = pagePermissionSemantics(before);
275
+ const result = { saved: false, changed: !same(expected, baseline), pageId, kind, action, scope, before: baseline, after: expected };
276
+ if (!apply || !result.changed)
277
+ return { ...result, saved: apply };
278
+ const latest = await readPagePermission(client, base, pageId);
279
+ check(same(latest, before), '权限在预检期间变化,停止覆盖,请重新读取');
280
+ data(await client.post(`${base}/api/bs/ebuilder/page/save/permission?pageId=${pageId}`, {
281
+ viewRight: { common: planned.viewRight, matrix: planned.matrixRight }, disableRight: planned.disableRight,
282
+ }), '保存页面权限');
283
+ const after = await readPagePermission(client, base, pageId);
284
+ check(same(pagePermissionSemantics(after), expected), '页面权限保存后回读不一致,请核对实际状态,勿直接重复新增');
285
+ return { ...result, saved: true, current: after };
286
+ }
287
+ //# sourceMappingURL=page-permission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-permission.js","sourceRoot":"","sources":["../../src/services/page-permission.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/services/report/verify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/services/report/verify.ts"],"names":[],"mappings":"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"}
@@ -88,15 +88,9 @@ export async function verifyFieldBind(http, reportId, appIdArg, opts = {}) {
88
88
  continue;
89
89
  }
90
90
  if (!legal.has(name)) {
91
- let hint = '';
92
- if (isBareSnowflake(name) && legal.has(`field_${name}`))
93
- hint = `(字段清单里是 field_${name},不要用裸雪花)`;
94
- else if (name.startsWith('field_') && legal.has(name.slice(6))) {
95
- hint = `(字段清单里是裸雪花 ${name.slice(6)},不要加 field_ 前缀)`;
96
- }
97
91
  errors.push({
98
92
  level: 'error',
99
- message: `${at}: name=${name} 不在数据集 ${dsId} 的字段清单里${hint}`,
93
+ message: `${at}: name=${name} 不在数据集 ${dsId} 的字段清单里,请使用接口返回的字段标识`,
100
94
  });
101
95
  }
102
96
  const realText = textByDs.get(dsId)?.get(name) ?? '';
@@ -1 +1 @@
1
- {"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/services/report/verify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/services/report/verify.ts"],"names":[],"mappings":"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"}
@@ -8,5 +8,12 @@ export interface RoleFunctionPermission {
8
8
  }
9
9
  export declare function flattenRolePermissions(nodes: any[]): RoleFunctionPermission[];
10
10
  export declare function readRolePermissions(client: ApiClient, base: string, roleId: string): Promise<RoleFunctionPermission[]>;
11
- export declare function setRolePermission(client: ApiClient, base: string, roleId: string, code: string, enabled: boolean): Promise<RoleFunctionPermission>;
11
+ /**
12
+ * 授予/移除一个功能权限集。
13
+ *
14
+ * `permissionSetCode` 在权限树里**不保证全局唯一**(同一租户可出现多个同名编码);
15
+ * 平台的真实身份键是 `(menuCode, permissionSetCode)`。重码时用 `menuCode` 指定目标,
16
+ * 不给则报错并列出候选,避免「静默授错项」或「结构性无法授权」。
17
+ */
18
+ export declare function setRolePermission(client: ApiClient, base: string, roleId: string, code: string, enabled: boolean, menuCode?: string): Promise<RoleFunctionPermission>;
12
19
  //# sourceMappingURL=role-function-permission.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"role-function-permission.d.ts","sourceRoot":"","sources":["../../src/services/role-function-permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,sBAAsB,EAAE,CAY7E;AAED,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAM5H;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EACrF,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAgBjE"}
1
+ {"version":3,"file":"role-function-permission.d.ts","sourceRoot":"","sources":["../../src/services/role-function-permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,sBAAsB,EAAE,CAY7E;AAED,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAM5H;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EACrF,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAyBpF"}
@@ -21,14 +21,28 @@ export async function readRolePermissions(client, base, roleId) {
21
21
  }
22
22
  return flattenRolePermissions(res.data.data);
23
23
  }
24
- export async function setRolePermission(client, base, roleId, code, enabled) {
24
+ /**
25
+ * 授予/移除一个功能权限集。
26
+ *
27
+ * `permissionSetCode` 在权限树里**不保证全局唯一**(同一租户可出现多个同名编码);
28
+ * 平台的真实身份键是 `(menuCode, permissionSetCode)`。重码时用 `menuCode` 指定目标,
29
+ * 不给则报错并列出候选,避免「静默授错项」或「结构性无法授权」。
30
+ */
31
+ export async function setRolePermission(client, base, roleId, code, enabled, menuCode) {
25
32
  const before = await readRolePermissions(client, base, roleId);
26
- const matches = before.filter(row => row.permissionSetCode === code);
27
- if (matches.length !== 1)
28
- throw new Error(`权限集 ${code} 在当前角色权限树中未唯一匹配`);
33
+ let matches = before.filter(row => row.permissionSetCode === code);
34
+ if (menuCode)
35
+ matches = matches.filter(row => row.menuCode === menuCode);
36
+ if (matches.length !== 1) {
37
+ const where = menuCode ? `${code}(menuCode=${menuCode})` : code;
38
+ if (matches.length === 0)
39
+ throw new Error(`未找到权限集 ${where}`);
40
+ const candidates = matches.map((row) => `${row.menuCode}(${row.permissionName || '未命名'})`).join('、');
41
+ throw new Error(`权限集 ${code} 匹配到 ${matches.length} 项,无法确定是哪一个:${candidates}。请加 --menu-code 指定`);
42
+ }
29
43
  const target = matches[0];
30
44
  if (target.disabled)
31
- throw new Error(`权限集 ${code} 在当前角色权限树中被禁用`);
45
+ throw new Error(`权限集 ${code}(menuCode=${target.menuCode})在当前角色权限树中被禁用`);
32
46
  if (target.checked === enabled)
33
47
  return target;
34
48
  const item = { menuCode: target.menuCode, permissionSetCode: target.permissionSetCode, permissionName: target.permissionName };
@@ -38,9 +52,10 @@ export async function setRolePermission(client, base, roleId, code, enabled) {
38
52
  if (res?.code !== 200 || !res?.status || res?.fail)
39
53
  throw new Error(`保存角色功能权限失败:${res?.msg || '未知错误'}`);
40
54
  const after = await readRolePermissions(client, base, roleId);
41
- const saved = after.find(row => row.permissionSetCode === code);
42
- if (!saved || saved.checked !== enabled)
43
- throw new Error(`平台返回成功,但权限集 ${code} 回读不一致`);
55
+ const saved = after.find(row => row.permissionSetCode === code && row.menuCode === target.menuCode);
56
+ if (!saved || saved.checked !== enabled) {
57
+ throw new Error(`平台返回成功,但权限集 ${code}(menuCode=${target.menuCode})回读不一致`);
58
+ }
44
59
  return saved;
45
60
  }
46
61
  //# sourceMappingURL=role-function-permission.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"role-function-permission.js","sourceRoot":"","sources":["../../src/services/role-function-permission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role-function-permission.js","sourceRoot":"","sources":["../../src/services/role-function-permission.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "weaver-e10-builder",
3
- "version": "1.6.13",
3
+ "version": "1.6.15",
4
4
  "description": "Eteams/Ebuilder CLI — 泛微 OA 命令行工具",
5
5
  "type": "module",
6
6
  "files": [
@@ -10,8 +10,8 @@
10
10
  "assets"
11
11
  ],
12
12
  "bin": {
13
- "e10-cli": "./dist/index.js",
14
- "ecodecmd": "./ecodecmd/src/index.js"
13
+ "e10-cli": "dist/index.js",
14
+ "ecodecmd": "ecodecmd/src/index.js"
15
15
  },
16
16
  "scripts": {
17
17
  "dev": "tsx src/index.ts",