weaver-e10-builder 1.5.7 → 1.5.10

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 (196) hide show
  1. package/dist/commands/app.d.ts.map +1 -1
  2. package/dist/commands/app.js +259 -0
  3. package/dist/commands/app.js.map +1 -1
  4. package/dist/commands/form-add-detail-table.d.ts.map +1 -1
  5. package/dist/commands/form-add-detail-table.js +13 -2
  6. package/dist/commands/form-add-detail-table.js.map +1 -1
  7. package/dist/commands/form-button.d.ts.map +1 -1
  8. package/dist/commands/form-button.js +6 -4
  9. package/dist/commands/form-button.js.map +1 -1
  10. package/dist/commands/form-formula-linkage.d.ts.map +1 -1
  11. package/dist/commands/form-formula-linkage.js +4 -4
  12. package/dist/commands/form-formula-linkage.js.map +1 -1
  13. package/dist/commands/form-list-filter.d.ts +3 -0
  14. package/dist/commands/form-list-filter.d.ts.map +1 -1
  15. package/dist/commands/form-list-filter.js +88 -24
  16. package/dist/commands/form-list-filter.js.map +1 -1
  17. package/dist/commands/form-list-permission.d.ts.map +1 -1
  18. package/dist/commands/form-list-permission.js +2 -9
  19. package/dist/commands/form-list-permission.js.map +1 -1
  20. package/dist/commands/form-list-search-group.d.ts.map +1 -1
  21. package/dist/commands/form-list-search-group.js +54 -64
  22. package/dist/commands/form-list-search-group.js.map +1 -1
  23. package/dist/commands/form-list-stats.d.ts.map +1 -1
  24. package/dist/commands/form-list-stats.js +29 -4
  25. package/dist/commands/form-list-stats.js.map +1 -1
  26. package/dist/commands/form-list-utils.d.ts +46 -1
  27. package/dist/commands/form-list-utils.d.ts.map +1 -1
  28. package/dist/commands/form-list-utils.js +140 -47
  29. package/dist/commands/form-list-utils.js.map +1 -1
  30. package/dist/commands/form-list.d.ts.map +1 -1
  31. package/dist/commands/form-list.js +141 -71
  32. package/dist/commands/form-list.js.map +1 -1
  33. package/dist/commands/form-message.d.ts +3 -0
  34. package/dist/commands/form-message.d.ts.map +1 -0
  35. package/dist/commands/form-message.js +341 -0
  36. package/dist/commands/form-message.js.map +1 -0
  37. package/dist/commands/form-permission.d.ts.map +1 -1
  38. package/dist/commands/form-permission.js +378 -0
  39. package/dist/commands/form-permission.js.map +1 -1
  40. package/dist/commands/form-view.d.ts.map +1 -1
  41. package/dist/commands/form-view.js +31 -4
  42. package/dist/commands/form-view.js.map +1 -1
  43. package/dist/commands/matrix.d.ts.map +1 -1
  44. package/dist/commands/matrix.js +80 -42
  45. package/dist/commands/matrix.js.map +1 -1
  46. package/dist/commands/menu.d.ts +2 -2
  47. package/dist/commands/menu.d.ts.map +1 -1
  48. package/dist/commands/menu.js +46 -13
  49. package/dist/commands/menu.js.map +1 -1
  50. package/dist/commands/org.d.ts.map +1 -1
  51. package/dist/commands/org.js +61 -0
  52. package/dist/commands/org.js.map +1 -1
  53. package/dist/commands/role.d.ts.map +1 -1
  54. package/dist/commands/role.js +69 -9
  55. package/dist/commands/role.js.map +1 -1
  56. package/dist/commands/wf-form.d.ts.map +1 -1
  57. package/dist/commands/wf-form.js +5 -5
  58. package/dist/commands/wf-form.js.map +1 -1
  59. package/dist/index.js +2 -0
  60. package/dist/index.js.map +1 -1
  61. package/dist/services/actionflow/calendar_mapper.d.ts.map +1 -1
  62. package/dist/services/actionflow/calendar_mapper.js +15 -10
  63. package/dist/services/actionflow/calendar_mapper.js.map +1 -1
  64. package/dist/services/actionflow/components/custom_set_form.d.ts.map +1 -1
  65. package/dist/services/actionflow/components/custom_set_form.js +9 -7
  66. package/dist/services/actionflow/components/custom_set_form.js.map +1 -1
  67. package/dist/services/actionflow/components/index.d.ts.map +1 -1
  68. package/dist/services/actionflow/components/index.js +2 -1
  69. package/dist/services/actionflow/components/index.js.map +1 -1
  70. package/dist/services/actionflow/components/inner_mq_listener.d.ts +6 -0
  71. package/dist/services/actionflow/components/inner_mq_listener.d.ts.map +1 -1
  72. package/dist/services/actionflow/components/inner_mq_listener.js +50 -2
  73. package/dist/services/actionflow/components/inner_mq_listener.js.map +1 -1
  74. package/dist/services/actionflow/components/meeting_create.js +1 -1
  75. package/dist/services/actionflow/components/meeting_create.js.map +1 -1
  76. package/dist/services/actionflow/components/multiple_execution.d.ts.map +1 -1
  77. package/dist/services/actionflow/components/multiple_execution.js +20 -19
  78. package/dist/services/actionflow/components/multiple_execution.js.map +1 -1
  79. package/dist/services/actionflow/components/output.d.ts.map +1 -1
  80. package/dist/services/actionflow/components/output.js +3 -10
  81. package/dist/services/actionflow/components/output.js.map +1 -1
  82. package/dist/services/actionflow/components/schedule_create.js +2 -2
  83. package/dist/services/actionflow/components/schedule_create.js.map +1 -1
  84. package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
  85. package/dist/services/actionflow/components/workflow_actions.js +33 -16
  86. package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
  87. package/dist/services/actionflow/context_preflight.d.ts +3 -3
  88. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  89. package/dist/services/actionflow/context_preflight.js +85 -27
  90. package/dist/services/actionflow/context_preflight.js.map +1 -1
  91. package/dist/services/actionflow/context_provider.d.ts +7 -0
  92. package/dist/services/actionflow/context_provider.d.ts.map +1 -1
  93. package/dist/services/actionflow/context_provider.js +13 -1
  94. package/dist/services/actionflow/context_provider.js.map +1 -1
  95. package/dist/services/actionflow/custom_trigger_context.d.ts.map +1 -1
  96. package/dist/services/actionflow/custom_trigger_context.js +1 -0
  97. package/dist/services/actionflow/custom_trigger_context.js.map +1 -1
  98. package/dist/services/actionflow/formula_service.d.ts +15 -0
  99. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  100. package/dist/services/actionflow/formula_service.js +413 -64
  101. package/dist/services/actionflow/formula_service.js.map +1 -1
  102. package/dist/services/actionflow/machine_key.d.ts +13 -0
  103. package/dist/services/actionflow/machine_key.d.ts.map +1 -0
  104. package/dist/services/actionflow/machine_key.js +62 -0
  105. package/dist/services/actionflow/machine_key.js.map +1 -0
  106. package/dist/services/actionflow/param_group_dto.d.ts.map +1 -1
  107. package/dist/services/actionflow/param_group_dto.js +31 -8
  108. package/dist/services/actionflow/param_group_dto.js.map +1 -1
  109. package/dist/services/actionflow/param_type.d.ts +14 -0
  110. package/dist/services/actionflow/param_type.d.ts.map +1 -0
  111. package/dist/services/actionflow/param_type.js +69 -0
  112. package/dist/services/actionflow/param_type.js.map +1 -0
  113. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  114. package/dist/services/actionflow/preflight_service.js +68 -44
  115. package/dist/services/actionflow/preflight_service.js.map +1 -1
  116. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  117. package/dist/services/actionflow/workflow_compiler.js +65 -29
  118. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  119. package/dist/services/app-publish.d.ts +227 -0
  120. package/dist/services/app-publish.d.ts.map +1 -0
  121. package/dist/services/app-publish.js +403 -0
  122. package/dist/services/app-publish.js.map +1 -0
  123. package/dist/services/form-button-position.d.ts.map +1 -1
  124. package/dist/services/form-button-position.js +7 -1
  125. package/dist/services/form-button-position.js.map +1 -1
  126. package/dist/services/form-field-drop.d.ts.map +1 -1
  127. package/dist/services/form-field-drop.js +7 -0
  128. package/dist/services/form-field-drop.js.map +1 -1
  129. package/dist/services/form-formula-linkage.d.ts +24 -3
  130. package/dist/services/form-formula-linkage.d.ts.map +1 -1
  131. package/dist/services/form-formula-linkage.js +24 -5
  132. package/dist/services/form-formula-linkage.js.map +1 -1
  133. package/dist/services/form-list-search-group.d.ts +89 -0
  134. package/dist/services/form-list-search-group.d.ts.map +1 -0
  135. package/dist/services/form-list-search-group.js +260 -0
  136. package/dist/services/form-list-search-group.js.map +1 -0
  137. package/dist/services/form-list-search.d.ts +110 -0
  138. package/dist/services/form-list-search.d.ts.map +1 -0
  139. package/dist/services/form-list-search.js +231 -0
  140. package/dist/services/form-list-search.js.map +1 -0
  141. package/dist/services/form-list-stats.d.ts +21 -1
  142. package/dist/services/form-list-stats.d.ts.map +1 -1
  143. package/dist/services/form-list-stats.js +86 -12
  144. package/dist/services/form-list-stats.js.map +1 -1
  145. package/dist/services/form-message.d.ts +273 -0
  146. package/dist/services/form-message.d.ts.map +1 -0
  147. package/dist/services/form-message.js +575 -0
  148. package/dist/services/form-message.js.map +1 -0
  149. package/dist/services/form-permission-archive.d.ts +113 -0
  150. package/dist/services/form-permission-archive.d.ts.map +1 -0
  151. package/dist/services/form-permission-archive.js +359 -0
  152. package/dist/services/form-permission-archive.js.map +1 -0
  153. package/dist/services/form-sub-detail.d.ts.map +1 -1
  154. package/dist/services/form-sub-detail.js +5 -1
  155. package/dist/services/form-sub-detail.js.map +1 -1
  156. package/dist/services/form-view.d.ts +34 -2
  157. package/dist/services/form-view.d.ts.map +1 -1
  158. package/dist/services/form-view.js +74 -8
  159. package/dist/services/form-view.js.map +1 -1
  160. package/dist/services/matrix-fields.d.ts +42 -0
  161. package/dist/services/matrix-fields.d.ts.map +1 -0
  162. package/dist/services/matrix-fields.js +102 -0
  163. package/dist/services/matrix-fields.js.map +1 -0
  164. package/dist/services/menu-catalog.d.ts +13 -0
  165. package/dist/services/menu-catalog.d.ts.map +1 -1
  166. package/dist/services/menu-catalog.js +24 -0
  167. package/dist/services/menu-catalog.js.map +1 -1
  168. package/dist/services/org-browser.d.ts +60 -0
  169. package/dist/services/org-browser.d.ts.map +1 -0
  170. package/dist/services/org-browser.js +62 -0
  171. package/dist/services/org-browser.js.map +1 -0
  172. package/dist/services/quick-date-range.d.ts +22 -0
  173. package/dist/services/quick-date-range.d.ts.map +1 -0
  174. package/dist/services/quick-date-range.js +134 -0
  175. package/dist/services/quick-date-range.js.map +1 -0
  176. package/dist/services/role-member.d.ts +73 -2
  177. package/dist/services/role-member.d.ts.map +1 -1
  178. package/dist/services/role-member.js +141 -9
  179. package/dist/services/role-member.js.map +1 -1
  180. package/package.json +1 -1
  181. package/skill-docs/SKILL.md +281 -278
  182. package/skill-docs/_catalog.md +5 -1
  183. package/skill-docs/actionflows/SKILL.md +3 -1
  184. package/skill-docs/actionflows/references/components/logic/Output.md +1 -1
  185. package/skill-docs/actionflows/references/components/message/InnerMQSend.md +6 -0
  186. package/skill-docs/actionflows/references/dynamic_capability_matrix.md +3 -3
  187. package/skill-docs/references/app/guide-app-publish.md +92 -0
  188. package/skill-docs/references/common/guide-plan-template.md +148 -252
  189. package/skill-docs/references/common/map.md +2 -1
  190. package/skill-docs/references/common/ref-cli-commands.md +32 -11
  191. package/skill-docs/references/form/guide-form-archive-permission.md +122 -0
  192. package/skill-docs/references/form/guide-form-message.md +57 -0
  193. package/skill-docs/references/form/guide-form-view.md +7 -2
  194. package/skill-docs/references/form/guide-formula-linkage.md +1 -1
  195. package/skill-docs/references/form/guide-list-stats.md +55 -2
  196. package/skill-docs/references/hrm/guide-matrix.md +30 -2
