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
@@ -6,7 +6,7 @@ import { createCustomPhysicalForm, applyInitialFieldsToNewForm } from '../servic
6
6
  import { normalizeFieldDef } from '../services/form-field-validate.js';
7
7
  import { ebuilderFormUrl, FORM_PAGE_PATH, buildFormPageBody, splitByThirdParty, SPECIAL_FRONT_EBBUSINESSID, } from '../services/special-route.js';
8
8
  import { listSystemPages, listPagesByGroup, getPageById, savePageAs, setPageMapping, PAGE_MODULE_CUSTOM, } from '../services/special-page.js';
9
- import { listFormLayouts, createFormLayout, } from '../services/workflow-node-layout.js';
9
+ import { formMetaOf, listSpecialLayouts, createSpecialLayout, checkAppMenuSetPermission, getAppReadOnly, isLayoutPermissionError, buildLayoutPermissionHint, } from '../services/special-layout.js';
10
10
  import { fetchTableMapping, fetchFormSchema, makeOptionFetcher, buildOneData, saveDataBatch, } from '../services/form-data-openapi.js';
11
11
  /**
12
12
  * 专项应用交付命令组(`special`)。
@@ -293,19 +293,17 @@ export function registerSpecialCommands(program) {
293
293
  });
294
294
  // ─── 布局:建 / 复制 ────────────────────────────────────────────────────
295
295
  //
296
+ // 走**应用前台**接口族 `/api/ebuilder/form/form/layout/*`,并在 `customParam` 带
297
+ // `terminal:"front"` —— 平台据此走第三方应用菜单权限分支,而不是后台应用编辑权限。
298
+ // 前提满足其一:应用可编辑(readOnly=false),或账号有该应用的「表单菜单」权限
299
+ // (`checkAppPermit.menuSetPermission=true`)。详见 services/special-layout.ts。
300
+ //
296
301
  // 布局这一层**没有**自己的「映射转换」—— 那是页面级的(见 `special page mapping`)。
297
302
  // 这里只做「列」和「建/复制」;复制出来之后的「调整」是标准命令的活:
298
303
  // `form layout read|set-read-only|set-required|move|remove-field --view-id <新布局ID>`
299
304
  // 复制出来的布局照样能改(`isSys`/`readOnly` 是行上的展示标记,**不挡编辑**,实测过)。
300
305
  const layout = special.command('layout').description('专项应用:表单布局(建 / 复制;调整走标准 form layout --view-id)');
301
- /** objId → formId。`obj/getInfo` 对三方表同样有效,不必先知道 appId。 */
302
- async function formIdOf(client, baseUrl, objId) {
303
- const res = await client.get(`${baseUrl}/api/ebuilder/form/obj/getInfo/${encodeURIComponent(objId)}`);
304
- const formId = String(res?.data?.formId || '');
305
- if (!formId)
306
- throw new Error(`无法获取 formId(objId=${objId}):${res?.msg || '接口未返回 formId'}`);
307
- return formId;
308
- }
306
+ const terminalsOf = (terminal) => terminal ? [terminal.toUpperCase()] : ['PC', 'MOBILE'];
309
307
  layout
310
308
  .command('list')
311
309
  .description('列出表单的布局(PC / MOBILE 两端)')
