weaver-e10-builder 1.6.11 → 1.6.12

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 (144) hide show
  1. package/dist/commands/form-browser-definition.d.ts.map +1 -1
  2. package/dist/commands/form-browser-definition.js +108 -7
  3. package/dist/commands/form-browser-definition.js.map +1 -1
  4. package/dist/commands/form-browser-scope-rules.d.ts +27 -0
  5. package/dist/commands/form-browser-scope-rules.d.ts.map +1 -0
  6. package/dist/commands/form-browser-scope-rules.js +141 -0
  7. package/dist/commands/form-browser-scope-rules.js.map +1 -0
  8. package/dist/commands/form-browser-scope-tree.d.ts +14 -0
  9. package/dist/commands/form-browser-scope-tree.d.ts.map +1 -0
  10. package/dist/commands/form-browser-scope-tree.js +115 -0
  11. package/dist/commands/form-browser-scope-tree.js.map +1 -0
  12. package/dist/commands/matrix-maintainer.d.ts +3 -0
  13. package/dist/commands/matrix-maintainer.d.ts.map +1 -0
  14. package/dist/commands/matrix-maintainer.js +117 -0
  15. package/dist/commands/matrix-maintainer.js.map +1 -0
  16. package/dist/commands/matrix.d.ts.map +1 -1
  17. package/dist/commands/matrix.js +2 -0
  18. package/dist/commands/matrix.js.map +1 -1
  19. package/dist/commands/report-validate.d.ts.map +1 -1
  20. package/dist/commands/report-validate.js +36 -0
  21. package/dist/commands/report-validate.js.map +1 -1
  22. package/dist/commands/role.d.ts.map +1 -1
  23. package/dist/commands/role.js +354 -0
  24. package/dist/commands/role.js.map +1 -1
  25. package/dist/commands/special.d.ts.map +1 -1
  26. package/dist/commands/special.js +67 -31
  27. package/dist/commands/special.js.map +1 -1
  28. package/dist/commands/wf-form.d.ts.map +1 -1
  29. package/dist/commands/wf-form.js +1 -121
  30. package/dist/commands/wf-form.js.map +1 -1
  31. package/dist/commands/workflow-layout-components.d.ts +3 -0
  32. package/dist/commands/workflow-layout-components.d.ts.map +1 -0
  33. package/dist/commands/workflow-layout-components.js +36 -0
  34. package/dist/commands/workflow-layout-components.js.map +1 -0
  35. package/dist/commands/workflow-node-batch.d.ts +3 -0
  36. package/dist/commands/workflow-node-batch.d.ts.map +1 -0
  37. package/dist/commands/workflow-node-batch.js +136 -0
  38. package/dist/commands/workflow-node-batch.js.map +1 -0
  39. package/dist/commands/workflow-node-opinion.d.ts +3 -0
  40. package/dist/commands/workflow-node-opinion.d.ts.map +1 -0
  41. package/dist/commands/workflow-node-opinion.js +51 -0
  42. package/dist/commands/workflow-node-opinion.js.map +1 -0
  43. package/dist/commands/workflow-node-reject.js +1 -1
  44. package/dist/commands/workflow-node-reject.js.map +1 -1
  45. package/dist/commands/workflow-node.d.ts.map +1 -1
  46. package/dist/commands/workflow-node.js +4 -3
  47. package/dist/commands/workflow-node.js.map +1 -1
  48. package/dist/index.js +6 -2
  49. package/dist/index.js.map +1 -1
  50. package/dist/services/actionflow/components/send_message.d.ts.map +1 -1
  51. package/dist/services/actionflow/components/send_message.js +8 -3
  52. package/dist/services/actionflow/components/send_message.js.map +1 -1
  53. package/dist/services/actionflow/context_preflight.js +1 -1
  54. package/dist/services/actionflow/context_preflight.js.map +1 -1
  55. package/dist/services/actionflow/formula_service.d.ts +1 -0
  56. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  57. package/dist/services/actionflow/formula_service.js +107 -31
  58. package/dist/services/actionflow/formula_service.js.map +1 -1
  59. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  60. package/dist/services/actionflow/preflight_service.js +4 -1
  61. package/dist/services/actionflow/preflight_service.js.map +1 -1
  62. package/dist/services/form-layout-describe.d.ts.map +1 -1
  63. package/dist/services/form-layout-describe.js +3 -2
  64. package/dist/services/form-layout-describe.js.map +1 -1
  65. package/dist/services/form-layout-document.d.ts.map +1 -1
  66. package/dist/services/form-layout-document.js +2 -1
  67. package/dist/services/form-layout-document.js.map +1 -1
  68. package/dist/services/matrix-maintainer.d.ts +27 -0
  69. package/dist/services/matrix-maintainer.d.ts.map +1 -0
  70. package/dist/services/matrix-maintainer.js +142 -0
  71. package/dist/services/matrix-maintainer.js.map +1 -0
  72. package/dist/services/report/drill.d.ts +74 -0
  73. package/dist/services/report/drill.d.ts.map +1 -0
  74. package/dist/services/report/drill.js +259 -0
  75. package/dist/services/report/drill.js.map +1 -0
  76. package/dist/services/role-function-permission.d.ts +12 -0
  77. package/dist/services/role-function-permission.d.ts.map +1 -0
  78. package/dist/services/role-function-permission.js +46 -0
  79. package/dist/services/role-function-permission.js.map +1 -0
  80. package/dist/services/special-layout.d.ts +113 -0
  81. package/dist/services/special-layout.d.ts.map +1 -0
  82. package/dist/services/special-layout.js +178 -0
  83. package/dist/services/special-layout.js.map +1 -0
  84. package/dist/services/workflow-base-settings.d.ts +1 -10
  85. package/dist/services/workflow-base-settings.d.ts.map +1 -1
  86. package/dist/services/workflow-field-permission-route.d.ts +15 -41
  87. package/dist/services/workflow-field-permission-route.d.ts.map +1 -1
  88. package/dist/services/workflow-field-permission-route.js +23 -8
  89. package/dist/services/workflow-field-permission-route.js.map +1 -1
  90. package/dist/services/workflow-layout-components.d.ts +52 -0
  91. package/dist/services/workflow-layout-components.d.ts.map +1 -0
  92. package/dist/services/workflow-layout-components.js +66 -0
  93. package/dist/services/workflow-layout-components.js.map +1 -0
  94. package/dist/services/workflow-layout-draft.d.ts +49 -0
  95. package/dist/services/workflow-layout-draft.d.ts.map +1 -0
  96. package/dist/services/workflow-layout-draft.js +98 -0
  97. package/dist/services/workflow-layout-draft.js.map +1 -0
  98. package/dist/services/workflow-node-batch-spec.d.ts +122 -0
  99. package/dist/services/workflow-node-batch-spec.d.ts.map +1 -0
  100. package/dist/services/workflow-node-batch-spec.js +496 -0
  101. package/dist/services/workflow-node-batch-spec.js.map +1 -0
  102. package/dist/services/workflow-node-batch.d.ts +73 -0
  103. package/dist/services/workflow-node-batch.d.ts.map +1 -0
  104. package/dist/services/workflow-node-batch.js +328 -0
  105. package/dist/services/workflow-node-batch.js.map +1 -0
  106. package/dist/services/workflow-node-opinion-description.d.ts +12 -0
  107. package/dist/services/workflow-node-opinion-description.d.ts.map +1 -0
  108. package/dist/services/workflow-node-opinion-description.js +52 -0
  109. package/dist/services/workflow-node-opinion-description.js.map +1 -0
  110. package/dist/services/workflow-node-opinion-layout.d.ts +22 -0
  111. package/dist/services/workflow-node-opinion-layout.d.ts.map +1 -0
  112. package/dist/services/workflow-node-opinion-layout.js +113 -0
  113. package/dist/services/workflow-node-opinion-layout.js.map +1 -0
  114. package/dist/services/workflow-node-opinion-range.d.ts +21 -0
  115. package/dist/services/workflow-node-opinion-range.d.ts.map +1 -0
  116. package/dist/services/workflow-node-opinion-range.js +74 -0
  117. package/dist/services/workflow-node-opinion-range.js.map +1 -0
  118. package/dist/services/workflow-node-opinion.d.ts +43 -0
  119. package/dist/services/workflow-node-opinion.d.ts.map +1 -0
  120. package/dist/services/workflow-node-opinion.js +198 -0
  121. package/dist/services/workflow-node-opinion.js.map +1 -0
  122. package/dist/services/workflow-opinion-settings.d.ts +14 -0
  123. package/dist/services/workflow-opinion-settings.d.ts.map +1 -1
  124. package/dist/services/workflow-opinion-settings.js +18 -2
  125. package/dist/services/workflow-opinion-settings.js.map +1 -1
  126. package/package.json +1 -1
  127. package/skill-docs/SKILL.md +164 -162
  128. package/skill-docs/_catalog.md +3 -2
  129. package/skill-docs/actionflows/references/components/message/SendMessage.md +32 -30
  130. package/skill-docs/references/common/guide-plan-template.md +4 -1
  131. package/skill-docs/references/common/map.md +28 -4
  132. package/skill-docs/references/common/ref-cli-commands.md +14 -4
  133. package/skill-docs/references/form/guide-browser-definition.md +2 -219
  134. package/skill-docs/references/form/guide-browser-scope.md +285 -0
  135. package/skill-docs/references/form/guide-create-form.md +1 -1
  136. package/skill-docs/references/hrm/guide-matrix.md +276 -245
  137. package/skill-docs/references/hrm/guide-role.md +77 -0
  138. package/skill-docs/references/report/drilldown-report-guide.md +17 -1
  139. package/skill-docs/references/report/event-hreflink-guide.md +2 -0
  140. package/skill-docs/references/report/query-condition-api-guide.md +29 -0
  141. package/skill-docs/references/workflow/guide-layout-components.md +26 -0
  142. package/skill-docs/references/workflow/guide-node-opinion.md +58 -0
  143. package/skill-docs/references/workflow/guide-workflow.md +43 -0
  144. package/skill-docs/references/form/guide-ebuilder-scope.md +0 -82
