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
@@ -0,0 +1,62 @@
1
+ /**
2
+ * 组织浏览列表 —— `browser/data/{kind}`。
3
+ *
4
+ * ⚠ **这个端点的本相是「列表/树」,不是「搜索」。** 空 `quickSearchDatas` 就返回全部,
5
+ * 带 `current` / `pageSize` 分页与 `total` 总数;`quickSearchDatas.name` 只是在它上面加一层
6
+ * 名字过滤。角色成员那边一直拿它配名字当"搜索接口"用,容易看成它只会搜索 ——
7
+ * `org subcompany list` / `org department list` 走的就是**空搜索**那条路。
8
+ *
9
+ * 与选择器那条(`browser/complete/{kind}`)的区别:这里返回**富记录**
10
+ * (带 `parent` / `datarank` / `subcompanyid` 这类组织字段),选择器那条只回展示用的摘要。
11
+ * 按 id 取值两条都不是 —— 那条是 `browser/destData/{kind}`(见 `role-member.ts`)。
12
+ */
13
+ /** 组织浏览端点。`{kind}` 取 `department` / `subcompany`。 */
14
+ export const ORG_BROWSER_BASE = '/api/hrm/common/browser/data';
15
+ /** 类型的中文名。 */
16
+ export const ORG_BROWSE_LABEL = {
17
+ department: '部门',
18
+ subcompany: '分部',
19
+ };
20
+ /**
21
+ * 列表请求体。
22
+ *
23
+ * `formDatas` 那四个条件组留空即可 —— 它们是**高级筛选**用的,空对象等于不筛,
24
+ * 真正生效的是 `quickSearchDatas`。`cmd: 'list'` 是平台认的列表指令。
25
+ */
26
+ export function buildOrgListPayload(kind, opts = {}) {
27
+ return {
28
+ browserMultiple: true,
29
+ hideManager: 1,
30
+ cmd: 'list',
31
+ isRoleMaintainer: false,
32
+ ...(opts.roleId ? { roleId: opts.roleId } : {}),
33
+ current: opts.page ?? 1,
34
+ pageSize: opts.pageSize ?? 50,
35
+ formDatas: {},
36
+ type: 'and',
37
+ stopDepartment: false,
38
+ enableSubcompany: false,
39
+ quickSearchDatas: opts.name ? { name: opts.name } : {},
40
+ };
41
+ }
42
+ /**
43
+ * 从 `browser/data/{kind}` 的返回里抽列表。
44
+ *
45
+ * 行在 **`response.data.data`**(`data` 外层是分页包装,还挂着 `template` 与 `dataType`)。
46
+ */
47
+ export function extractOrgList(response) {
48
+ const payload = response?.data;
49
+ const raw = Array.isArray(payload?.data) ? payload.data : [];
50
+ return {
51
+ current: Number(payload?.current ?? 1) || 1,
52
+ total: Number(payload?.total ?? raw.length) || 0,
53
+ rows: raw.map((r) => ({
54
+ id: String(r?.id ?? ''),
55
+ name: String(r?.name ?? r?.content ?? ''),
56
+ title: String(r?.title ?? ''),
57
+ parent: String(r?.parent ?? ''),
58
+ code: String(r?.code ?? ''),
59
+ })),
60
+ };
61
+ }
62
+ //# sourceMappingURL=org-browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"org-browser.js","sourceRoot":"","sources":["../../src/services/org-browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,qDAAqD;AACrD,MAAM,CAAC,MAAM,gBAAgB,GAAG,8BAA8B,CAAC;AAK/D,cAAc;AACd,MAAM,CAAC,MAAM,gBAAgB,GAAkC;IAC7D,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;CACjB,CAAC;AAaF;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAmB,EAAE,OAAuB,EAAE;IAE9C,OAAO;QACL,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,CAAC;QACd,GAAG,EAAE,MAAM;QACX,gBAAgB,EAAE,KAAK;QACvB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;QAC7B,SAAS,EAAE,EAAE;QACb,IAAI,EAAE,KAAK;QACX,cAAc,EAAE,KAAK;QACrB,gBAAgB,EAAE,KAAK;QACvB,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;KACvD,CAAC;AACJ,CAAC;AAsBD;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,QAAa;IAC1C,MAAM,OAAO,GAAG,QAAQ,EAAE,IAAI,CAAC;IAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC;QAC3C,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAChD,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YACzB,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC;YACvB,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;YACzC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC;YAC/B,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;SAC5B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * 日期区间的「快捷档」。
3
+ *
4
+ * 条件设计器里挑一个日期字段选「区间」后,值输入框旁有一排快捷:
5
+ * 今天 / 昨天 / 明天 / 本周 / … / 去年,共 16 档。点一下**不会**存什么「动态」标记 ——
6
+ * 设计器当场把区间算成**具体日期**填进去(存下来的报文里没有任何 dynamic / relative 之类的键,
7
+ * `rootStr` 也是 `( 创建时间 区间 '2026-01-01 00:00:00' ~ '2026-12-31 23:59:59' )` 这种死文案)。
8
+ * 所以这里也照做:以「当下」为基准算一次,产出与手工点选**逐字节一致**。
9
+ *
10
+ * 口径(与设计器一致,**周从周一起算**):
11
+ * 起点 = 该区间首日 `00:00:00`,终点 = 该区间末日 `23:59:59`,格式 `YYYY-MM-DD HH:mm:ss`。
12
+ *
13
+ * ⚠ 产出是**静态**的,和平台一样:每次调用按当时的日期重算,不做运行期动态刷新。
14
+ */
15
+ export declare const QUICK_DATE_LABELS: readonly ["今天", "昨天", "明天", "本周", "上一周", "下一周", "本月", "上一月", "下一月", "本季", "上一季", "下一季", "今年", "上半年", "下半年", "去年"];
16
+ export type QuickDateLabel = (typeof QUICK_DATE_LABELS)[number];
17
+ export declare function isQuickDateLabel(value: string): boolean;
18
+ /** 解析成 16 档之一;别名同时接受。 */
19
+ export declare function normalizeQuickDateLabel(value: string): QuickDateLabel;
20
+ /** 快捷档 → `[起点, 终点]`(`YYYY-MM-DD HH:mm:ss`)。`now` 可注入,便于测试。 */
21
+ export declare function resolveQuickDateRange(label: string, now?: Date): [string, string];
22
+ //# sourceMappingURL=quick-date-range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-date-range.d.ts","sourceRoot":"","sources":["../../src/services/quick-date-range.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,iBAAiB,mHAMpB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAqBhE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,yBAAyB;AACzB,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAMrE;AAED,8DAA8D;AAC9D,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,GAAE,IAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAgD7F"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * 日期区间的「快捷档」。
3
+ *
4
+ * 条件设计器里挑一个日期字段选「区间」后,值输入框旁有一排快捷:
5
+ * 今天 / 昨天 / 明天 / 本周 / … / 去年,共 16 档。点一下**不会**存什么「动态」标记 ——
6
+ * 设计器当场把区间算成**具体日期**填进去(存下来的报文里没有任何 dynamic / relative 之类的键,
7
+ * `rootStr` 也是 `( 创建时间 区间 '2026-01-01 00:00:00' ~ '2026-12-31 23:59:59' )` 这种死文案)。
8
+ * 所以这里也照做:以「当下」为基准算一次,产出与手工点选**逐字节一致**。
9
+ *
10
+ * 口径(与设计器一致,**周从周一起算**):
11
+ * 起点 = 该区间首日 `00:00:00`,终点 = 该区间末日 `23:59:59`,格式 `YYYY-MM-DD HH:mm:ss`。
12
+ *
13
+ * ⚠ 产出是**静态**的,和平台一样:每次调用按当时的日期重算,不做运行期动态刷新。
14
+ */
15
+ export const QUICK_DATE_LABELS = [
16
+ '今天', '昨天', '明天',
17
+ '本周', '上一周', '下一周',
18
+ '本月', '上一月', '下一月',
19
+ '本季', '上一季', '下一季',
20
+ '今年', '上半年', '下半年', '去年',
21
+ ];
22
+ /**
23
+ * 英文别名。中文标签在部分终端(尤其 Git Bash)经命令行传参会被转成 GBK,
24
+ * 想避开编码问题就用这些;两者等价。
25
+ */
26
+ const ALIASES = {
27
+ today: '今天', yesterday: '昨天', tomorrow: '明天',
28
+ thisWeek: '本周', lastWeek: '上一周', nextWeek: '下一周',
29
+ thisMonth: '本月', lastMonth: '上一月', nextMonth: '下一月',
30
+ thisQuarter: '本季', lastQuarter: '上一季', nextQuarter: '下一季',
31
+ thisYear: '今年', firstHalf: '上半年', secondHalf: '下半年', lastYear: '去年',
32
+ };
33
+ const pad = (n) => String(n).padStart(2, '0');
34
+ const dayStart = (d) => `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())} 00:00:00`;
35
+ const dayEnd = (d) => `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())} 23:59:59`;
36
+ const addDays = (d, n) => new Date(d.getFullYear(), d.getMonth(), d.getDate() + n);
37
+ /** 周一为 0(设计器日历表头是「一 二 三 四 五 六 日」)。 */
38
+ const weekdayIndex = (d) => (d.getDay() + 6) % 7;
39
+ export function isQuickDateLabel(value) {
40
+ return QUICK_DATE_LABELS.includes(value) || Object.hasOwn(ALIASES, value);
41
+ }
42
+ /** 解析成 16 档之一;别名同时接受。 */
43
+ export function normalizeQuickDateLabel(value) {
44
+ const raw = String(value ?? '').trim();
45
+ if (QUICK_DATE_LABELS.includes(raw))
46
+ return raw;
47
+ const alias = ALIASES[raw];
48
+ if (alias)
49
+ return alias;
50
+ throw new Error(`未知的日期快捷「${value}」;可用:${QUICK_DATE_LABELS.join(' / ')}(或对应英文别名)`);
51
+ }
52
+ /** 快捷档 → `[起点, 终点]`(`YYYY-MM-DD HH:mm:ss`)。`now` 可注入,便于测试。 */
53
+ export function resolveQuickDateRange(label, now = new Date()) {
54
+ const name = normalizeQuickDateLabel(label);
55
+ const y = now.getFullYear();
56
+ const m = now.getMonth();
57
+ const today = new Date(y, m, now.getDate());
58
+ let start;
59
+ let end;
60
+ switch (name) {
61
+ case '今天':
62
+ start = today;
63
+ end = today;
64
+ break;
65
+ case '昨天':
66
+ start = addDays(today, -1);
67
+ end = start;
68
+ break;
69
+ case '明天':
70
+ start = addDays(today, 1);
71
+ end = start;
72
+ break;
73
+ case '本周':
74
+ start = addDays(today, -weekdayIndex(today));
75
+ end = addDays(start, 6);
76
+ break;
77
+ case '上一周':
78
+ start = addDays(addDays(today, -weekdayIndex(today)), -7);
79
+ end = addDays(start, 6);
80
+ break;
81
+ case '下一周':
82
+ start = addDays(addDays(today, -weekdayIndex(today)), 7);
83
+ end = addDays(start, 6);
84
+ break;
85
+ case '本月':
86
+ start = new Date(y, m, 1);
87
+ end = new Date(y, m + 1, 0);
88
+ break;
89
+ case '上一月':
90
+ start = new Date(y, m - 1, 1);
91
+ end = new Date(y, m, 0);
92
+ break;
93
+ case '下一月':
94
+ start = new Date(y, m + 1, 1);
95
+ end = new Date(y, m + 2, 0);
96
+ break;
97
+ case '本季': {
98
+ const q = Math.floor(m / 3) * 3;
99
+ start = new Date(y, q, 1);
100
+ end = new Date(y, q + 3, 0);
101
+ break;
102
+ }
103
+ case '上一季': {
104
+ const q = Math.floor(m / 3) * 3 - 3;
105
+ start = new Date(y, q, 1);
106
+ end = new Date(y, q + 3, 0);
107
+ break;
108
+ }
109
+ case '下一季': {
110
+ const q = Math.floor(m / 3) * 3 + 3;
111
+ start = new Date(y, q, 1);
112
+ end = new Date(y, q + 3, 0);
113
+ break;
114
+ }
115
+ case '今年':
116
+ start = new Date(y, 0, 1);
117
+ end = new Date(y, 11, 31);
118
+ break;
119
+ case '上半年':
120
+ start = new Date(y, 0, 1);
121
+ end = new Date(y, 5, 30);
122
+ break;
123
+ case '下半年':
124
+ start = new Date(y, 6, 1);
125
+ end = new Date(y, 11, 31);
126
+ break;
127
+ case '去年':
128
+ start = new Date(y - 1, 0, 1);
129
+ end = new Date(y - 1, 11, 31);
130
+ break;
131
+ }
132
+ return [dayStart(start), dayEnd(end)];
133
+ }
134
+ //# sourceMappingURL=quick-date-range.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-date-range.js","sourceRoot":"","sources":["../../src/services/quick-date-range.ts"],"names":[],"mappings":"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"}
@@ -15,12 +15,17 @@
15
15
  *