@@ -1,5 +1,7 @@
1
1
  import { AuthSession } from '../core/auth.js';
2
2
  import { ApiClient } from '../core/client.js';
3
+ import { resolveFormId } from '../services/form-id.js';
4
+ import { ARCHIVE_ORG_TYPES, ARCHIVE_TARGETS, ARCHIVE_TARGET_ALIASES, FIELD_ORG_TYPE_LABELS, archiveRowKey, buildArchiveRow, buildMatrixValueRelation, matrixValueFields, normalizeArchiveRow, parseArchiveFileRights, parseArchiveRights, resolveFieldOrgType, verifyArchiveRow, } from '../services/form-permission-archive.js';
3
5
  /**
4
6
  * Form permission management.
5
7
  *
@@ -408,5 +410,381 @@ export function registerFormPermissionCommands(form, program) {
408
410
  process.exit(1);
409
411
  }
410
412
  });
413
+ // ─── ARCHIVE(流程归档权限)──────────────────────────────
414
+ // 与共享权限共用同一族端点,用 type=workflowRight + workflowId 定位到**某个流程**。
415
+ // 四类授权对象由 codeType/orgType 区分,报文形状逐类不同 —— 见 services/form-permission-archive.ts。
416
+ const ARCHIVE_GET = '/api/bs/ebuilder/form/permission/getRightList';
417
+ const ARCHIVE_ADD = '/api/bs/ebuilder/form/permission/addRight';
418
+ const ARCHIVE_DELETE = '/api/bs/ebuilder/form/permission/deleteRight';
419
+ const ARCHIVE_CARD_GET = '/api/bs/ebuilder/flow/archive/getArchivedCard';
420
+ const ARCHIVE_CARD_SET = '/api/bs/ebuilder/flow/archive/updateArchivedCard';
421
+ /** 读某个流程的归档权限;同响应里的 layoutMap 是「流程 id → 流程名」 */
422
+ async function readArchiveRights(client, baseUrl, appId, objId, workflowId) {
423
+ const res = await client.get(`${baseUrl}${ARCHIVE_GET}?objId=${objId}&apid=${appId}&belongId=${objId}&tpaid=${objId}&type=workflowRight&workflowId=${workflowId}`, { ebbusinessid: appId });
424
+ if (res?.code !== 200 || !res?.status)
425
+ throw new Error(res?.msg || '查询流程归档权限失败');
426
+ const rightList = res?.data?.rightList || {};
427
+ const names = rightList?.layoutMap;
428
+ return {
429
+ rows: (Array.isArray(rightList?.workflowRightList) ? rightList.workflowRightList : []),
430
+ workflowNames: (names && typeof names === 'object' && !Array.isArray(names) ? names : {}),
431
+ };
432
+ }
433
+ /** 按 id 或名称定位表单字段(拿它的 type 去推字段相关的 orgType) */
434
+ async function resolveArchiveField(client, baseUrl, appId, objId, spec, subFormId) {
435
+ const formId = await resolveFormId(client, baseUrl, appId, objId);
436
+ if (!formId)
437
+ throw new Error(`取不到 ${objId} 的 formId,无法按名解析字段`);
438
+ const res = await client.post(`${baseUrl}/api/ebuilder/form/form/field/manage/getFormFieldPage?apid=${appId}`, {
439
+ pageNo: 1, pageSize: 500, module: 'ebuilderform', customParam: { appId },
440
+ formFieldSearchEntity: {
441
+ isDelete: 0, status: 'enable', formId,
442
+ ...(subFormId ? { subFormId: String(subFormId) } : {}),
443
+ },
444
+ }, { ebbusinessid: formId });
445
+ const records = res?.data?.pageDatas?.result || res?.data?.data?.records || res?.data?.data || [];
446
+ if (!Array.isArray(records) || !records.length)
447
+ throw new Error('读不到表单字段列表,无法按名解析字段');
448
+ const byId = records.find((f) => String(f?.fieldId) === String(spec));
449
+ if (byId)
450
+ return byId;
451
+ const named = records.filter((f) => String(f?.title ?? f?.fieldName ?? '') === String(spec));
452
+ if (named.length === 1)
453
+ return named[0];
454
+ if (named.length > 1)
455
+ throw new Error(`字段名「${spec}」不唯一,请改用字段 id`);
456
+ throw new Error(`字段「${spec}」不存在(既不是字段 id,也不在主表字段名里)`);
457
+ }
458
+ /** 按 id 或名称定位矩阵(真矩阵) */
459
+ async function resolveArchiveMatrix(client, baseUrl, appId, spec) {
460
+ const res = await client.post(`${baseUrl}/api/bs/hrm/matrix2/list`, { current: 1, pageSize: 500, searchVal: '' }, { ebbusinessid: appId });
461
+ const items = Array.isArray(res?.data) ? res.data : (res?.data?.datas || []);
462
+ const byId = items.find((m) => String(m?.id) === String(spec));
463
+ if (byId)
464
+ return { id: String(byId.id), name: String(byId.name ?? '') };
465
+ const named = items.filter((m) => String(m?.name) === String(spec));
466
+ if (named.length === 1)
467
+ return { id: String(named[0].id), name: String(named[0].name ?? '') };
468
+ if (named.length > 1)
469
+ throw new Error(`矩阵名「${spec}」不唯一,请改用矩阵 id`);
470
+ throw new Error(`矩阵「${spec}」不存在`);
471
+ }
472
+ /** 按 id 或名称定位本应用下的 e-Builder 表单 */
473
+ async function resolveArchiveEbForm(client, baseUrl, appId, spec) {
474
+ const res = await client.get(`${baseUrl}/api/bs/ebuilder/form/obj/getList/${appId}?apid=${appId}`, { ebbusinessid: appId });
475
+ const items = Array.isArray(res?.data) ? res.data : (res?.data?.datas || []);
476
+ const byId = items.find((f) => String(f?.id) === String(spec));
477
+ if (byId)
478
+ return { id: String(byId.id), name: String(byId.name ?? '') };
479
+ const named = items.filter((f) => String(f?.name) === String(spec));
480
+ if (named.length === 1)
481
+ return { id: String(named[0].id), name: String(named[0].name ?? '') };
482
+ if (named.length > 1)
483
+ throw new Error(`表单名「${spec}」不唯一,请改用表单 id`);
484
+ throw new Error(`本应用下没有名为「${spec}」的表单`);
485
+ }
486
+ /**
487
+ * e-Builder 表单当矩阵用时,「取值字段」是**系统值**体系(不是矩阵的值字段配置)。
488
+ * 这里只收报文坐实过的那一条 —— 其余取值字段请用 `--matrix-value id:名称:valueType` 或 `--matrix-value-raw` 明写。
489
+ */
490
+ const EB_FORM_SYSTEM_VALUES = [
491
+ { valueId: '2', valueName: '创建者', valueType: 'system_creator' },
492
+ ];
493
+ /** 解析 --matrix-value 的单个 token:`名称` / `id:名称:valueType` */
494
+ function parseMatrixValueToken(token, candidates) {
495
+ const parts = token.split(':');
496
+ if (parts.length === 3) {
497
+ const [valueId, valueName, valueType] = parts;
498
+ if (!valueId || !valueName || !valueType)
499
+ throw new Error(`--matrix-value「${token}」三段都不能为空`);
500
+ return { valueId, valueName, valueType };
501
+ }
502
+ if (parts.length !== 1)
503
+ throw new Error(`--matrix-value「${token}」格式应为 名称 或 id:名称:valueType`);
504
+ const hit = candidates.filter((c) => c.valueName === token || String(c.valueId) === token);
505
+ if (hit.length === 1)
506
+ return hit[0];
507
+ if (hit.length > 1)
508
+ throw new Error(`取值字段「${token}」不唯一,请用 id:名称:valueType 明写`);
509
+ const known = candidates.length
510
+ ? `可选: ${candidates.map((c) => c.valueName).join(' / ')}`
511
+ : '该来源下没有可自动解析的取值字段';
512
+ throw new Error(`取值字段「${token}」不存在(${known});也可用 id:名称:valueType 或 --matrix-value-raw 明写`);
513
+ }
514
+ const archiveCmd = permCmd.command('archive')
515
+ .description('流程归档权限(通用对象 / 创建人相关 / 字段相关 / 矩阵相关)');
516
+ archiveCmd.command('list')
517
+ .description('查看某个流程的归档权限')
518
+ .argument('<objId>', '表单 objId')
519
+ .argument('<appId>', '应用 ID')
520
+ .requiredOption('--workflow <workflowId>', '流程 ID(归档权限按流程分开配)')
521
+ .action(async (objId, appId, cmdOpts) => {
522
+ try {
523
+ const opts = program.opts();
524
+ const auth = await AuthSession.fromOptions(opts);
525
+ if (!auth)
526
+ throw new Error('无法加载认证');
527
+ const client = new ApiClient(auth);
528
+ const baseUrl = auth.getBaseUrl();
529
+ const { rows, workflowNames } = await readArchiveRights(client, baseUrl, appId, objId, cmdOpts.workflow);
530
+ const normalized = rows.map(normalizeArchiveRow);
531
+ if (opts.json) {
532
+ console.log(JSON.stringify({ workflowId: cmdOpts.workflow, workflowName: workflowNames[cmdOpts.workflow] || '', permissions: normalized }, null, 2));
533
+ return;
534
+ }
535
+ const title = workflowNames[cmdOpts.workflow];
536
+ console.log(`流程归档权限 —— 流程 ${cmdOpts.workflow}${title ? `(${title})` : ''}`);
537
+ if (!normalized.length) {
538
+ console.log(' (无)');
539
+ return;
540
+ }
541
+ for (const row of normalized) {
542
+ const subject = row.orgName || row.orgTypeName || row.orgType;
543
+ console.log(` [${row.id}] ${ARCHIVE_TARGETS[row.target]} · ${subject} ${row.rightLabels}`);
544
+ const extras = [];
545
+ if (row.target === 'creator')
546
+ extras.push(`创建人关系=${row.creatorRelated}`);
547
+ if (row.matrixValueRelation)
548
+ extras.push(`取值字段=${row.matrixValueRelation}`);
549
+ if (row.fileRight)
550
+ extras.push(`附件=${row.fileRight}`);
551
+ if (extras.length)
552
+ console.log(` ${extras.join(' ')}`);
553
+ if (row.needsRebuild)
554
+ console.log(` ⚠ 需要重构: e10-cli form permission rebuild ${objId} ${appId} ${row.id}`);
555
+ }
556
+ console.log(`\n共 ${normalized.length} 条`);
557
+ }
558
+ catch (error) {
559
+ console.error(`查询流程归档权限失败: ${error.message}`);
560
+ process.exitCode = 1;
561
+ }
562
+ });
563
+ archiveCmd.command('add')
564
+ .description(`添加一条流程归档权限并回读(--target 决定授权对象: ${Object.entries(ARCHIVE_TARGETS).map(([k, v]) => `${k}=${v}`).join(' / ')})`)
565
+ .argument('<objId>', '表单 objId')
566
+ .argument('<appId>', '应用 ID')
567
+ .requiredOption('--workflow <workflowId>', '流程 ID')
568
+ .requiredOption('--target <type>', `授权对象类别: ${Object.keys(ARCHIVE_TARGETS).join(' / ')}`)
569
+ .requiredOption('--rights <rights...>', '归档权限,可组合: view/edit/delete 或 5/6/7')
570
+ .option('--file-rights <rights...>', '归档附件权限,可组合: view/download/edit 或 501/502/503(不给则不发该键)')
571
+ .option('--org-type <type>', `通用对象主体类型: ${Object.keys(ARCHIVE_ORG_TYPES).join(' / ')};字段相关亦可用它显式指定 field_*`)
572
+ .option('--org-id <id>', '通用对象主体 ID(org-type=all 时自动为 0)')
573
+ .option('--org-name <name>', '通用对象显示名(缺省用类型名)')
574
+ .option('--creator-related <n>', '创建人关系: 0 本人 1 直接上级 5 本岗位 等(0~7)', '0')
575
+ .option('--field <fieldIdOrName>', '字段相关:表单字段 id 或字段名')
576
+ .option('--sub-form-id <id>', '字段相关:该字段属于明细表时给明细子表 id')
577
+ .option('--matrix <idOrName>', '矩阵相关:矩阵 id 或名称(真矩阵)')
578
+ .option('--eb-form <idOrName>', '矩阵相关:e-Builder 表单 id 或名称')
579
+ .option('--matrix-value <spec...>', '矩阵相关:取值字段,可给名称/id,或 id:名称:valueType 明写')
580
+ .option('--matrix-value-raw <json>', '矩阵相关:取值字段原始 JSON 数组(形状以设计器报文为准)')
581
+ .action(async (objId, appId, cmdOpts) => {
582
+ try {
583
+ const opts = program.opts();
584
+ const auth = await AuthSession.fromOptions(opts);
585
+ if (!auth)
586
+ throw new Error('无法加载认证');
587
+ const client = new ApiClient(auth);
588
+ const baseUrl = auth.getBaseUrl();
589
+ const rawTarget = String(cmdOpts.target).trim();
590
+ const target = ARCHIVE_TARGET_ALIASES[rawTarget] ?? ARCHIVE_TARGET_ALIASES[rawTarget.toLowerCase()];
591
+ if (!target)
592
+ throw new Error(`不支持的 --target: ${cmdOpts.target},可选: ${Object.keys(ARCHIVE_TARGETS).join(' / ')}`);
593
+ const rightType = parseArchiveRights(cmdOpts.rights);
594
+ const fileRight = cmdOpts.fileRights?.length ? parseArchiveFileRights(cmdOpts.fileRights) : undefined;
595
+ let row;
596
+ let orgTypeLabel;
597
+ let subject = '';
598
+ if (target === 'general') {
599
+ const orgType = String(cmdOpts.orgType ?? '');
600
+ if (!ARCHIVE_ORG_TYPES[orgType])
601
+ throw new Error(`--target general 需要 --org-type,可选: ${Object.keys(ARCHIVE_ORG_TYPES).join(' / ')}`);
602
+ const orgId = orgType === 'all' ? '0' : String(cmdOpts.orgId ?? '');
603
+ if (orgType !== 'all' && !orgId)
604
+ throw new Error('--org-id 不能为空(org-type=all 除外)');
605
+ orgTypeLabel = ARCHIVE_ORG_TYPES[orgType];
606
+ subject = cmdOpts.orgName || orgTypeLabel;
607
+ row = buildArchiveRow({
608
+ objId, workflowId: cmdOpts.workflow, target, rightType, fileRight,
609
+ orgType, orgId, orgName: subject, orgTypeName: orgTypeLabel,
610
+ });
611
+ }
612
+ else if (target === 'creator') {
613
+ if (!/^[0-7]$/.test(String(cmdOpts.creatorRelated)))
614
+ throw new Error('--creator-related 需是 0~7');
615
+ orgTypeLabel = '创建人相关';
616
+ subject = `${orgTypeLabel}(关系 ${cmdOpts.creatorRelated})`;
617
+ row = buildArchiveRow({
618
+ objId, workflowId: cmdOpts.workflow, target, rightType, fileRight,
619
+ creatorRelated: String(cmdOpts.creatorRelated),
620
+ });
621
+ }
622
+ else if (target === 'field') {
623
+ if (!cmdOpts.field)
624
+ throw new Error('--target field 需要 --field 给字段 id 或字段名');
625
+ const record = await resolveArchiveField(client, baseUrl, appId, objId, String(cmdOpts.field), cmdOpts.subFormId);
626
+ const explicit = cmdOpts.orgType ? String(cmdOpts.orgType) : '';
627
+ if (explicit && !FIELD_ORG_TYPE_LABELS[explicit]) {
628
+ throw new Error(`未知的字段相关类型: ${explicit},可选: ${Object.keys(FIELD_ORG_TYPE_LABELS).join(' / ')}`);
629
+ }
630
+ const mapped = explicit
631
+ ? { orgType: explicit, label: FIELD_ORG_TYPE_LABELS[explicit] }
632
+ : resolveFieldOrgType(String(record?.type ?? ''), String(record?.title ?? record?.fieldName ?? cmdOpts.field));
633
+ orgTypeLabel = mapped.label;
634
+ subject = `${String(record?.title ?? record?.fieldName ?? cmdOpts.field)}(${mapped.label})`;
635
+ row = buildArchiveRow({
636
+ objId, workflowId: cmdOpts.workflow, target, rightType, fileRight,
637
+ orgType: mapped.orgType, orgId: String(record?.fieldId ?? ''),
638
+ });
639
+ }
640
+ else {
641
+ const useEbForm = Boolean(cmdOpts.ebForm);
642
+ const spec = String(cmdOpts.ebForm ?? cmdOpts.matrix ?? '');
643
+ if (!spec)
644
+ throw new Error('--target matrix 需要 --matrix(真矩阵)或 --eb-form(e-Builder 表单)');
645
+ const source = useEbForm
646
+ ? await resolveArchiveEbForm(client, baseUrl, appId, spec)
647
+ : await resolveArchiveMatrix(client, baseUrl, appId, spec);
648
+ const orgType = useEbForm ? 'ebuilder_form' : 'matrix';
649
+ orgTypeLabel = useEbForm ? 'e-Builder表单相关' : '矩阵';
650
+ subject = `${source.name}(${orgTypeLabel})`;
651
+ let relation;
652
+ if (cmdOpts.matrixValueRaw) {
653
+ let parsed;
654
+ try {
655
+ parsed = JSON.parse(cmdOpts.matrixValueRaw);
656
+ }
657
+ catch {
658
+ throw new Error('--matrix-value-raw 不是合法 JSON');
659
+ }
660
+ if (!Array.isArray(parsed) || !parsed.length)
661
+ throw new Error('--matrix-value-raw 需是非空 JSON 数组');
662
+ relation = buildMatrixValueRelation(parsed.map((v) => ({
663
+ valueId: String(v?.valueId ?? ''), valueName: String(v?.valueName ?? ''), valueType: String(v?.valueType ?? ''),
664
+ })));
665
+ }
666
+ else {
667
+ const candidates = useEbForm
668
+ ? EB_FORM_SYSTEM_VALUES
669
+ : matrixValueFields((await client.get(`${baseUrl}/api/bs/hrm/matrix2/config?id=${source.id}`, { ebbusinessid: appId }))?.data);
670
+ const tokens = cmdOpts.matrixValue?.length ? cmdOpts.matrixValue : candidates.slice(0, 1).map((c) => c.valueName);
671
+ if (!tokens.length)
672
+ throw new Error('该矩阵没有值字段,请先配置值字段,或用 --matrix-value id:名称:valueType 明写');
673
+ relation = buildMatrixValueRelation(tokens.map((t) => parseMatrixValueToken(t, candidates)));
674
+ }
675
+ row = buildArchiveRow({
676
+ objId, workflowId: cmdOpts.workflow, target, rightType, fileRight,
677
+ orgType, orgId: source.id, orgName: source.name,
678
+ matrixValueRelation: relation, matrixConditionData: '',
679
+ });
680
+ }
681
+ // 幂等:同一授权对象 + 同一权限组合已存在就不再发一次
682
+ const before = await readArchiveRights(client, baseUrl, appId, objId, cmdOpts.workflow);
683
+ const key = archiveRowKey(row);
684
+ const dup = before.rows.find((r) => archiveRowKey(r) === key);
685
+ if (dup) {
686
+ const existing = normalizeArchiveRow(dup);
687
+ console.log(opts.json
688
+ ? JSON.stringify({ success: true, changed: false, id: existing.id, target, subject, rights: existing.rightLabels }, null, 2)
689
+ : `已存在同一条归档权限,未重复添加: [${existing.id}] ${ARCHIVE_TARGETS[target]} · ${subject} ${existing.rightLabels}`);
690
+ return;
691
+ }
692
+ const added = await client.post(`${baseUrl}${ARCHIVE_ADD}?objId=${objId}&apid=${appId}&tpaid=${objId}`, [row], { ebbusinessid: appId });
693
+ if (added?.code !== 200 || !added?.status)
694
+ throw new Error(added?.msg || '添加失败');
695
+ const newId = String(added?.data?.[0]?.id ?? '');
696
+ if (!newId)
697
+ throw new Error('添加响应未返回权限 ID');
698
+ const after = await readArchiveRights(client, baseUrl, appId, objId, cmdOpts.workflow);
699
+ const saved = after.rows.find((r) => String(r?.id) === newId);
700
+ if (!saved)
701
+ throw new Error('已提交,但回读里找不到这条权限');
702
+ verifyArchiveRow(saved, { row, orgTypeLabel });
703
+ const normalized = normalizeArchiveRow(saved);
704
+ if (opts.json) {
705
+ console.log(JSON.stringify({ success: true, changed: true, id: newId, target, subject, rights: normalized.rightLabels, needsRebuild: normalized.needsRebuild }, null, 2));
706
+ }
707
+ else {
708
+ console.log(`流程归档权限已添加: [${newId}] ${ARCHIVE_TARGETS[target]} · ${subject} ${normalized.rightLabels}`);
709
+ if (fileRight)
710
+ console.log(` 归档附件权限: ${fileRight}`);
711
+ }
712
+ if (normalized.needsRebuild) {
713
+ console.error(` 注意: 该权限需要重构,执行: e10-cli form permission rebuild ${objId} ${appId} ${newId}`);
714
+ }
715
+ }
716
+ catch (error) {
717
+ console.error(`添加流程归档权限失败: ${error.message}`);
718
+ process.exitCode = 1;
719
+ }
720
+ });
721
+ archiveCmd.command('remove')
722
+ .description('删除流程归档权限(按权限 ID,与共享权限同一套删除接口)')
723
+ .argument('<objId>', '表单 objId')
724
+ .argument('<appId>', '应用 ID')
725
+ .requiredOption('--right-id <ids>', '要删除的权限 ID(逗号分隔,支持多个)')
726
+ .action(async (objId, appId, cmdOpts) => {
727
+ try {
728
+ const opts = program.opts();
729
+ const auth = await AuthSession.fromOptions(opts);
730
+ if (!auth)
731
+ throw new Error('无法加载认证');
732
+ const client = new ApiClient(auth);
733
+ const baseUrl = auth.getBaseUrl();
734
+ const res = await client.post(`${baseUrl}${ARCHIVE_DELETE}?objId=${objId}&apid=${appId}`, { rightIds: cmdOpts.rightId }, { ebbusinessid: appId });
735
+ if (res?.code !== 200 || !res?.status)
736
+ throw new Error(res?.msg || '删除失败');
737
+ console.log(opts.json ? JSON.stringify({ success: true, rightIds: cmdOpts.rightId }) : `流程归档权限已删除: ${cmdOpts.rightId}`);
738
+ }
739
+ catch (error) {
740
+ console.error(`删除流程归档权限失败: ${error.message}`);
741
+ process.exitCode = 1;
742
+ }
743
+ });
744
+ archiveCmd.command('card')
745
+ .description('查看/设置流程的归档卡片开关')
746
+ .argument('<workflowId>', '流程 ID')
747
+ .argument('<appId>', '应用 ID')
748
+ .option('--set <0|1>', '设置为 0 关闭 / 1 开启;不给则只读')
749
+ .action(async (workflowId, appId, cmdOpts) => {
750
+ try {
751
+ const opts = program.opts();
752
+ const auth = await AuthSession.fromOptions(opts);
753
+ if (!auth)
754
+ throw new Error('无法加载认证');
755
+ const client = new ApiClient(auth);
756
+ const baseUrl = auth.getBaseUrl();
757
+ const requested = cmdOpts.set !== undefined ? Number(cmdOpts.set) : undefined;
758
+ if (cmdOpts.set !== undefined && !['0', '1'].includes(String(cmdOpts.set)))
759
+ throw new Error('--set 只能是 0 或 1');
760
+ if (requested !== undefined) {
761
+ const res = await client.post(`${baseUrl}${ARCHIVE_CARD_SET}?apid=${appId}`, { workflowId, archivedCard: requested, sourceType: 'BACK' }, { ebbusinessid: appId });
762
+ if (res?.code !== 200 || !res?.status)
763
+ throw new Error(res?.msg || '保存失败');
764
+ // ⚠ 这个接口用 `data` 报成败,不是 `code` —— `code:200` 但 `data:false` 时值根本没变
765
+ // (流程当时不允许开归档卡片就是这种)。只看 code 会把「没生效」当成功。
766
+ if (res?.data === false) {
767
+ throw new Error(`平台未接受本次设置(返回 data=false),该流程当前不允许把归档卡片设为 ${requested}`);
768
+ }
769
+ }
770
+ const res = await client.get(`${baseUrl}${ARCHIVE_CARD_GET}?apid=${appId}&workflowId=${workflowId}`, { ebbusinessid: appId });
771
+ if (res?.code !== 200 || !res?.status)
772
+ throw new Error(res?.msg || '读取失败');
773
+ const value = Number(res?.data);
774
+ if (requested !== undefined && value !== requested) {
775
+ throw new Error(`已提交,但归档卡片回读为 ${value},与请求的 ${requested} 不一致`);
776
+ }
777
+ const label = value === 1 ? '开启' : '关闭';
778
+ if (opts.json) {
779
+ console.log(JSON.stringify({ workflowId, archivedCard: value, changed: requested !== undefined }));
780
+ return;
781
+ }
782
+ console.log(`流程 ${workflowId} 归档卡片: ${label}(archivedCard=${value})`);
783
+ }
784
+ catch (error) {
785
+ console.error(`归档卡片设置失败: ${error.message}`);
786
+ process.exitCode = 1;
787
+ }
788
+ });
411
789
  }