@@ -1,5 +1,6 @@
1
1
  import { AuthSession } from '../core/auth.js';
2
2
  import { ApiClient } from '../core/client.js';
3
+ import { readRolePermissions, setRolePermission } from '../services/role-function-permission.js';
3
4
  import { buildMemberEntry, buildMemberSavePayload, buildMemberListBody, extractMemberRows, isMemberKind, pickExact, parseIdList, buildDestDataPayload, extractDestDataItems, assertAllIdsResolved, DEST_DATA_BASE, MEMBER_KINDS, MEMBER_KIND_LABEL, MEMBER_LEVEL_CODES, MEMBER_LEVEL_LABELS, ORG_SCOPE_CODES, ORG_SCOPE_LABELS, ORG_SCOPES_NEEDING_ORG, } from '../services/role-member.js';
4
5
  function flattenTree(nodes, depth = 0) {
5
6
  const result = [];
@@ -25,6 +26,94 @@ function findRoleInTree(nodes, id) {
25
26
  }
26
27
  export function registerRoleCommands(program) {
27
28
  const role = program.command('role').description('角色管理');
29
+ const readRoleForm = async (client, base, roleId) => {
30
+ const res = await client.get(`${base}/api/bs/auth/role/getForm?roleId=${roleId}`);
31
+ if (res?.code !== 200 || !res?.status || !res?.data?.data || String(res.data.data.id) !== roleId) {
32
+ throw new Error(`角色 ${roleId} 详情读取失败`);
33
+ }
34
+ return res.data.data;
35
+ };
36
+ role.command('get').argument('<roleId>').description('读取角色基础信息')
37
+ .action(async (roleId) => {
38
+ const auth = await AuthSession.fromOptions(program.opts());
39
+ if (!auth)
40
+ throw new Error('尚未鉴权');
41
+ console.log(JSON.stringify(await readRoleForm(new ApiClient(auth), auth.getBaseUrl(), roleId), null, 2));
42
+ });
43
+ role.command('update').argument('<roleId>').description('修改角色名称、编码、备注或父角色;未指定项保留')
44
+ .option('--name <name>', '角色名称')
45
+ .option('--code <code>', '角色编码')
46
+ .option('--remark <text>', '备注;可传空字符串清空')
47
+ .option('--parent <id>', '新父角色 ID;不能是自身或子孙角色')
48
+ .action(async (roleId, o) => {
49
+ if (Object.values(o).every(v => v === undefined))
50
+ throw new Error('至少指定一项角色属性');
51
+ const auth = await AuthSession.fromOptions(program.opts());
52
+ if (!auth)
53
+ throw new Error('尚未鉴权');
54
+ const client = new ApiClient(auth), base = auth.getBaseUrl();
55
+ const before = await readRoleForm(client, base, roleId);
56
+ const patch = {};
57
+ if (o.name !== undefined) {
58
+ if (!o.name.trim())
59
+ throw new Error('角色名称不能为空');
60
+ patch.roleName = o.name.trim();
61
+ }
62
+ if (o.code !== undefined) {
63
+ if (!o.code.trim())
64
+ throw new Error('角色编码不能为空');
65
+ patch.roleCode = o.code.trim();
66
+ }
67
+ if (o.remark !== undefined)
68
+ patch.remark = o.remark;
69
+ if (o.parent !== undefined) {
70
+ if (o.parent === roleId)
71
+ throw new Error('角色不能以自身为父角色');
72
+ const tree = await client.get(`${base}/api/bs/auth/role/tree?menuCode=roleSettings`);
73
+ if (tree?.code !== 200 || !tree?.status || !Array.isArray(tree?.data?.data))
74
+ throw new Error('无法读取角色树');
75
+ const parent = findRoleInTree(tree.data.data, o.parent);
76
+ if (!parent)
77
+ throw new Error(`父角色 ${o.parent} 不在当前角色树中`);
78
+ const children = findRoleInTree(tree.data.data, roleId)?.children || [];
79
+ if (findRoleInTree(children, o.parent))
80
+ throw new Error('不能将角色移入自身子树');
81
+ patch.parentId = o.parent;
82
+ patch.parentRole = [{ id: parent.id, name: parent.content || parent.title, _entityType: 'role',
83
+ icon: parent.icon || 'Icon-role', tenantKey: auth.tenantKey, delete: false }];
84
+ }
85
+ const payload = { ...before, ...patch, id: roleId, applicationIdList: before.applicationIdList || [], isCheck: 1 };
86
+ const res = await client.post(`${base}/api/bs/auth/role/saveOrUpdate?isCheck=1`, [payload]);
87
+ if (res?.code !== 200 || !res?.status || res?.fail)
88
+ throw new Error(`更新角色失败:${res?.msg || '未知错误'}`);
89
+ const after = await readRoleForm(client, base, roleId);
90
+ for (const [key, value] of Object.entries(patch)) {
91
+ if (key === 'parentRole')
92
+ continue;
93
+ if (String(after[key] ?? '') !== String(value))
94
+ throw new Error(`平台返回成功,但角色属性 ${key} 回读不一致`);
95
+ }
96
+ console.log(JSON.stringify({ success: true, roleId, updated: patch }, null, 2));
97
+ });
98
+ const permission = role.command('permission').description('角色功能权限集');
99
+ permission.command('list').argument('<roleId>').description('读取角色功能权限树中的权限集及选中状态')
100
+ .action(async (roleId) => {
101
+ const auth = await AuthSession.fromOptions(program.opts());
102
+ if (!auth)
103
+ throw new Error('尚未鉴权');
104
+ console.log(JSON.stringify(await readRolePermissions(new ApiClient(auth), auth.getBaseUrl(), roleId), null, 2));
105
+ });
106
+ for (const mode of ['add', 'remove']) {
107
+ permission.command(mode).argument('<roleId>').argument('<permissionSetCode>')
108
+ .description(mode === 'add' ? '授予角色一个功能权限集' : '移除角色的一个功能权限集')
109
+ .action(async (roleId, code) => {
110
+ const auth = await AuthSession.fromOptions(program.opts());
111
+ if (!auth)
112
+ throw new Error('尚未鉴权');
113
+ const saved = await setRolePermission(new ApiClient(auth), auth.getBaseUrl(), roleId, code, mode === 'add');
114
+ console.log(JSON.stringify({ success: true, roleId, permission: saved }, null, 2));
115
+ });
116
+ }
28
117
  role.command('list')
29
118
  .description('列出所有角色(树形结构)')
30
119
  .action(async () => {
@@ -297,6 +386,52 @@ export function registerRoleCommands(program) {
297
386
  process.exit(1);
298
387
  }
299
388
  });
389
+ role.command('add-scope-member').argument('<roleId>')
390
+ .requiredOption('--type <kind>', 'all=所有人 / allExternal=全部外部联系人')
391
+ .option('--level <级别>', '成员级别:总部/分部/部门;缺省 all=总部、allExternal=分部')
392
+ .description('添加不依赖具体浏览对象的所有人或全部外部联系人成员')
393
+ .action(async (roleId, o) => {
394
+ if (!['all', 'allExternal'].includes(o.type))
395
+ throw new Error('仅支持 all 或 allExternal;指定外部人员 external 暂不支持');
396
+ const level = o.level ? MEMBER_LEVEL_CODES[o.level] : o.type === 'allExternal' ? '2' : '1';
397
+ if (!level)
398
+ throw new Error('成员级别仅支持 总部/分部/部门 或 1/2/3');
399
+ const auth = await AuthSession.fromOptions(program.opts());
400
+ if (!auth)
401
+ throw new Error('尚未鉴权');
402
+ const client = new ApiClient(auth), base = auth.getBaseUrl();
403
+ const list = async () => {
404
+ const res = await client.post(`${base}/api/bs/auth/role/${roleId}/member/list`, buildMemberListBody());
405
+ if (res?.code !== 200 || !res?.status || !Array.isArray(res?.data?.data))
406
+ throw new Error('无法完整读取角色成员列表');
407
+ const rows = extractMemberRows(res);
408
+ if (Number(res.data.total || 0) > rows.length || res.data.hasMore)
409
+ throw new Error('角色成员列表未完整返回;为避免误判新增条目,已停止');
410
+ return rows;
411
+ };
412
+ const before = await list();
413
+ const label = o.type === 'all' ? '所有人' : '所有外部联系人';
414
+ if (before.some(row => row.resourceType === label && row.memberLevel === MEMBER_LEVEL_LABELS[Number(level) - 1])) {
415
+ throw new Error(`该角色已有同级别的${label}成员;先用 member-list 核对,勿重复添加`);
416
+ }
417
+ const form = await client.get(`${base}/api/bs/auth/role/member/getForm?roleId=${roleId}`);
418
+ if (form?.code !== 200 || !form?.status || !form?.data?.objectTypeFilter?.includes(o.type)) {
419
+ throw new Error(`当前角色成员表单不支持 ${o.type}`);
420
+ }
421
+ const payload = { ...form.data, objType: o.type, obj_level: level, isAll: false,
422
+ department_attribute: [], expireType: 'UNLIMITED' };
423
+ const res = await client.post(`${base}/api/bs/auth/role/${roleId}/member/save-or-update`, payload);
424
+ if (res?.code !== 200 || !res?.status || res?.fail)
425
+ throw new Error(`添加角色成员失败:${res?.msg || '未知错误'}`);
426
+ const after = await list();
427
+ const oldIds = new Set(before.map(row => row.id));
428
+ const added = after.filter(row => !oldIds.has(row.id));
429
+ if (added.length !== 1 || (o.type === 'allExternal' && added[0].resourceType !== '所有外部联系人') ||
430
+ (o.type === 'all' && added[0].resourceType !== '所有人')) {
431
+ throw new Error('平台返回成功,但无法从成员列表唯一确认新增条目;请人工核实,勿直接重试');
432
+ }
433
+ console.log(JSON.stringify({ success: true, roleId, member: added[0] }, null, 2));
434
+ });
300
435
  role.command('member-list')
301
436
  .description('列出角色成员(人员 / 部门 / 分部 / 岗位 / 群组)')
302
437
  .argument('<roleId>', '角色 ID')
@@ -324,5 +459,224 @@ export function registerRoleCommands(program) {
324
459
  + `${r.orgPermission ? ` 范围=${r.orgPermission}` : ''} userId=${r.userId}`);
325
460
  }
326
461
  });