16
16
  * 搜索那一步不在这里 —— 人员走 `getEmployeeByKeyWords`、部门/分部走
17
17
  * `browser/data/{department,subcompany}`,各自形状不同,由调用方负责。
18
+ *
19
+ * 取对象有**两条入口**,最终都汇到 {@link buildMemberEntry}:
20
+ * - **按名字**:搜索接口 + {@link pickExact}(精确同名优先,撞名报错并列候选)
21
+ * - **按 id**:`browser/destData/{kind}` + `selectIds`(见本文件末尾「按 ID 取对象」一段)
22
+ * 两条路都产出同一种 raw,所以后面的构造与保存**只有一份**。
18
23
  */
19
24
  /**
20
25
  * 角色成员的对象类型,与平台 `objType` 同值。
21
26
  *
22
27
  * 这几项就是保存报文里 `objectTypeFilter` 白名单中**可以逐个选**的那些:
23
- * `resource`(人员) / `department`(部门) / `subcompany`(分部) / `position`(岗位) / `channel`(渠道)。
28
+ * `resource`(人员) / `department`(部门) / `subcompany`(分部) / `position`(岗位) / `channel`(群组)。
24
29
  * 白名单里另三项(`all` 全体 / `external` 外部 / `allExternal` 全部外部)**不是逐个选的对象**,
25
30
  * 语义不同,不走这里。
26
31
  *
@@ -29,7 +34,16 @@
29
34
  */