@@ -319,22 +317,25 @@ export function registerSpecialCommands(program) {
319
317
  const client = new ApiClient(auth);
320
318
  const baseUrl = auth.getBaseUrl();
321
319
  try {
322
- const formId = await formIdOf(client, baseUrl, objId);
323
- const terminals = o.terminal ? [o.terminal.toUpperCase()] : ['PC', 'MOBILE'];
320
+ const meta = await formMetaOf(client, baseUrl, objId);
321
+ if (!meta.appId)
322
+ throw new Error(`无法获取 appId(objId=${objId})`);
324
323
  const out = [];
325
- for (const terminal of terminals) {
326
- for (const r of await listFormLayouts(client, formId, { terminal, formKind: 'ebuilder' }))
324
+ for (const terminal of terminalsOf(o.terminal)) {
325
+ for (const r of await listSpecialLayouts(client, baseUrl, {
326
+ appId: meta.appId, objId: meta.objId, formId: meta.formId, terminal,
327
+ }))
327
328
  out.push({ terminal, ...r });
328
329
  }
329
330
  if (opts.json) {
330
- console.log(JSON.stringify({ objId, formId, layouts: out }, null, 2));
331
+ console.log(JSON.stringify({ objId, formId: meta.formId, appId: meta.appId, layouts: out }, null, 2));
331
332
  return;
332
333
  }
333
334
  if (!out.length) {
334
335
  console.log('该表单还没有任何布局');
335
336
  return;
336
337
  }
337
- console.log(`表单 ${objId}(formId ${formId})共 ${out.length} 套布局:`);
338
+ console.log(`表单 ${objId}(formId ${meta.formId})共 ${out.length} 套布局:`);
338
339
  for (const r of out) {
339
340
  const flags = [r.isDefault ? '默认' : '', r.isSys ? 'isSys' : '', r.readOnly ? 'readOnly' : ''].filter(Boolean).join('/');
340
341
  console.log(` ${r.id.padEnd(22)} ${String(r.terminalType || r.terminal).padEnd(7)} ${String(r.layoutType).padEnd(6)} ${String(r.name).padEnd(18)}${flags ? ` [${flags}]` : ''}`);
@@ -368,26 +369,61 @@ export function registerSpecialCommands(program) {
368
369
  throw new Error('--from 与 --empty 互斥,二选一。');
369
370
  if (!o.from && !o.empty)
370
371
  throw new Error('要么 --from <布局ID> 复制,要么 --empty 建空白。');
371
- const formId = await formIdOf(client, baseUrl, objId);
372
+ const meta = await formMetaOf(client, baseUrl, objId);
373
+ if (!meta.appId)
374
+ throw new Error(`无法获取 appId(objId=${objId})`);
372
375
  const terminal = String(o.terminal || 'PC').toUpperCase();
373
- const created = await createFormLayout(client, {
374
- formKind: 'ebuilder',
375
- formId,
376
- name: o.name,
377
- from: o.from,
378
- terminal,
379
- describe: o.describe,
380
- // ⚠ 必须是 false:eb 表单的表单级布局传 true 会 500「Cannot parse null string」,
381
- // 而且**布局还是会被建出来** —— 半失败写入,所以下面必须回读。
382
- isNodeLayout: false,
376
+ // 复制时类型跟随来源;来源可能在另一终端(常见:抄 PC 默认布局建移动端),
377
+ // 所以两端都列一遍再找。空布局默认 FLOW,与平台前台「新建布局」弹窗一致。
378
+ let source = null;
379
+ if (o.from) {
380
+ const all = [];
381
+ for (const t of terminalsOf()) {
382
+ all.push(...await listSpecialLayouts(client, baseUrl, {
383
+ appId: meta.appId, objId: meta.objId, formId: meta.formId, terminal: t,
384
+ }));
385
+ }
386
+ source = all.find((r) => r.id === String(o.from));
387
+ if (!source) {
388
+ throw new Error(`复制来源布局 ${o.from} 不在该表单的布局列表里。现有:${all.map((x) => `${x.name}(${x.id})`).join('、') || '(该表单还没有任何布局)'}`);
389
+ }
390
+ }
391
+ const layoutType = String(source?.layoutType || '').toUpperCase() === 'EXCEL' ? 'EXCEL' : 'FLOW';
392
+ let created;
393
+ try {
394
+ created = await createSpecialLayout(client, baseUrl, {
395
+ appId: meta.appId,
396
+ objId: meta.objId,
397
+ formId: meta.formId,
398
+ name: o.name,
399
+ from: o.from,
400
+ terminal,
401
+ layoutType,
402
+ describe: o.describe || undefined,
403
+ });
404
+ }
405
+ catch (err) {
406
+ const msg = err.message;
407
+ if (!isLayoutPermissionError(msg))
408
+ throw err;
409
+ // 平台只会回「没有相关权限」。把两个前提探出来,别让实施再去猜权限在哪。
410
+ const [menuSetPermission, readOnly] = await Promise.all([
411
+ checkAppMenuSetPermission(client, baseUrl, meta.appId),
412
+ getAppReadOnly(client, baseUrl, meta.appId),
413
+ ]);
414
+ throw new Error(`${msg}\n${buildLayoutPermissionHint(menuSetPermission, readOnly)}`);
415
+ }
416
+ // 回读校验:平台普遍「返回 200 却不落库」,所以以列表为准。
417
+ const rows = await listSpecialLayouts(client, baseUrl, {
418
+ appId: meta.appId, objId: meta.objId, formId: meta.formId, terminal,
383
419
  });
384
- // 回读校验:平台普遍「返回 200 却不落库」,更别说上面那种半失败写入。
385
- const rows = await listFormLayouts(client, formId, { terminal, formKind: 'ebuilder' });
386
- const hit = rows.find((r) => r.id === created.id);
420
+ const hit = created.id
421
+ ? rows.find((r) => r.id === created.id)
422
+ : rows.find((r) => r.name === o.name && r.terminalType === terminal);
387
423
  if (!hit)
388
- throw new Error(`新建后回读不到布局 ${created.id},请到设计器确认`);
424
+ throw new Error(`新建后回读不到布局 ${created.id || o.name},请到设计器确认`);
389
425
  if (opts.json) {
390
- console.log(JSON.stringify({ success: true, objId, formId, layout: hit, copiedFrom: o.from || null }, null, 2));
426
+ console.log(JSON.stringify({ success: true, objId, formId: meta.formId, appId: meta.appId, layout: hit, copiedFrom: o.from || null }, null, 2));
391
427
  return;
392
428
  }
393
429
  console.log(`布局已新建: ${hit.name}(${hit.layoutType} / ${hit.terminalType})layoutId=${hit.id}`);
@@ -1 +1 @@
1
- {"version":3,"file":"special.js","sourceRoot":"","sources":["../../src/commands/special.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"special.js","sourceRoot":"","sources":["../../src/commands/special.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wf-form.d.ts","sourceRoot":"","sources":["../../src/commands/wf-form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AA8R9C;;;gHAGgH;AAChH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAClD,CAAC,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,EACzK,KAAK,GAAE;IAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAAO,GACnD,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAuEzE;AAWD,yCAAyC;AACzC,UAAU,SAAS;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxE,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,aAG1B,CAAC;AAEH;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EACtF,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GACvE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiIlC;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAuoEtE"}
1
+ {"version":3,"file":"wf-form.d.ts","sourceRoot":"","sources":["../../src/commands/wf-form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AA8R9C;;;gHAGgH;AAChH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAClD,CAAC,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,EACzK,KAAK,GAAE;IAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAAO,GACnD,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAuEzE;AAWD,yCAAyC;AACzC,UAAU,SAAS;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxE,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,aAG1B,CAAC;AAEH;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EACtF,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GACvE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiIlC;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAkhEtE"}
@@ -1641,7 +1641,7 @@ export function registerWorkflowFormCommands(program) {
1641
1641
  throw new Error(`未找到 EBuilder 关联字段 "${o.relateFrom}"`);
1642
1642
  const ebLd = parseLayout(ebField);
1643
1643
  // 目标表 objId:流程表单的 EBuilder 字段配置不返回 sformId(getConfig/getFormField 都不返),
1644
- // 所以需 --sform-id 显式传(与 ebuilder-scope 同款限制);config 里有则优先用。
1644
+ // 所以需 --sform-id 显式传;config 里有则优先用。
1645
1645
  const sformId = o.sformId || ebField.sformId || ebLd.sformId || ebLd.virtualFormId || '';
1646
1646
  // 从目标表查源字段(联系方式)→ fieldId + fieldName;source 传的是 fieldId 则免查直接可用
1647
1647
  let srcFieldId = o.relateFromSource;
@@ -1757,126 +1757,6 @@ export function registerWorkflowFormCommands(program) {
1757
1757
  process.exitCode = 1;
1758
1758
  }
1759
1759
  });
1760
- // ---------- wf-form ebuilder-scope(关联浏览数据范围)----------
1761
- // 流程表单 EBuilder 关联字段的浏览数据范围(如:关联客户时只选客户状态=启用的)。
1762
- // 抓包(mulinquan 2026-08-25):businessModule="ebuildercard"(非 eb 表的 ebuilderform),
1763
- // businessId=workflowId(非 formId),formId=流程表单 formId,controlId=EBuilder 字段 fieldId,
1764
- // browserType="ebuilder/form_ebuilder",scopeType="scopeSql",scopeInfoRender=条件树 JSON 字符串。
1765
- wfForm.command('ebuilder-scope')
1766
- .description('设置关联 EBuilder 字段的可选数据范围;用 --rule 指定目标表字段条件')
1767
- .argument('<formId>', '流程表单 formId')
1768
- .argument('<ebuilderFieldId>', 'EBuilder 关联字段 fieldId(controlId)')
1769
- .requiredOption('--workflow-id <wfId>', '工作流程 ID(businessId)')
1770
- .requiredOption('--sform-id <objId>', '目标表单 objId(EBuilder 关联的目标表,建字段时传的 --sform-id)')
1771
- .requiredOption('--rule <rule>', '筛选规则:目标表字段名:操作:值。操作 eq/neq/like/isnull/notnull。Select 值用选项名(如 客户状态:eq:启用)')
1772
- .action(async (formId, ebuilderFieldId, cmdOpts) => {
1773
- try {
1774
- const opts = program.opts();
1775
- const auth = await AuthSession.fromOptions(opts);
1776
- if (!auth)
1777
- throw new Error('无法加载认证');
1778
- const client = new ApiClient(auth);
1779
- const baseUrl = auth.getBaseUrl();
1780
- const sformId = cmdOpts.sformId;
1781
- const ebb = { ebbusinessid: formId };
1782
- // 1. 解析 rule:目标表字段名:操作:值
1783
- const [tgtFieldName, func, rawVal] = cmdOpts.rule.split(':');
1784
- if (!tgtFieldName || !func)
1785
- throw new Error('--rule 格式:字段名:操作:值(如 客户状态:eq:启用)');
1786
- // 2. 查目标表字段 → fieldId + fieldType + options(Select 解析选项 selectionId)
1787
- const tfd = await client.post(`${baseUrl}/api/ebuilder/form/dataset/v1/getFields`, { objId: sformId, userid: auth.userId, tenantKey: auth.tenantKey, isReturnDetail: 'y' });
1788
- const tgtFields = [...(tfd?.data?.mainFields || []), ...(tfd?.data?.detailFields || []).flatMap((d) => d.fields || [])];
1789
- const tf = tgtFields.find((f) => f.fieldName === tgtFieldName || String(f.fieldId) === tgtFieldName);
1790
- if (!tf)
1791
- throw new Error(`目标表 ${sformId} 未找到字段 "${tgtFieldName}"`);
1792
- const tgtFieldId = String(tf.fieldId);
1793
- const tgtFieldType = tf.fieldType || tf.componentKey || 'Text';
1794
- const tgtTitle = tf.fieldName || tgtFieldName;
1795
- // 目标表 formId:getFormField 拿选项需 formId(不是 objId)。从 EBuilder 字段配置读 appId → getList 解析
1796
- let tgtAppId = '';
1797
- try {
1798
- const ef = await client.post(`${baseUrl}${ROUTE}/field/manage/getFormField`, { module: MODULE, formTableField: { formField: { id: ebuilderFieldId, form: { id: formId } } } }, ebb);
1799
- tgtAppId = ef?.data?.appId || '';
1800
- }
1801
- catch { /* 无则跳过 */ }
1802
- let tgtFormId = sformId;
1803
- if (tgtAppId) {
1804
- try {
1805
- const fi = await resolveFormRecord(client, baseUrl, tgtAppId, sformId);
1806
- if (fi?.formId)
1807
- tgtFormId = String(fi.formId);
1808
- }
1809
- catch { /* 保持 sformId 兜底 */ }
1810
- }
1811
- // 3. 解析值:Select 用选项名(浏览器抓包:value=选项名 + config.options 名→id 映射,selectValue.id=selectionId);
1812
- // 文本用字面值。businessModule/module 必须是 'workflow'(之前用 ebuildercard 平台不认)。
1813
- let selectValue = null;
1814
- let valueStr = rawVal || '';
1815
- let configOptions = [];
1816
- if (/Select|RadioBox|CheckBox/i.test(tgtFieldType) && rawVal) {
1817
- const gfOpts = await client.post(`${baseUrl}/api/ebuilder/form/form/field/manage/getFormField`, { module: 'ebuilderform', formTableField: { formField: { id: tgtFieldId, form: { id: tgtFormId } } } }, { ebbusinessid: tgtFormId });
1818
- const fopts = Array.isArray(gfOpts?.data?.options) ? gfOpts.data.options : [];
1819
- configOptions = fopts.map((o) => ({ name: o.name, id: String(o.selectionId || o.valueKey || o.id) }));
1820
- const opt = fopts.find((o) => o.name === rawVal || o.valueKey === rawVal || String(o.selectionId || o.id) === rawVal);
1821
- if (opt) {
1822
- const selId = String(opt.selectionId || opt.valueKey || opt.id);
1823
- selectValue = { id: selId, content: opt.name, type: 'SELECTION_OPTION' };
1824
- valueStr = opt.name; // 存选项名,平台按 config.options 映射回 selectionId
1825
- }
1826
- }
1827
- // 4. 构建 scopeInfoRender 条件树(对齐浏览器抓包:conditions.type/text、config.options)
1828
- const rootKey = String(Date.now());
1829
- const nodeKey = String(Date.now() + 1);
1830
- const tree = {
1831
- key: rootKey, relationship: '1', isParent: true, isNewFilter: true, parentNode: '',
1832
- datas: [{
1833
- isParent: false, parentNode: rootKey,
1834
- id: `field_${tgtFieldId}`, fieldName: `field_${tgtFieldId}`,
1835
- fieldType: tgtFieldType, text: tgtTitle, compType: tgtFieldType, type: 'condition',
1836
- conditions: {
1837
- func, value: valueStr, type: '', text: '',
1838
- ...(selectValue ? { selectValue, customBrowserValue: [selectValue] } : {}),
1839
- customValue: '',
1840
- },
1841
- config: configOptions.length ? { name: tgtTitle, options: configOptions, title: tgtTitle } : { name: tgtTitle, title: tgtTitle },
1842
- subTableId: '', key: nodeKey,
1843
- }],
1844
- version: 1, showFilterIsNull: false,
1845
- };
1846
- // 5. batchSave(module/businessModule 用 workflow,非 ebuildercard)。
1847
- // 更新须带现有 scope 记录 id(浏览器抓包实测:selectPage 读 → 拿 id → batchSave 带 id 更新;
1848
- // 不带 id 会新建/覆盖不对,平台读不到)。selectPage 读接口 POST /api/bcw/browserDataScope/selectPage。
1849
- let scopeId = '';
1850
- try {
1851
- const rd = await client.post(`${baseUrl}/api/bcw/browserDataScope/selectPage`, {
1852
- businessId: cmdOpts.workflowId, businessModule: 'workflow',
1853
- controlId: ebuilderFieldId, browserType: 'ebuilder/form_ebuilder',
1854
- formId, module: 'workflow',
1855
- });
1856
- const rec = rd?.data?.records?.[0] || rd?.data?.data?.[0] || (Array.isArray(rd?.data) ? rd.data[0] : undefined);
1857
- if (rec?.id)
1858
- scopeId = String(rec.id);
1859
- }
1860
- catch { /* 读失败按新建处理 */ }
1861
- const payload = [{
1862
- businessId: cmdOpts.workflowId, businessModule: 'workflow',
1863
- controlId: ebuilderFieldId, browserType: 'ebuilder/form_ebuilder',
1864
- formId, module: 'workflow',
1865
- scopeInfoRender: JSON.stringify(tree), scopeType: 'scopeSql',
1866
- ...(scopeId ? { id: scopeId } : {}),
1867
- }];
1868
- const r = await client.post(`${baseUrl}/api/bcw/browserDataScope/batchSave`, payload);
1869
- if (r?.code !== 200 && !r?.status)
1870
- throw new Error(`保存失败: ${r?.msg || JSON.stringify(r).slice(0, 200)}`);
1871
- console.log(opts.json
1872
- ? JSON.stringify({ success: true, formId, ebuilderFieldId, workflowId: cmdOpts.workflowId, rule: cmdOpts.rule }, null, 2)
1873
- : `关联浏览范围已设置: ${tgtTitle} ${func} '${rawVal}'(EBuilder 字段 ${ebuilderFieldId})`);
1874
- }
1875
- catch (e) {
1876
- console.error(`设置关联浏览范围失败: ${e.message}`);
1877
- process.exitCode = 1;
1878
- }
1879
- });
1880
1760
  // ---------- wf-form add-detail-table ----------
1881
1761
  wfForm.command('add-detail-table')
1882
1762
  .description('新增流程表单明细表;可添加首字段并放入布局')