462
+ role.command('member-get').argument('<roleId>').argument('<memberId>')
463
+ .description('读取角色成员条目的完整配置')
464
+ .action(async (roleId, memberId) => {
465
+ const auth = await AuthSession.fromOptions(program.opts());
466
+ if (!auth)
467
+ throw new Error('尚未鉴权');
468
+ const res = await new ApiClient(auth).get(`${auth.getBaseUrl()}/api/bs/auth/role/member/getForm?id=${memberId}&roleId=${roleId}`);
469
+ if (res?.code !== 200 || !res?.status || !res?.data?.objType)
470
+ throw new Error('角色成员详情读取失败');
471
+ console.log(JSON.stringify({ ...res.data, id: memberId }, null, 2));
472
+ });
473
+ role.command('member-update').argument('<roleId>').argument('<memberId>')
474
+ .description('修改角色成员的岗位级别及指定机构、下级/兼职选项;其余设置保留')
475
+ .option('--position-level <n>', '岗位级别:1=全部、2=指定分部、3=指定部门')
476
+ .option('--position-subcompany <ids>', '岗位级别指定分部 ID,逗号分隔')
477
+ .option('--position-department <ids>', '岗位级别指定部门 ID,逗号分隔')
478
+ .option('--department-attribute <list>', '部门/分部成员:subordinate,partTimeStaff;传空字符串表示两项都关闭')
479
+ .option('--level <级别>', '角色成员级别:总部/分部/部门 或 1/2/3')
480
+ .option('--sec-min <n>', '安全级别下限')
481
+ .option('--sec-max <n>', '安全级别上限')
482
+ .option('--enable-seclevel', '开启安全级别校验')
483
+ .option('--disable-seclevel', '关闭安全级别校验')
484
+ .option('--org-scope <scope>', '分权范围;用「全部机构/同部门/指定部门」等中文名或协议码')
485
+ .option('--org-departments <ids>', '分权范围为指定部门时的部门 ID,逗号分隔')
486
+ .option('--org-subcompanies <ids>', '分权范围为指定分部时的分部 ID,逗号分隔')
487
+ .option('--org-attribute <list>', '指定分部/部门范围的 subordinate(包含下级);传空字符串表示不含下级')
488
+ .option('--expire-type <type>', '有效期:UNLIMITED/TEMPORARY/DAY/WEEK/MONTH/YEAR/APPOINT')
489
+ .option('--expire-detail <value>', 'DAY/WEEK/MONTH/YEAR 的正整数,或 APPOINT 的 YYYY-MM-DD 日期')
490
+ .action(async (roleId, memberId, o) => {
491
+ const auth = await AuthSession.fromOptions(program.opts());
492
+ if (!auth)
493
+ throw new Error('尚未鉴权');
494
+ const client = new ApiClient(auth), base = auth.getBaseUrl();
495
+ const endpoint = `${base}/api/bs/auth/role/member/getForm?id=${memberId}&roleId=${roleId}`;
496
+ const read = async () => {
497
+ const res = await client.get(endpoint);
498
+ if (res?.code !== 200 || !res?.status || !res?.data?.objType)
499
+ throw new Error('角色成员详情读取失败');
500
+ return res.data;
501
+ };
502
+ const before = await read();
503
+ const patch = {};
504
+ if (o.positionLevel !== undefined || o.positionSubcompany !== undefined || o.positionDepartment !== undefined) {
505
+ if (before.objType !== 'position')
506
+ throw new Error('岗位级别只能用于岗位成员');
507
+ const level = o.positionLevel ?? String(before.position_level || '1');
508
+ if (!['1', '2', '3'].includes(level))
509
+ throw new Error('岗位级别仅支持 1/2/3');
510
+ if (o.positionSubcompany !== undefined && level !== '2')
511
+ throw new Error('指定岗位分部只能与岗位级别 2 同用');
512
+ if (o.positionDepartment !== undefined && level !== '3')
513
+ throw new Error('指定岗位部门只能与岗位级别 3 同用');
514
+ if (level === '2' && !o.positionSubcompany && !(before.position_level_subcompany || []).length)
515
+ throw new Error('岗位级别 2 需要指定分部');
516
+ if (level === '3' && !o.positionDepartment && !(before.position_level_partment || []).length)
517
+ throw new Error('岗位级别 3 需要指定部门');
518
+ const resolve = async (kind, raw) => raw === undefined ? undefined
519
+ : await readByIds(client, base, kind, parseIdList([raw]), roleId);
520
+ patch.position_level = level;
521
+ patch.position_level_subcompany = level === '1' ? [] : (await resolve('subcompany', o.positionSubcompany)) ?? before.position_level_subcompany ?? [];
522
+ patch.position_level_partment = level !== '3' ? [] : (await resolve('department', o.positionDepartment)) ?? before.position_level_partment ?? [];
523
+ }
524
+ if (o.departmentAttribute !== undefined) {
525
+ if (!['department', 'subcompany'].includes(before.objType))
526
+ throw new Error('下级/兼职选项只能用于部门或分部成员');
527
+ const attrs = o.departmentAttribute.split(',').map(x => x.trim()).filter(Boolean);
528
+ if (attrs.some(x => !['subordinate', 'partTimeStaff'].includes(x)))
529
+ throw new Error('下级/兼职选项仅支持 subordinate,partTimeStaff');
530
+ patch.department_attribute = attrs;
531
+ }
532
+ if (o.level !== undefined) {
533
+ const level = MEMBER_LEVEL_CODES[o.level];
534
+ if (!level)
535
+ throw new Error('成员级别仅支持 总部/分部/部门 或 1/2/3');
536
+ patch.obj_level = level;
537
+ }
538
+ if (o.secMin !== undefined || o.secMax !== undefined) {
539
+ const min = o.secMin !== undefined ? Number(o.secMin) : Number(before.seclevel?.min);
540
+ const max = o.secMax !== undefined ? Number(o.secMax) : Number(before.seclevel?.max);
541
+ if (!Number.isFinite(min) || !Number.isFinite(max) || min > max)
542
+ throw new Error('安全级别上下限无效');
543
+ patch.seclevel = { min, max };
544
+ }
545
+ if (o.enableSeclevel && o.disableSeclevel)
546
+ throw new Error('不能同时开启和关闭安全级别校验');
547
+ if (o.enableSeclevel)
548
+ patch.isSeclevel = true;
549
+ if (o.disableSeclevel)
550
+ patch.isSeclevel = false;
551
+ if (o.orgScope !== undefined || o.orgDepartments !== undefined || o.orgSubcompanies !== undefined || o.orgAttribute !== undefined) {
552
+ const raw = o.orgScope || String(before.org_permission || 'ALL_SCOPE');
553
+ const scope = ORG_SCOPE_CODES[raw] || (Object.values(ORG_SCOPE_CODES).includes(raw) ? raw : undefined);
554
+ if (!scope)
555
+ throw new Error(`未知分权范围 ${raw};请使用指南列出的中文名或协议码`);
556
+ const attrs = o.orgAttribute === undefined ? (before.org_permission_attribute || [])
557
+ : o.orgAttribute.split(',').map(x => x.trim()).filter(Boolean);
558
+ if (attrs.some((x) => x !== 'subordinate'))
559
+ throw new Error('分权范围选项仅支持 subordinate');
560
+ const resolve = async (kind, rawIds) => rawIds === undefined ? undefined
561
+ : await readByIds(client, base, kind, parseIdList([rawIds]), roleId);
562
+ if (scope === 'DEPARTMENT') {
563
+ if (o.orgSubcompanies !== undefined)
564
+ throw new Error('指定部门范围不能同时设置指定分部');
565
+ const rows = (await resolve('department', o.orgDepartments)) ?? (before.org_permission === scope ? before.org_permission_department : []);
566
+ if (!rows?.length)
567
+ throw new Error('指定部门范围必须提供 --org-departments');
568
+ patch.org_permission_department = rows;
569
+ patch.org_permission_subcompany = [];
570
+ patch.org_permission_attribute = o.orgAttribute === undefined && before.org_permission !== scope ? [] : attrs;
571
+ }
572
+ else if (scope === 'SUBCOMPANY') {
573
+ if (o.orgDepartments !== undefined)
574
+ throw new Error('指定分部范围不能同时设置指定部门');
575
+ const rows = (await resolve('subcompany', o.orgSubcompanies)) ?? (before.org_permission === scope ? before.org_permission_subcompany : []);
576
+ if (!rows?.length)
577
+ throw new Error('指定分部范围必须提供 --org-subcompanies');
578
+ patch.org_permission_subcompany = rows;
579
+ patch.org_permission_department = [];
580
+ patch.org_permission_attribute = o.orgAttribute === undefined && before.org_permission !== scope ? [] : attrs;
581
+ }
582
+ else {
583
+ if (o.orgDepartments !== undefined || o.orgSubcompanies !== undefined || o.orgAttribute !== undefined) {
584
+ throw new Error('非指定机构分权范围不接受机构 ID 或包含下级选项');
585
+ }
586
+ patch.org_permission_department = [];
587
+ patch.org_permission_subcompany = [];
588
+ patch.org_permission_attribute = [];
589
+ }
590
+ patch.org_permission = scope;
591
+ }
592
+ if (o.expireType !== undefined || o.expireDetail !== undefined) {
593
+ const type = (o.expireType || String(before.expireType || 'UNLIMITED')).toUpperCase();
594
+ if (!['UNLIMITED', 'TEMPORARY', 'DAY', 'WEEK', 'MONTH', 'YEAR', 'APPOINT'].includes(type)) {
595
+ throw new Error(`未知有效期类型 ${type}`);
596
+ }
597
+ const detail = o.expireDetail ?? (type === before.expireType ? before.expireDetail : undefined);
598
+ if (['DAY', 'WEEK', 'MONTH', 'YEAR'].includes(type)) {
599
+ if (!/^[1-9]\d*$/.test(String(detail || '')))
600
+ throw new Error(`${type} 有效期需要正整数 --expire-detail`);
601
+ patch.expireDetail = Number(detail);
602
+ }
603
+ else if (type === 'APPOINT') {
604
+ const matched = /^(\d{4})-(\d{2})-(\d{2})$/.exec(String(detail || ''));
605
+ const parsed = matched ? new Date(`${detail}T00:00:00Z`) : null;
606
+ if (!matched || !parsed || Number.isNaN(parsed.getTime()) || parsed.toISOString().slice(0, 10) !== detail) {
607
+ throw new Error('APPOINT 有效期需要真实存在的 YYYY-MM-DD 日期');
608
+ }
609
+ patch.expireDetail = detail;
610
+ }
611
+ else {
612
+ if (o.expireDetail !== undefined)
613
+ throw new Error(`${type} 不接受 --expire-detail`);
614
+ patch.expireDetail = '';
615
+ }
616
+ patch.expireType = type;
617
+ // expireDate 是平台计算的展示值,切换类型时不能把旧值当作新类型的输入。
618
+ delete before.expireDate;
619
+ }
620
+ if (!Object.keys(patch).length)
621
+ throw new Error('至少指定一项需要修改的成员设置');
622
+ const res = await client.post(`${base}/api/bs/auth/role/${roleId}/member/save-or-update`, { ...before, ...patch, id: memberId });
623
+ if (res?.code !== 200 || !res?.status || res?.fail)
624
+ throw new Error(`更新角色成员失败:${res?.msg || '未知错误'}`);
625
+ let mismatch = '';
626
+ for (let attempt = 0; attempt < 3; attempt++) {
627
+ const after = await read();
628
+ mismatch = '';
629
+ for (const [key, value] of Object.entries(patch)) {
630
+ if (key === 'expireDetail' && String(after[key] ?? '') === String(value ?? ''))
631
+ continue;
632
+ if (key === 'seclevel' && Number(after[key]?.min) === Number(value?.min) &&
633
+ Number(after[key]?.max) === Number(value?.max))
634
+ continue;
635
+ const norm = (x) => Array.isArray(x) && x.every(y => y && typeof y === 'object' && 'id' in y)
636
+ ? x.map(y => String(y.id)).sort() : x;
637
+ if (JSON.stringify(norm(after[key])) !== JSON.stringify(norm(value))) {
638
+ mismatch = key;
639
+ break;
640
+ }
641
+ }
642
+ if (!mismatch)
643
+ break;
644
+ if (attempt < 2)
645
+ await new Promise(resolve => setTimeout(resolve, 300));
646
+ }
647
+ if (mismatch)
648
+ throw new Error(`平台返回成功,但成员字段 ${mismatch} 回读不一致;请先核实实际状态,不要直接重试写入`);
649
+ console.log(JSON.stringify({ success: true, roleId, memberId, updated: patch }, null, 2));
650
+ });
651
+ role.command('member-delete').argument('<roleId>').argument('<memberIds...>')
652
+ .description('按成员条目 ID 删除角色成员,并回读列表')
653
+ .action(async (roleId, memberIds) => {
654
+ const auth = await AuthSession.fromOptions(program.opts());
655
+ if (!auth)
656
+ throw new Error('尚未鉴权');
657
+ const client = new ApiClient(auth), base = auth.getBaseUrl();
658
+ const ids = parseIdList(memberIds);
659
+ const list = async () => {
660
+ const res = await client.post(`${base}/api/bs/auth/role/${roleId}/member/list`, buildMemberListBody());
661
+ if (res?.code !== 200 || !res?.status || !Array.isArray(res?.data?.data))
662
+ throw new Error('角色成员列表读取失败');
663
+ const rows = extractMemberRows(res);
664
+ if (Number(res.data.total || 0) > rows.length || res.data.hasMore)
665
+ throw new Error('角色成员列表未完整返回;为避免误删,已停止');
666
+ return rows;
667
+ };
668
+ const before = await list();
669
+ const existing = new Set(before.map(row => row.id));
670
+ if (ids.some(id => !existing.has(id)))
671
+ throw new Error('有成员条目不属于该角色,已停止删除');
672
+ const res = await client.post(`${base}/api/bs/auth/role/${roleId}/member/del`, { ids });
673
+ if (res?.code !== 200 || !res?.status || res?.fail)
674
+ throw new Error(`删除角色成员失败:${res?.msg || '未知错误'}`);
675
+ const remaining = new Set((await list()).map(row => row.id));
676
+ if (ids.some(id => remaining.has(id)) || before.some(row => !ids.includes(row.id) && !remaining.has(row.id))) {
677
+ throw new Error('平台返回成功,但成员列表回读异常;请先核实实际状态,不要直接重试');
678
+ }
679
+ console.log(JSON.stringify({ success: true, roleId, deletedIds: ids }, null, 2));
680
+ });
327
681
  }
328
682
  //# sourceMappingURL=role.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"role.js","sourceRoot":"","sources":["../../src/commands/role.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role.js","sourceRoot":"","sources":["../../src/commands/role.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"special.d.ts","sourceRoot":"","sources":["../../src/commands/special.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCpC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CA+djE"}
1
+ {"version":3,"file":"special.d.ts","sourceRoot":"","sources":["../../src/commands/special.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0CpC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAogBjE"}