30
35
  export type MemberKind = 'resource' | 'department' | 'subcompany' | 'position' | 'channel';
31
36
  export declare const MEMBER_KINDS: readonly MemberKind[];
32
- /** 类型的中文名(错误信息与命令输出用)。 */
37
+ /**
38
+ * 类型的中文名(错误信息与命令输出用)。
39
+ *
40
+ * ⚠ **`channel` 是「群组」不是「渠道」** —— 类型名与界面名不一致,别按字面翻。
41
+ * 平台各处同此:报表共享对象表 `channel` → `targetType 14` → UI 称「群组」,
42
+ * 浏览器统一为 `POST /api/hrm/common/browser/data/channel`(`/.../group` 会 `browser not found`)。
43
+ * 这里取的正是同一个浏览器端点,所以界面名同样是「群组」。
44
+ *
45
+ * 另注:消息提醒那边的「推送渠道」(im/云桥/邮件/短信)是**另一回事**,别混。
46
+ */
33
47
  export declare const MEMBER_KIND_LABEL: Record<MemberKind, string>;
34
48
  /** 判定用户输入的形状是不是合法成员类型(CLI 侧收窄,比平台报错早)。 */
35
49
  export declare function isMemberKind(v: string): v is MemberKind;
@@ -60,8 +74,27 @@ export declare function buildMemberEntry(kind: MemberKind, raw: any): Record<str
60
74
  * 从搜索结果里挑出目标对象:**精确同名优先**;只有一条结果时用它;否则报错。