412
790
  //# sourceMappingURL=form-permission.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-permission.js","sourceRoot":"","sources":["../../src/commands/form-permission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-permission.js","sourceRoot":"","sources":["../../src/commands/form-permission.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-view.d.ts","sourceRoot":"","sources":["../../src/commands/form-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0CpC,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAiK9E"}
1
+ {"version":3,"file":"form-view.d.ts","sourceRoot":"","sources":["../../src/commands/form-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2CpC,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAuL9E"}
@@ -1,6 +1,6 @@
1
1
  import { AuthSession } from '../core/auth.js';
2
2
  import { ApiClient } from '../core/client.js';
3
- import { FORM_VIEW_TYPES, createAndVerifyFormView, listFormViews, populateFormViewFields, countViewComps, listDetailSubForms, renameAndVerifyTableView, } from '../services/form-view.js';
3
+ import { FORM_VIEW_TYPES, createAndVerifyFormView, listFormViews, populateFormViewFields, countViewComps, listDetailSubForms, renameFormView, deleteFormView, } from '../services/form-view.js';
4
4
  import { readTableViewConfig } from '../services/form-table-view.js';
5
5
  /** NList / multiView 是表格视图(台账),不走表单布局,getFormLayout 不适用 */
6
6
  function isTableViewModel(vt) {
@@ -134,17 +134,17 @@ export function registerFormViewCommands(form, program) {
134
134
  }
135
135
  });