61
75
  *
62
76
  * 不取首条 —— 同名或模糊命中时取首条会**静默加错人**,事后只能去角色里一条条翻。
77
+ *
78
+ * 报错文案**必须给出路**:名字撞了就报"改用 ID",并列候选 id。否则用户只看到
79
+ * "无法确定是哪一个",在 CLI 里既拿不到候选、也不知道下一步该传什么。
63
80
  */
64
81
  export declare function pickExact(list: any[] | undefined, keyword: string, label: string, nameOf: (x: any) => unknown): any;
82
+ /** 「成员级别」:界面名 ↔ `obj_level`。实测(同一角色里三人的界面名与其报文逐一对照)。 */
83
+ export declare const MEMBER_LEVEL_CODES: Record<string, string>;
84
+ /** 成员级别的界面名(帮助文案用)。 */
85
+ export declare const MEMBER_LEVEL_LABELS: string[];
86
+ /**
87
+ * 「分权范围」:界面名 ↔ `org_permission`。
88
+ *
89
+ * 码表取自平台的表单接口 `GET /api/bs/auth/role/getOrgPermissionForm?id=<成员行id>&roleId=<角色id>`
90
+ * 的 `items.scopeType.options`(服务端给的就是 id/content 对),**不是猜的**。
91
+ * 该接口同时给出 `subcompany` / `department` 两个浏览框字段 —— 选「指定分部 / 指定部门」时才用得上。
92
+ */
93
+ export declare const ORG_SCOPE_CODES: Record<string, string>;
94
+ /** 「指定分部 / 指定部门」这两档要额外给机构,其余档不用。 */
95
+ export declare const ORG_SCOPES_NEEDING_ORG: string[];
96
+ /** 分权范围的界面名(帮助文案用)。 */
97
+ export declare const ORG_SCOPE_LABELS: string[];
65
98
  export interface MemberSaveOptions {
66
99
  /** 安全级别的可选范围。**随租户配置变**(某租户 0–100、另一个 -999–999),不要当成固定值。 */
67
100
  secMin?: number;
@@ -70,6 +103,10 @@ export interface MemberSaveOptions {
70
103
  isSeclevel?: boolean;
71
104
  /** 部门成员的归属属性(`subordinate` 含下属部门 / `partTimeStaff` 含兼职人员)。 */
72
105
  departmentAttribute?: string[];
106
+ /** 成员级别(`obj_level`):总部 1 / 分部 2 / 部门 3。缺省 1。 */
107
+ level?: string;
108
+ /** 分权范围(`org_permission`):见 {@link ORG_SCOPE_CODES}。缺省 `ALL_SCOPE`。 */
109
+ orgScope?: string;
73
110
  }
74
111
  /**
75
112
  * 组装 `member/save-or-update` 的报文。
@@ -96,4 +133,38 @@ export interface RoleMemberRow {
96
133
  * 别去猜别的键(`displayData` 是同一份内容的副本)。
97
134
  */
98
135
  export declare function extractMemberRows(response: any): RoleMemberRow[];
136
+ /**
137
+ * 「按 id 取对象」端点:`browser/destData/{kind}`。
138
+ *
139
+ * 名字是唯一的入口时,撞名就没有出路 —— 这条是**第二条路**:直接给 id 把对象取回来。
140
+ * 取回来之后**仍走同一个 {@link buildMemberEntry}**:平台存的不是"只给 id",
141
+ * 而是这个对象按各自形状再加工(人员的头像/工号/首字母,部门分部的 icon/title)。
142
+ *
143
+ * 与选择器那条(`browser/complete/{kind}`)的分工:`complete` 只认 `searchValue`(按名字搜),
144
+ * **不认 `selectIds`**(传了也被忽略、照吐整个列表);按 id 取值只此一条。
145
+ */
146
+ export declare const DEST_DATA_BASE = "/api/hrm/common/browser/destData";
147
+ /**
148
+ * `destData/{kind}` 的请求体。
149
+ *
150
+ * ⚠ `selectIds` **必须是逗号分隔的字符串**。传数组(`["a"]`)平台照样 200,
151
+ * 但**静默返回空数组** —— 不报错、不提示,看着就像"这个 id 不存在"。多个 id 写 `"a,b"`。
152
+ *
153
+ * `roleId` 是页面上的上下文(选择器是在角色里打开的);不带也能取到,带上与页面一致。
154
+ */
155
+ export declare function buildDestDataPayload(kind: MemberKind, selectIds: string[], roleId?: string): Record<string, unknown>;
156
+ /** 从 `destData/{kind}` 的返回里取对象数组;结构对不上就是空数组。 */
157
+ export declare function extractDestDataItems(response: any): any[];
158
+ /**
159
+ * 摊平命令行给的 id:一个参数里可以写逗号串,也可以给多个参数。
160
+ * 去重保序;一个有效 id 都没有时报错(静默忽略会变成"少加了一个")。
161
+ */
162
+ export declare function parseIdList(inputs: string[]): string[];
163
+ /**
164
+ * 核对「请求了 N 个、回来了几个」。
165
+ *
166
+ * ⚠ `destData` 对**不存在的 id 一声不吭地丢掉**(返回数组里没有它,也不报错)。
167
+ * 不核对就会出现"命令报成功、实际少加了一个" —— 这种错事后只能去角色里一条条翻。
168
+ */
169
+ export declare function assertAllIdsResolved(requestedIds: string[], items: any[], label: string): void;
99
170
  //# sourceMappingURL=role-member.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"role-member.d.ts","sourceRoot":"","sources":["../../src/services/role-member.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC;AAE3F,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAE7C,CAAC;AAEF,0BAA0B;AAC1B,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAMxD,CAAC;AAEF,0CAA0C;AAC1C,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,UAAU,CAEvD;AAED,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAEvD;AAqBD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiClE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAatG;AAED,oBAAoB;AACpB,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEpF;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,GAAG,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,GACnF,GAAG,CAcL;AAED,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8DAA8D;IAC9D,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACvC,IAAI,GAAE,iBAAsB,GAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuBzB;AAED,0CAA0C;AAC1C,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAK7D;AAED,uCAAuC;AACvC,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,aAAa,EAAE,CAehE"}
1
+ {"version":3,"file":"role-member.d.ts","sourceRoot":"","sources":["../../src/services/role-member.ts"],"names":[],"mappings":"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"}
@@ -15,17 +15,31 @@
15
15
  *
16
16
  * 搜索那一步不在这里 —— 人员走 `getEmployeeByKeyWords`、部门/分部走
17
17
  * `browser/data/{department,subcompany}`,各自形状不同,由调用方负责。
18
+ *
19
+ * 取对象有**两条入口**,最终都汇到 {@link buildMemberEntry}:
20
+ * - **按名字**:搜索接口 + {@link pickExact}(精确同名优先,撞名报错并列候选)
21
+ * - **按 id**:`browser/destData/{kind}` + `selectIds`(见本文件末尾「按 ID 取对象」一段)
22
+ * 两条路都产出同一种 raw,所以后面的构造与保存**只有一份**。
18
23
  */
19
24
  export const MEMBER_KINDS = [
20
25
  'resource', 'department', 'subcompany', 'position', 'channel',
21
26
  ];
22
- /** 类型的中文名(错误信息与命令输出用)。 */
27
+ /**
28
+ * 类型的中文名(错误信息与命令输出用)。
29
+ *
30
+ * ⚠ **`channel` 是「群组」不是「渠道」** —— 类型名与界面名不一致,别按字面翻。
31
+ * 平台各处同此:报表共享对象表 `channel` → `targetType 14` → UI 称「群组」,
32
+ * 浏览器统一为 `POST /api/hrm/common/browser/data/channel`(`/.../group` 会 `browser not found`)。
33
+ * 这里取的正是同一个浏览器端点,所以界面名同样是「群组」。
34
+ *
35
+ * 另注:消息提醒那边的「推送渠道」(im/云桥/邮件/短信)是**另一回事**,别混。
36
+ */
23
37
  export const MEMBER_KIND_LABEL = {
24
38
  resource: '人员',
25
39
  department: '部门',
26
40
  subcompany: '分部',
27
41
  position: '岗位',
28
- channel: '渠道',
42
+ channel: '群组',
29
43
  };
30
44
  /** 判定用户输入的形状是不是合法成员类型(CLI 侧收窄,比平台报错早)。 */
31
45
  export function isMemberKind(v) {
@@ -47,8 +61,17 @@ const DEFAULT_ICON = {
47
61
  position: 'Icon-post02',
48
62
  channel: 'Icon-channel01',
49
63
  };
50
- /** 姓名首字母:`logogram`(如 `rly`)首字母大写 → `R`。取不到就留空,不编。 */
64
+ /**
65
+ * 姓名首字母。
66
+ *
67
+ * 两条入口给的字段名不同:搜索接口给 `logogram`(如 `rly`,取首字母大写 → `R`),
68
+ * `destData` 直接给算好的 `indexType`。**先认现成的**,没有再自己从 `logogram` 推 ——
69
+ * 否则走 `--id` 加进来的人首字母会是空的,而按名字加的是 `R`,同一个人两种结果。
70
+ */
51
71
  function indexTypeOf(emp) {
72
+ const explicit = String(emp?.indexType ?? '').trim();
73
+ if (explicit)
74
+ return explicit;
52
75
  const logogram = String(emp?.logogram ?? '').trim();
53
76
  return logogram ? logogram[0].toUpperCase() : '';
54
77
  }
@@ -71,7 +94,7 @@ export function buildPersonEntry(emp) {
71
94
  cid: String(emp?.imCid ?? emp?.cid ?? ''),
72
95
  userid: String(emp?.userid ?? emp?.userId ?? id),
73
96
  name,
74
- statusCode: String(emp?.status ?? 'normal'),
97
+ statusCode: String(emp?.status ?? emp?.statusCode ?? 'normal'),
75
98
  content: name,
76
99
  title: name,
77
100
  contentDesc: name,
@@ -93,7 +116,8 @@ export function buildPersonEntry(emp) {
93
116
  stopDepartment: false,
94
117
  leaf: true,
95
118
  };
96
- const jobNum = String(emp?.jobNum ?? '').trim();
119
+ // 工号:搜索接口给 `jobNum`,`destData` 直接给 `number`(同一个值,两边都实测同号)
120
+ const jobNum = String(emp?.jobNum ?? emp?.number ?? '').trim();
97
121
  if (jobNum)
98
122
  entry.number = jobNum;
99
123
  return entry;
@@ -122,10 +146,22 @@ export function buildOrgEntry(raw, kind) {
122
146
  export function buildMemberEntry(kind, raw) {
123
147
  return kind === 'resource' ? buildPersonEntry(raw) : buildOrgEntry(raw, kind);
124
148
  }
149
+ /**
150
+ * 候选清单(报错文案用):`名字(id)`,最多列 5 条。
151
+ *
152
+ * **必须带 id** —— 只报名字的话,用户拿着"匹配到 2 条"的提示也没法在下一步指定是哪条。
153
+ */
154
+ function candidatesOf(rows, nameOf) {
155
+ const head = rows.slice(0, 5).map((x) => `${String(nameOf(x) ?? '')}(${String(x?.id ?? '')})`).join('、');
156
+ return `${head}${rows.length > 5 ? ' …' : ''}`;
157
+ }
125
158
  /**
126
159
  * 从搜索结果里挑出目标对象:**精确同名优先**;只有一条结果时用它;否则报错。
127
160
  *
128
161
  * 不取首条 —— 同名或模糊命中时取首条会**静默加错人**,事后只能去角色里一条条翻。
162
+ *
163
+ * 报错文案**必须给出路**:名字撞了就报"改用 ID",并列候选 id。否则用户只看到
164
+ * "无法确定是哪一个",在 CLI 里既拿不到候选、也不知道下一步该传什么。
129
165
  */
130
166
  export function pickExact(list, keyword, label, nameOf) {
131
167
  const rows = Array.isArray(list) ? list : [];
@@ -134,15 +170,45 @@ export function pickExact(list, keyword, label, nameOf) {
134
170
  if (exact.length === 1)
135
171
  return exact[0];
136
172
  if (exact.length > 1) {
137
- throw new Error(`${label}「${keyword}」匹配到 ${exact.length} 条同名记录,无法确定是哪一个`);
173
+ throw new Error(`${label}「${keyword}」匹配到 ${exact.length} 条同名记录,无法确定是哪一个:`
174
+ + `${candidatesOf(exact, nameOf)}。改用 --id 指定`);
138
175
  }
139
176
  if (rows.length === 0)
140
177
  throw new Error(`未找到${label}「${keyword}」`);
141
178
  if (rows.length === 1)
142
179
  return rows[0];
143
180
  throw new Error(`${label}「${keyword}」匹配到 ${rows.length} 条但没有同名项:`
144
- + `${rows.slice(0, 5).map(name).join('、')}${rows.length > 5 ? ' …' : ''}`);
181
+ + `${candidatesOf(rows, nameOf)}。改用 --id 指定`);
145
182
  }
183
+ /** 「成员级别」:界面名 ↔ `obj_level`。实测(同一角色里三人的界面名与其报文逐一对照)。 */
184
+ export const MEMBER_LEVEL_CODES = {
185
+ 总部: '1', 分部: '2', 部门: '3',
186
+ '1': '1', '2': '2', '3': '3',
187
+ };
188
+ /** 成员级别的界面名(帮助文案用)。 */
189
+ export const MEMBER_LEVEL_LABELS = ['总部', '分部', '部门'];
190
+ /**
191
+ * 「分权范围」:界面名 ↔ `org_permission`。
192
+ *
193
+ * 码表取自平台的表单接口 `GET /api/bs/auth/role/getOrgPermissionForm?id=<成员行id>&roleId=<角色id>`
194
+ * 的 `items.scopeType.options`(服务端给的就是 id/content 对),**不是猜的**。
195
+ * 该接口同时给出 `subcompany` / `department` 两个浏览框字段 —— 选「指定分部 / 指定部门」时才用得上。
196
+ */
197
+ export const ORG_SCOPE_CODES = {
198
+ 全部机构: 'ALL_SCOPE',
199
+ 同部门: 'ORIGINAL_DEPT_SCOPE',
200
+ 同部门的下级部门: 'ORIGINAL_DEPT_SUB_SCOPE',
201
+ 同部门及下级部门: 'ORIGINAL_DEPT_INCLUDE_SUB_SCOPE',
202
+ 同分部: 'ORIGINAL_SUBCOMPANY_SCOPE',
203
+ 同分部的下级分部: 'ORIGINAL_SUBCOMPANY_SUB_SCOPE',
204
+ 同分部及下级分部: 'ORIGINAL_SUBCOMPANY_INCLUDE_SUB_SCOPE',
205
+ 指定分部: 'SUBCOMPANY',
206
+ 指定部门: 'DEPARTMENT',
207
+ };
208
+ /** 「指定分部 / 指定部门」这两档要额外给机构,其余档不用。 */
209
+ export const ORG_SCOPES_NEEDING_ORG = ['SUBCOMPANY', 'DEPARTMENT'];
210
+ /** 分权范围的界面名(帮助文案用)。 */
211
+ export const ORG_SCOPE_LABELS = Object.keys(ORG_SCOPE_CODES);
146
212
  /**
147
213
  * 组装 `member/save-or-update` 的报文。
148
214
  *
@@ -152,9 +218,9 @@ export function pickExact(list, keyword, label, nameOf) {
152
218
  export function buildMemberSavePayload(kind, entries, opts = {}) {
153
219
  return {
154
220
  objType: kind,
155
- obj_level: '1',
221
+ obj_level: opts.level ?? '1',
156
222
  seclevel: { max: opts.secMax ?? 100, min: opts.secMin ?? 0 },
157
- org_permission: 'ALL_SCOPE',
223
+ org_permission: opts.orgScope ?? 'ALL_SCOPE',
158
224
  position_level: '1',
159
225
  isOpenSubcompany: true,
160
226
  isSeclevel: Boolean(opts.isSeclevel),
@@ -203,4 +269,70 @@ export function extractMemberRows(response) {
203
269
  userId: String(r?.userId ?? ''),
204
270
  }));
205
271
  }
272
+ // ---------------------------------------------------------------- 按 ID 取对象
273
+ /**
274
+ * 「按 id 取对象」端点:`browser/destData/{kind}`。
275
+ *
276
+ * 名字是唯一的入口时,撞名就没有出路 —— 这条是**第二条路**:直接给 id 把对象取回来。
277
+ * 取回来之后**仍走同一个 {@link buildMemberEntry}**:平台存的不是"只给 id",
278
+ * 而是这个对象按各自形状再加工(人员的头像/工号/首字母,部门分部的 icon/title)。
279
+ *
280
+ * 与选择器那条(`browser/complete/{kind}`)的分工:`complete` 只认 `searchValue`(按名字搜),
281
+ * **不认 `selectIds`**(传了也被忽略、照吐整个列表);按 id 取值只此一条。
282
+ */
283
+ export const DEST_DATA_BASE = '/api/hrm/common/browser/destData';
284
+ /**
285
+ * `destData/{kind}` 的请求体。
286
+ *
287
+ * ⚠ `selectIds` **必须是逗号分隔的字符串**。传数组(`["a"]`)平台照样 200,
288
+ * 但**静默返回空数组** —— 不报错、不提示,看着就像"这个 id 不存在"。多个 id 写 `"a,b"`。
289
+ *
290
+ * `roleId` 是页面上的上下文(选择器是在角色里打开的);不带也能取到,带上与页面一致。
291
+ */
292
+ export function buildDestDataPayload(kind, selectIds, roleId) {
293
+ return {
294
+ browserMultiple: true,
295
+ hideManager: 1,
296
+ isRoleMaintainer: false,
297
+ ...(roleId ? { roleId } : {}),
298
+ newly: 1,
299
+ selectIds: selectIds.join(','),
300
+ };
301
+ }
302
+ /** 从 `destData/{kind}` 的返回里取对象数组;结构对不上就是空数组。 */
303
+ export function extractDestDataItems(response) {
304
+ const items = response?.data?.data;
305
+ return Array.isArray(items) ? items : [];
306
+ }
307
+ /**
308
+ * 摊平命令行给的 id:一个参数里可以写逗号串,也可以给多个参数。
309
+ * 去重保序;一个有效 id 都没有时报错(静默忽略会变成"少加了一个")。
310
+ */
311
+ export function parseIdList(inputs) {
312
+ const out = [];
313
+ for (const raw of inputs) {
314
+ for (const part of String(raw).split(',')) {
315
+ const id = part.trim();
316
+ if (id && !out.includes(id))
317
+ out.push(id);
318
+ }
319
+ }
320
+ if (!out.length)
321
+ throw new Error('没有解析出任何有效 ID');
322
+ return out;
323
+ }
324
+ /**
325
+ * 核对「请求了 N 个、回来了几个」。
326
+ *
327
+ * ⚠ `destData` 对**不存在的 id 一声不吭地丢掉**(返回数组里没有它,也不报错)。
328
+ * 不核对就会出现"命令报成功、实际少加了一个" —— 这种错事后只能去角色里一条条翻。
329
+ */
330
+ export function assertAllIdsResolved(requestedIds, items, label) {
331
+ const got = new Set(items.map((x) => String(x?.id ?? '')));
332
+ const missing = requestedIds.filter((id) => !got.has(id));
333
+ if (missing.length) {
334
+ throw new Error(`${label}里有 ${missing.length} 个 ID 取不到:${missing.join('、')}`
335
+ + '(id 不存在,或不属于当前租户)');
336
+ }
337
+ }
206
338
  //# sourceMappingURL=role-member.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"role-member.js","sourceRoot":"","sources":["../../src/services/role-member.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role-member.js","sourceRoot":"","sources":["../../src/services/role-member.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.5.7",
3
+ "version": "1.5.10",
4
4
  "description": "Eteams/Ebuilder CLI — 泛微 OA 命令行工具",
5
5
  "type": "module",
6
6
  "files": [