136
136
  view.command('rename')
137
- .description('修改已有台账(nListView)名称并回读')
137
+ .description('修改视图名称并回读(表单视图 / 台账等,按类型走各自的接口)')
138
138
  .argument('<objId>', '表单 objId')
139
139
  .argument('<appId>', '应用 ID')
140
- .argument('<viewId>', '台账视图 ID')
140
+ .argument('<viewId>', '视图 ID')
141
141
  .argument('<name>', '新视图名称')
142
142
  .action(async (objId, appId, viewId, name) => {
143
143
  try {
144
144
  const auth = await AuthSession.fromOptions(program.opts());
145
145
  if (!auth)
146
146
  throw new Error('无法加载认证');
147
- const result = await renameAndVerifyTableView(new ApiClient(auth), auth.getBaseUrl(), appId, objId, viewId, name);
147
+ const result = await renameFormView(new ApiClient(auth), auth.getBaseUrl(), appId, objId, viewId, name);
148
148
  if (program.opts().json)
149
149
  console.log(JSON.stringify({ success: true, ...result }, null, 2));
150
150
  else
@@ -155,6 +155,33 @@ export function registerFormViewCommands(form, program) {
155
155
  process.exitCode = 1;
156
156
  }
157
157
  });
158
+ view.command('delete')
159
+ .description('删除视图(表单视图 / 台账等,按类型走各自的接口)。⚠ 不可逆、无回收站')
160
+ .argument('<objId>', '表单 objId')
161
+ .argument('<appId>', '应用 ID')
162
+ .argument('<viewId>', '视图 ID')
163
+ .action(async (objId, appId, viewId) => {
164
+ try {
165
+ const auth = await AuthSession.fromOptions(program.opts());
166
+ if (!auth)
167
+ throw new Error('无法加载认证');
168
+ const result = await deleteFormView(new ApiClient(auth), auth.getBaseUrl(), appId, objId, viewId);
169
+ const name = String(result.view?.name ?? '');
170
+ const type = String(result.view?.viewType ?? '');
171
+ if (program.opts().json)
172
+ console.log(JSON.stringify({ success: result.deleted, viewId, name, viewType: type, deleted: result.deleted }, null, 2));
173
+ else if (result.deleted)
174
+ console.log(`视图已删除: ${name} (${viewId})${type ? ` 类型=${type}` : ''}`);
175
+ else
176
+ console.error(`⚠ 已发出删除,但回读时视图 ${viewId} 仍在,请人工确认`);
177
+ if (!result.deleted)
178
+ process.exitCode = 1;
179
+ }
180
+ catch (error) {
181
+ console.error(`删除视图失败: ${error.message}`);
182
+ process.exitCode = 1;
183
+ }
184
+ });
158
185
  view.command('populate')
159
186
  .description('按目标布局类型把字段填入 formView,并独立回读。视图已有字段时**只补缺**,'
160
187
  + '已有组件的排版与属性一个不动(重跑幂等)')