weaver-e10-builder 1.6.10 → 1.6.11
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.
- package/dist/commands/report-admin.d.ts.map +1 -1
- package/dist/commands/report-admin.js +378 -2
- package/dist/commands/report-admin.js.map +1 -1
- package/dist/commands/report-validate.d.ts.map +1 -1
- package/dist/commands/report-validate.js +1066 -3
- package/dist/commands/report-validate.js.map +1 -1
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +341 -3
- package/dist/commands/report.js.map +1 -1
- package/dist/commands/workflow-after-submit-comment.d.ts +3 -0
- package/dist/commands/workflow-after-submit-comment.d.ts.map +1 -0
- package/dist/commands/workflow-after-submit-comment.js +56 -0
- package/dist/commands/workflow-after-submit-comment.js.map +1 -0
- package/dist/commands/workflow-setting.d.ts.map +1 -1
- package/dist/commands/workflow-setting.js +2 -67
- package/dist/commands/workflow-setting.js.map +1 -1
- package/dist/services/report/blueprint.d.ts +109 -0
- package/dist/services/report/blueprint.d.ts.map +1 -0
- package/dist/services/report/blueprint.js +322 -0
- package/dist/services/report/blueprint.js.map +1 -0
- package/dist/services/report/build.d.ts.map +1 -1
- package/dist/services/report/build.js +8 -3
- package/dist/services/report/build.js.map +1 -1
- package/dist/services/report/card.d.ts +65 -0
- package/dist/services/report/card.d.ts.map +1 -0
- package/dist/services/report/card.js +151 -0
- package/dist/services/report/card.js.map +1 -0
- package/dist/services/report/copy-health.d.ts +31 -0
- package/dist/services/report/copy-health.d.ts.map +1 -0
- package/dist/services/report/copy-health.js +87 -0
- package/dist/services/report/copy-health.js.map +1 -0
- package/dist/services/report/dataset-heal.d.ts +64 -0
- package/dist/services/report/dataset-heal.d.ts.map +1 -0
- package/dist/services/report/dataset-heal.js +89 -0
- package/dist/services/report/dataset-heal.js.map +1 -0
- package/dist/services/report/dataset-ids.d.ts +70 -0
- package/dist/services/report/dataset-ids.d.ts.map +1 -0
- package/dist/services/report/dataset-ids.js +149 -0
- package/dist/services/report/dataset-ids.js.map +1 -0
- package/dist/services/report/dataset.d.ts.map +1 -1
- package/dist/services/report/dataset.js +3 -1
- package/dist/services/report/dataset.js.map +1 -1
- package/dist/services/report/empty-dataset.d.ts +51 -0
- package/dist/services/report/empty-dataset.d.ts.map +1 -0
- package/dist/services/report/empty-dataset.js +213 -0
- package/dist/services/report/empty-dataset.js.map +1 -0
- package/dist/services/report/field-binding.d.ts +75 -0
- package/dist/services/report/field-binding.d.ts.map +1 -0
- package/dist/services/report/field-binding.js +160 -0
- package/dist/services/report/field-binding.js.map +1 -0
- package/dist/services/report/forms.d.ts +32 -0
- package/dist/services/report/forms.d.ts.map +1 -1
- package/dist/services/report/forms.js +90 -0
- package/dist/services/report/forms.js.map +1 -1
- package/dist/services/report/formula-parent.d.ts +25 -0
- package/dist/services/report/formula-parent.d.ts.map +1 -0
- package/dist/services/report/formula-parent.js +116 -0
- package/dist/services/report/formula-parent.js.map +1 -0
- package/dist/services/report/locate.d.ts +40 -0
- package/dist/services/report/locate.d.ts.map +1 -0
- package/dist/services/report/locate.js +122 -0
- package/dist/services/report/locate.js.map +1 -0
- package/dist/services/report/reports.d.ts +4 -0
- package/dist/services/report/reports.d.ts.map +1 -1
- package/dist/services/report/reports.js +4 -2
- package/dist/services/report/reports.js.map +1 -1
- package/dist/services/report/scene.d.ts +22 -0
- package/dist/services/report/scene.d.ts.map +1 -0
- package/dist/services/report/scene.js +145 -0
- package/dist/services/report/scene.js.map +1 -0
- package/dist/services/report/types.d.ts +28 -0
- package/dist/services/report/types.d.ts.map +1 -1
- package/dist/services/report/verify.d.ts +24 -0
- package/dist/services/report/verify.d.ts.map +1 -1
- package/dist/services/report/verify.js +115 -2
- package/dist/services/report/verify.js.map +1 -1
- package/dist/services/report/workbook.d.ts +12 -1
- package/dist/services/report/workbook.d.ts.map +1 -1
- package/dist/services/report/workbook.js +107 -8
- package/dist/services/report/workbook.js.map +1 -1
- package/dist/services/workflow-after-submit-comment.d.ts +20 -0
- package/dist/services/workflow-after-submit-comment.d.ts.map +1 -0
- package/dist/services/workflow-after-submit-comment.js +81 -0
- package/dist/services/workflow-after-submit-comment.js.map +1 -0
- package/ecodecmd/src/build.js +36 -12
- package/package.json +1 -1
- package/skill-docs/SKILL.md +4 -4
- package/skill-docs/_catalog.md +10 -1
- package/skill-docs/references/coding/guide-page-code.md +95 -0
- package/skill-docs/references/components/ref-component-common.md +98 -0
- package/skill-docs/references/report/add-dataset-registration-guide.md +44 -22
- package/skill-docs/references/report/advanced-crosstab-tree-guide.md +82 -0
- package/skill-docs/references/report/ai-report-workflow.md +100 -100
- package/skill-docs/references/report/api-auth-headers.md +129 -0
- package/skill-docs/references/report/api-report-build-fast-path.md +274 -275
- package/skill-docs/references/report/app-datasource-lookup-guide.md +230 -230
- package/skill-docs/references/report/branch-scene-guide.md +293 -0
- package/skill-docs/references/report/build-resilience-guide.md +99 -0
- package/skill-docs/references/report/card-report-guide.md +110 -0
- package/skill-docs/references/report/cell-config-echo-guide.md +44 -9
- package/skill-docs/references/report/cell-transform-guide.md +9 -9
- package/skill-docs/references/report/column-split-report-guide.md +96 -0
- package/skill-docs/references/report/condition-format-guide.md +49 -24
- package/skill-docs/references/report/cross-dataset-filter-guide.md +180 -69
- package/skill-docs/references/report/crosstab-raw-workbook-guide.md +265 -0
- package/skill-docs/references/report/dataset-query-filter-guide.md +231 -235
- package/skill-docs/references/report/dataset-sidebar-ops-guide.md +75 -34
- package/skill-docs/references/report/dataset-table-field-contract-guide.md +196 -46
- package/skill-docs/references/report/datasource-metadata-guide.md +128 -119
- package/skill-docs/references/report/datasource-selection-and-parent-filter-guide.md +183 -148
- package/skill-docs/references/report/date-range-query-reference.md +97 -102
- package/skill-docs/references/report/default-header-style-guide.md +8 -8
- package/skill-docs/references/report/designer-blank-prevention-guide.md +8 -8
- package/skill-docs/references/report/dossier-report-guide.md +69 -0
- package/skill-docs/references/report/drilldown-report-guide.md +59 -0
- package/skill-docs/references/report/event-hreflink-guide.md +53 -47
- package/skill-docs/references/report/expansion-block-parent-config-guide.md +208 -0
- package/skill-docs/references/report/failure-cleanup-and-nonblocking-guide.md +183 -0
- package/skill-docs/references/report/field-bind-exact-match-guide.md +208 -208
- package/skill-docs/references/report/financial-stats-report-guide.md +89 -0
- package/skill-docs/references/report/formula-cell-api-guide.md +325 -258
- package/skill-docs/references/report/golden-case-summary-sheet.md +200 -0
- package/skill-docs/references/report/guide-report-build.md +6 -1
- package/skill-docs/references/report/hidden-row-and-header-merge-guide.md +10 -10
- package/skill-docs/references/report/layout-showlocation-freeze-guide.md +39 -10
- package/skill-docs/references/report/multi-report-crosstab-casebook.md +263 -0
- package/skill-docs/references/report/paged-group-report-guide.md +68 -0
- package/skill-docs/references/report/preaggregate-auto-disable-guide.md +24 -13
- package/skill-docs/references/report/query-condition-api-guide.md +145 -125
- package/skill-docs/references/report/ref-report-commands.md +41 -3
- package/skill-docs/references/report/report-baseinfo-defaults-guide.md +117 -117
- package/skill-docs/references/report/report-building-guide.md +52 -52
- package/skill-docs/references/report/report-case-prompts.md +104 -0
- package/skill-docs/references/report/report-config-schema.md +281 -281
- package/skill-docs/references/report/report-create-modes-guide.md +73 -35
- package/skill-docs/references/report/report-data-model.md +131 -131
- package/skill-docs/references/report/report-delivery-contract.md +23 -3
- package/skill-docs/references/report/report-designer-feature-map.md +30 -35
- package/skill-docs/references/report/report-help-guide.md +304 -0
- package/skill-docs/references/report/report-internal-error-guide.md +71 -0
- package/skill-docs/references/report/report-knowledge-base.md +27 -27
- package/skill-docs/references/report/report-lifecycle-api-guide.md +126 -94
- package/skill-docs/references/report/report-list-page-ops-guide.md +54 -8
- package/skill-docs/references/report/report-permission-guide.md +99 -102
- package/skill-docs/references/report/report-requirement-analysis-template.md +93 -29
- package/skill-docs/references/report/report-self-check-guide.md +164 -164
- package/skill-docs/references/report/report-verification-discipline-guide.md +203 -0
- package/skill-docs/references/report/safe-partial-save-guide.md +151 -151
- package/skill-docs/references/report/shard-freeze-report-guide.md +97 -0
- package/skill-docs/references/report/snowflake-id-precision-guide.md +84 -84
- package/skill-docs/references/report/spec-build-schema.md +71 -71
- package/skill-docs/references/report/targeted-fix-guide.md +155 -97
- package/skill-docs/references/report/user-request-scope-only-guide.md +23 -4
- package/skill-docs/references/workflow/guide-after-submit-comment.md +58 -0
- package/skill-docs/references/workflow/guide-workflow.md +6 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import { AuthSession } from '../core/auth.js';
|
|
3
|
+
import { ApiClient } from '../core/client.js';
|
|
4
|
+
import { parseLayoutJson } from '../services/form-layout-source/json.js';
|
|
5
|
+
import { AfterSubmitCommentSettings, displayFields } from '../services/workflow-after-submit-comment.js';
|
|
6
|
+
import { normalized } from '../services/workflow-base-settings.js';
|
|
7
|
+
import { booleanValue } from '../services/workflow-opinion-settings.js';
|
|
8
|
+
export function registerAfterSubmitComment(base, program) {
|
|
9
|
+
for (const kind of ['after-submit-display', 'comment-set']) {
|
|
10
|
+
const cmd = base.command(kind).description(kind === 'comment-set' ? '评论设置:自定义和启用评论独立配置' : '提交流程后显示内容设置').argument('<workflowId>', '流程 ID');
|
|
11
|
+
cmd.option('--schema', '读取程序表单、选项及默认/已有配置').option('--data <json>', '局部配置 JSON 或 @文件').option('--custom <0|1>', '启用自定义;0继承全局,关闭时单独使用');
|
|
12
|
+
const mapping = kind === 'comment-set' ? { custom: 'commentSetTypeDTO', enable: 'enableComment', allowRelate: 'allowCommentRelate', relateRange: 'relateRangeSelect', relateItems: 'relateRangeBrowser', allowUpload: 'allowUpload', displayType: 'commentdisplayTypeDTO', defaultExpand: 'defaultDisplayComment' } : { custom: 'customOpen', pcType: 'pcForwardType', mobileType: 'mobileForwardType', pcUrl: 'customPcUrl', mobileUrl: 'customMobileUrl' };
|
|
13
|
+
if (kind === 'comment-set')
|
|
14
|
+
cmd.option('--enable <0|1>', '启用评论(不再同时修改自定义开关)').option('--allow-relate <0|1>', '允许评论关联事项').option('--relate-range <0|1>', '0全部/1选择范围').option('--relate-items <ids...>', '事项类型 ID(不是流程实例 ID)').option('--clear-relate-items', '清空事项范围').option('--allow-upload <0|1>', '允许评论上传附件').option('--upload-catalog <id>', '附件目录ID;0清空').option('--display-type <0|1>', '0与意见合并/1独立显示').option('--display-reply <0|1>', '对意见回复显示在意见区').option('--default-expand <0|1>', '审批意见中默认展开评论').option('--candidates <relate|catalog>', '查询事项类型/目录候选(首100项或根节点)');
|
|
15
|
+
else
|
|
16
|
+
cmd.option('--pc-type <type>', '0不显示/1流程图/2流转情况/3自定义页面;也接受选项名称').option('--mobile-type <type>', '移动端显示类型,同PC').option('--pc-stay <0|1>', 'PC停留在流程图').option('--mobile-stay <0|1>', '移动端停留在流程图').option('--pc-url <url>', 'PC自定义页面地址').option('--mobile-url <url>', '移动端自定义页面地址');
|
|
17
|
+
cmd.action(async (w, o) => {
|
|
18
|
+
try {
|
|
19
|
+
const auth = await AuthSession.fromOptions(program.opts());
|
|
20
|
+
if (!auth)
|
|
21
|
+
throw Error('无法读取认证');
|
|
22
|
+
const svc = new AfterSubmitCommentSettings(new ApiClient(auth, 1, parseLayoutJson), auth.getBaseUrl());
|
|
23
|
+
if (o.candidates) {
|
|
24
|
+
if (Object.keys(o).length !== 1 || !['relate', 'catalog'].includes(o.candidates))
|
|
25
|
+
throw Error('--candidates须单独使用 relate/catalog');
|
|
26
|
+
console.log(JSON.stringify(await svc.displayCandidates(w, o.candidates === 'relate' ? 'relateRangeBrowser' : 'uploadCatalogBrowser'), null, 2));
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const p = o.data === undefined ? {} : parseLayoutJson(o.data.startsWith('@') ? readFileSync(o.data.slice(1), 'utf8') : o.data);
|
|
30
|
+
if (!p || typeof p !== 'object' || Array.isArray(p))
|
|
31
|
+
throw Error('--data必须为对象');
|
|
32
|
+
const put = (k, v) => { if (k in p)
|
|
33
|
+
throw Error(`重复指定 ${k}`); p[k] = v; };
|
|
34
|
+
for (const [flag, k] of Object.entries(mapping))
|
|
35
|
+
if (o[flag] !== undefined)
|
|
36
|
+
put(k, o[flag]);
|
|
37
|
+
for (const [flag, k] of [['pcStay', 'pcStopInChart'], ['mobileStay', 'mobileStopInChart'], ['displayReply', 'displayReplyDTO']])
|
|
38
|
+
if (o[flag] !== undefined)
|
|
39
|
+
put(k, booleanValue(o[flag]) ? ['0'] : []);
|
|
40
|
+
if (o.clearRelateItems)
|
|
41
|
+
put('relateRangeBrowser', []);
|
|
42
|
+
if (o.uploadCatalog !== undefined)
|
|
43
|
+
put('uploadCatalogBrowser', o.uploadCatalog === '0' ? [] : [o.uploadCatalog]);
|
|
44
|
+
if (o.schema && Object.keys(p).length)
|
|
45
|
+
throw Error('--schema不可与修改参数混用');
|
|
46
|
+
const result = Object.keys(p).length ? await svc.saveDisplay(kind, w, p) : await svc.readDisplay(kind, w).then(f => o.schema ? { settings: normalized(f), form: f } : normalized(f));
|
|
47
|
+
console.log(JSON.stringify(result, null, 2));
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
console.error(`操作失败: ${e.message}`);
|
|
51
|
+
process.exitCode = 1;
|
|
52
|
+
}
|
|
53
|
+
}).addHelpText('after', `\n不带修改参数为读取;首次保存读取程序默认值,已有配置仅合并指定项并回读。\n字段:${displayFields[kind].join(', ')}。JSON开关用true/false,复选框用[]/["0"],浏览对象用字符串ID数组。\n具体设置生效须 --custom 1;关闭自定义恢复继承全局。\n`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=workflow-after-submit-comment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-after-submit-comment.js","sourceRoot":"","sources":["../../src/commands/workflow-after-submit-comment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-setting.d.ts","sourceRoot":"","sources":["../../src/commands/workflow-setting.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workflow-setting.d.ts","sourceRoot":"","sources":["../../src/commands/workflow-setting.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAkInF"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { registerAfterSubmitComment } from './workflow-after-submit-comment.js';
|
|
1
2
|
import { registerWorkflowFunctionSettings } from './workflow-function-settings.js';
|
|
2
3
|
import { SignFileSettings } from '../services/workflow-sign-file-settings.js';
|
|
3
4
|
import { editTabs, getTabLocales } from '../services/workflow-tabs-editor.js';
|
|
@@ -9,20 +10,6 @@ import { workflowBaseCommand } from './workflow-base-command.js';
|
|
|
9
10
|
import { AuthSession } from '../core/auth.js';
|
|
10
11
|
import { ApiClient } from '../core/client.js';
|
|
11
12
|
import { getTabConfig, tabLabel, } from '../services/workflow-tab-config.js';
|
|
12
|
-
/**
|
|
13
|
-
* Merge only known keys from source into target, converting boolean to 0/1.
|
|
14
|
-
* This prevents leaking UI-internal fields (layout, items, etc.) to save APIs.
|
|
15
|
-
*/
|
|
16
|
-
function mergeKnown(target, source) {
|
|
17
|
-
const result = { ...target };
|
|
18
|
-
for (const key of Object.keys(target)) {
|
|
19
|
-
if (key in source) {
|
|
20
|
-
const v = source[key];
|
|
21
|
-
result[key] = typeof v === 'boolean' ? (v ? 1 : 0) : v;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return result;
|
|
25
|
-
}
|
|
26
13
|
export function registerWorkflowSettingCommands(wf, program) {
|
|
27
14
|
const base = workflowBaseCommand(wf);
|
|
28
15
|
registerWorkflowFunctionSettings(wf, program);
|
|
@@ -190,58 +177,6 @@ export function registerWorkflowSettingCommands(wf, program) {
|
|
|
190
177
|
process.exitCode = 1;
|
|
191
178
|
}
|
|
192
179
|
});
|
|
193
|
-
|
|
194
|
-
base.command('comment-set')
|
|
195
|
-
.description('查看/配置评论设置')
|
|
196
|
-
.argument('<workflowId>', '流程 ID')
|
|
197
|
-
.option('--enable <0|1>', '评论功能开关')
|
|
198
|
-
.action(async (workflowId, cmdOpts) => {
|
|
199
|
-
const opts = program.opts();
|
|
200
|
-
const auth = await AuthSession.fromOptions(opts);
|
|
201
|
-
if (!auth)
|
|
202
|
-
process.exit(1);
|
|
203
|
-
const client = new ApiClient(auth);
|
|
204
|
-
const baseUrl = auth.getBaseUrl();
|
|
205
|
-
const getRes = await client.get(`${baseUrl}/api/bs/workflow/pathdef/commentset/getCommentSet?workflowId=${workflowId}`);
|
|
206
|
-
if (getRes?.code !== 200 || !getRes?.status) {
|
|
207
|
-
console.error(`查询失败: ${getRes?.msg || getRes?.data?.msg}`);
|
|
208
|
-
process.exit(1);
|
|
209
|
-
}
|
|
210
|
-
const raw = getRes?.data || {};
|
|
211
|
-
const form = raw.commentSet?.data || raw.data || raw;
|
|
212
|
-
if (!cmdOpts.enable) {
|
|
213
|
-
if (opts.json) {
|
|
214
|
-
console.log(JSON.stringify(form, null, 2));
|
|
215
|
-
}
|
|
216
|
-
else {
|
|
217
|
-
console.log(`评论功能: ${form.commentSetTypeDTO || form.enableComment === '1' || form.enableComment === 1 ? '✅ 开启' : '⛔ 关闭'}`);
|
|
218
|
-
}
|
|
219
|
-
return;
|
|
220
|
-
}
|
|
221
|
-
const payload = mergeKnown({
|
|
222
|
-
workflowId,
|
|
223
|
-
commentSetTypeDTO: true,
|
|
224
|
-
enableComment: 0,
|
|
225
|
-
commentdisplayTypeDTO: '0',
|
|
226
|
-
displayReplyDTO: [],
|
|
227
|
-
defaultDisplayComment: false,
|
|
228
|
-
allowCommentRelate: 1,
|
|
229
|
-
relateRangeSelect: '0',
|
|
230
|
-
relateRangeBrowser: [],
|
|
231
|
-
allowUpload: true,
|
|
232
|
-
uploadCatalog: '',
|
|
233
|
-
uploadCatalogBrowser: [],
|
|
234
|
-
}, form);
|
|
235
|
-
payload.commentSetTypeDTO = cmdOpts.enable === '1';
|
|
236
|
-
payload.enableComment = parseInt(cmdOpts.enable, 10);
|
|
237
|
-
const saveRes = await client.post(`${baseUrl}/api/bs/workflow/pathdef/commentset/saveCommentSet`, payload);
|
|
238
|
-
if (saveRes?.code === 200 && saveRes?.status) {
|
|
239
|
-
console.log(opts.json ? JSON.stringify({ success: true, workflowId }) : '评论设置已保存');
|
|
240
|
-
}
|
|
241
|
-
else {
|
|
242
|
-
console.error(`保存失败: ${saveRes?.msg || '未知错误'}`);
|
|
243
|
-
process.exit(1);
|
|
244
|
-
}
|
|
245
|
-
});
|
|
180
|
+
registerAfterSubmitComment(base, program);
|
|
246
181
|
}
|
|
247
182
|
//# sourceMappingURL=workflow-setting.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-setting.js","sourceRoot":"","sources":["../../src/commands/workflow-setting.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow-setting.js","sourceRoot":"","sources":["../../src/commands/workflow-setting.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 从「蓝图」整表重建报表(灾后救援)。
|
|
3
|
+
*
|
|
4
|
+
* 蓝图声明本报表的**数据集**与**每格内容**;键模板与样式可从一张健康的同款报表派生。
|
|
5
|
+
* 两条硬门禁(都来自真实事故):
|
|
6
|
+
*
|
|
7
|
+
* 1. **数据集 id 只认蓝图声明的本报表数据集** —— `dataSetId` / `fieldKey` / 四个筛选键
|
|
8
|
+
* 绝不从样式来源表继承。否则设计器右侧「字段」下拉空白、父格筛选不回显。
|
|
9
|
+
* 2. **克隆纪律**:0 坐标冲突 / 0 META 键残留(id、createTime…)/ 0 白名单外的旧数据集 id。
|
|
10
|
+
*/
|
|
11
|
+
import type { ReportHttp } from './http.js';
|
|
12
|
+
import type { DevField } from './types.js';
|
|
13
|
+
export interface BlueprintDataset {
|
|
14
|
+
key?: string;
|
|
15
|
+
/** 本报表 addDataset 返回的 datasetId(给了就直接用)。 */
|
|
16
|
+
id?: string;
|
|
17
|
+
/** 数据源 sourceId(没给 id 时按它在本报表解析/挂载)。 */
|
|
18
|
+
sourceId?: string;
|
|
19
|
+
sourceName?: string;
|
|
20
|
+
sourceType?: string;
|
|
21
|
+
sourceGroup?: string;
|
|
22
|
+
/** = 数据源 sourceId,用于拼 fieldKey 三段。 */
|
|
23
|
+
nameIndex?: string;
|
|
24
|
+
tableName?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface BlueprintCell {
|
|
27
|
+
/** 0 基行号;也接受 `r`。 */
|
|
28
|
+
x?: number;
|
|
29
|
+
r?: number;
|
|
30
|
+
/** 0 基列号;也接受 `c`。 */
|
|
31
|
+
y?: number;
|
|
32
|
+
c?: number;
|
|
33
|
+
cellType?: 'Field' | 'Const' | 'Formula';
|
|
34
|
+
/** 简写:有 `field` 即 Field 格,有 `text` 无 `field` 即 Const 格。 */
|
|
35
|
+
field?: string;
|
|
36
|
+
name?: string;
|
|
37
|
+
text?: string;
|
|
38
|
+
cellText?: string;
|
|
39
|
+
datasetKey?: string;
|
|
40
|
+
leftX?: number;
|
|
41
|
+
leftY?: number;
|
|
42
|
+
left?: [number, number];
|
|
43
|
+
expandType?: string;
|
|
44
|
+
isActiveParent?: boolean | number;
|
|
45
|
+
[k: string]: unknown;
|
|
46
|
+
}
|
|
47
|
+
export interface Blueprint {
|
|
48
|
+
reportId: string;
|
|
49
|
+
appId: string;
|
|
50
|
+
name?: string;
|
|
51
|
+
dataset?: BlueprintDataset;
|
|
52
|
+
datasets?: BlueprintDataset[];
|
|
53
|
+
styleSource?: {
|
|
54
|
+
reportId: string;
|
|
55
|
+
appId: string;
|
|
56
|
+
};
|
|
57
|
+
cells?: BlueprintCell[];
|
|
58
|
+
sheets?: Array<{
|
|
59
|
+
name?: string;
|
|
60
|
+
cells: BlueprintCell[];
|
|
61
|
+
}>;
|
|
62
|
+
}
|
|
63
|
+
export interface ResolvedDatasetRef extends BlueprintDataset {
|
|
64
|
+
key: string;
|
|
65
|
+
}
|
|
66
|
+
export interface SheetBuild {
|
|
67
|
+
name: string;
|
|
68
|
+
index: number;
|
|
69
|
+
fields: DevField[];
|
|
70
|
+
}
|
|
71
|
+
export interface BlueprintBuild {
|
|
72
|
+
sheets: SheetBuild[];
|
|
73
|
+
fields: DevField[];
|
|
74
|
+
datasets: ResolvedDatasetRef[];
|
|
75
|
+
allowedIds: string[];
|
|
76
|
+
counts: Record<string, number>;
|
|
77
|
+
/** 模板里被剔除的键(诊断用)。 */
|
|
78
|
+
templateKeys: string[];
|
|
79
|
+
}
|
|
80
|
+
/** 解析数据集声明:有 id 直接用;只有 sourceId 的走本报表解析/挂载。 */
|
|
81
|
+
export declare function resolveBlueprintDatasets(http: ReportHttp, bp: Blueprint): Promise<ResolvedDatasetRef[]>;
|
|
82
|
+
/** 从样式来源表取每种 cellType 的第一个格作模板。 */
|
|
83
|
+
export declare function loadCellTemplates(http: ReportHttp, src: {
|
|
84
|
+
reportId: string;
|
|
85
|
+
appId: string;
|
|
86
|
+
}): Promise<Record<string, DevField>>;
|
|
87
|
+
export interface CloneDiscipline {
|
|
88
|
+
duplicates: string[];
|
|
89
|
+
metaLeaks: string[];
|
|
90
|
+
staleIds: string[];
|
|
91
|
+
}
|
|
92
|
+
/** 克隆纪律自检(按 sheet 维度调用 —— 不同 sheet 同坐标是合法的)。 */
|
|
93
|
+
export declare function checkCloneDiscipline(fields: DevField[], allowedIds: string[]): CloneDiscipline;
|
|
94
|
+
/** 把蓝图展开成字段记录(不落库)。 */
|
|
95
|
+
export declare function buildBlueprint(http: ReportHttp, bp: Blueprint): Promise<BlueprintBuild>;
|
|
96
|
+
/** 回读校验:格数、类型计数、Field 绑定自洽。 */
|
|
97
|
+
export declare function verifyBlueprintReadback(afterFields: DevField[], expected: BlueprintBuild): {
|
|
98
|
+
ok: boolean;
|
|
99
|
+
issues: string[];
|
|
100
|
+
counts: Record<string, number>;
|
|
101
|
+
};
|
|
102
|
+
/** 数据集白名单校验(落库前)。 */
|
|
103
|
+
export declare function assertAllowedDatasetIds(fields: DevField[], allowedIds: string[]): string[];
|
|
104
|
+
/**
|
|
105
|
+
* 当前报表已挂的数据集 id(给「蓝图里只写了 sourceId」的场景复用判断用)。
|
|
106
|
+
* 暴露出来便于命令层先展示将要使用哪几条数据集。
|
|
107
|
+
*/
|
|
108
|
+
export declare function ownDatasetIds(http: ReportHttp, reportId: string, appId: string): Promise<string[]>;
|
|
109
|
+
//# sourceMappingURL=blueprint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blueprint.d.ts","sourceRoot":"","sources":["../../../src/services/report/blueprint.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
import { getReportDevInfo } from './reports.js';
|
|
2
|
+
import { resolveDataset, listDatasets } from './dataset.js';
|
|
3
|
+
import { DATASET_ID_KEYS, refsOfField } from './dataset-ids.js';
|
|
4
|
+
/** 身份键与「别的报表的数据集」相关键,绝不从模板格继承。 */
|
|
5
|
+
const IDENTITY_KEYS = new Set([
|
|
6
|
+
'id',
|
|
7
|
+
'createTime',
|
|
8
|
+
'updateTime',
|
|
9
|
+
'creator',
|
|
10
|
+
'deleteType',
|
|
11
|
+
'reportId',
|
|
12
|
+
'sheetIndex',
|
|
13
|
+
'showOrder',
|
|
14
|
+
'x',
|
|
15
|
+
'y',
|
|
16
|
+
'leftX',
|
|
17
|
+
'leftY',
|
|
18
|
+
'topX',
|
|
19
|
+
'topY',
|
|
20
|
+
'refX',
|
|
21
|
+
'refY',
|
|
22
|
+
]);
|
|
23
|
+
const NEVER_INHERIT = new Set([
|
|
24
|
+
...DATASET_ID_KEYS,
|
|
25
|
+
'allNeedFields',
|
|
26
|
+
'tableName',
|
|
27
|
+
]);
|
|
28
|
+
/** 解析数据集声明:有 id 直接用;只有 sourceId 的走本报表解析/挂载。 */
|
|
29
|
+
export async function resolveBlueprintDatasets(http, bp) {
|
|
30
|
+
const declared = [];
|
|
31
|
+
if (bp.dataset)
|
|
32
|
+
declared.push({ ...bp.dataset, key: bp.dataset.key || 'default' });
|
|
33
|
+
for (const [i, d] of (bp.datasets || []).entries()) {
|
|
34
|
+
declared.push({ ...d, key: String(d.key || `ds${i + 1}`) });
|
|
35
|
+
}
|
|
36
|
+
const out = [];
|
|
37
|
+
for (const d of declared) {
|
|
38
|
+
const key = String(d.key || 'default');
|
|
39
|
+
if (d.id) {
|
|
40
|
+
out.push({ ...d, key, nameIndex: String(d.nameIndex || d.sourceId || '') });
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
if (!d.sourceId) {
|
|
44
|
+
throw new Error(`蓝图数据集「${key}」缺少 id / sourceId`);
|
|
45
|
+
}
|
|
46
|
+
const resolved = await resolveDataset(http, {
|
|
47
|
+
reportId: bp.reportId,
|
|
48
|
+
appId: bp.appId,
|
|
49
|
+
sourceId: String(d.sourceId),
|
|
50
|
+
sourceName: d.sourceName,
|
|
51
|
+
sourceType: d.sourceType || 'logic',
|
|
52
|
+
sourceGroup: d.sourceGroup,
|
|
53
|
+
});
|
|
54
|
+
out.push({
|
|
55
|
+
...d,
|
|
56
|
+
key,
|
|
57
|
+
id: resolved.id,
|
|
58
|
+
nameIndex: String(d.nameIndex || d.sourceId),
|
|
59
|
+
tableName: d.tableName || `${d.sourceName || resolved.name}(${d.sourceType === 'form' ? '表单' : '业务模块'})`,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
return out;
|
|
63
|
+
}
|
|
64
|
+
/** 从样式来源表取每种 cellType 的第一个格作模板。 */
|
|
65
|
+
export async function loadCellTemplates(http, src) {
|
|
66
|
+
const dev = await getReportDevInfo(http, src.reportId);
|
|
67
|
+
const byType = {};
|
|
68
|
+
for (const f of (dev.fields || [])) {
|
|
69
|
+
const t = String(f.cellType || 'Const');
|
|
70
|
+
if (!byType[t])
|
|
71
|
+
byType[t] = f;
|
|
72
|
+
}
|
|
73
|
+
return byType;
|
|
74
|
+
}
|
|
75
|
+
function normalizeCell(c) {
|
|
76
|
+
const x = c.x ?? c.r;
|
|
77
|
+
const y = c.y ?? c.c;
|
|
78
|
+
if (x == null || y == null)
|
|
79
|
+
throw new Error('蓝图格缺少坐标(x/y 或 r/c)');
|
|
80
|
+
let cellType = c.cellType;
|
|
81
|
+
if (!cellType)
|
|
82
|
+
cellType = c.field ? 'Field' : 'Const';
|
|
83
|
+
const out = {
|
|
84
|
+
...c,
|
|
85
|
+
x: Number(x),
|
|
86
|
+
y: Number(y),
|
|
87
|
+
cellType,
|
|
88
|
+
};
|
|
89
|
+
if (cellType === 'Field') {
|
|
90
|
+
if (!out.name && c.field)
|
|
91
|
+
out.name = String(c.field);
|
|
92
|
+
// Field 格的 text 是「字段显示名」;蓝图只写 field 时用它兜底
|
|
93
|
+
if (out.text == null)
|
|
94
|
+
out.text = String(c.text ?? out.name ?? '');
|
|
95
|
+
}
|
|
96
|
+
if (cellType === 'Const' && out.cellText == null && c.text != null)
|
|
97
|
+
out.cellText = String(c.text);
|
|
98
|
+
if (cellType !== 'Field' && c.field) {
|
|
99
|
+
throw new Error(`格 (${x},${y}) 声明为 ${cellType} 却给了 field`);
|
|
100
|
+
}
|
|
101
|
+
if (c.left) {
|
|
102
|
+
out.leftX = Number(c.left[0]);
|
|
103
|
+
out.leftY = Number(c.left[1]);
|
|
104
|
+
}
|
|
105
|
+
return out;
|
|
106
|
+
}
|
|
107
|
+
function buildCell(template, bp, ctx) {
|
|
108
|
+
const cell = {};
|
|
109
|
+
for (const [k, v] of Object.entries(template || {})) {
|
|
110
|
+
if (IDENTITY_KEYS.has(k) || NEVER_INHERIT.has(k))
|
|
111
|
+
continue;
|
|
112
|
+
cell[k] = v;
|
|
113
|
+
}
|
|
114
|
+
for (const [k, v] of Object.entries(bp)) {
|
|
115
|
+
if (k === 'cellType' || k === 'datasetKey' || k === 'field' || k === 'r' || k === 'c' || k === 'left')
|
|
116
|
+
continue;
|
|
117
|
+
// Const 的 text 是 cellText 的简写;Field 的 text 是显示名,需要保留
|
|
118
|
+
if (k === 'text' && bp.cellType === 'Const')
|
|
119
|
+
continue;
|
|
120
|
+
cell[k] = v;
|
|
121
|
+
}
|
|
122
|
+
cell.cellType = bp.cellType;
|
|
123
|
+
cell.x = bp.x;
|
|
124
|
+
cell.y = bp.y;
|
|
125
|
+
cell.xCount = Number(bp.xCount || 1);
|
|
126
|
+
cell.yCount = Number(bp.yCount || 1);
|
|
127
|
+
cell.sheetIndex = ctx.sheetIndex;
|
|
128
|
+
cell.reportId = '0';
|
|
129
|
+
cell.showOrder = 0;
|
|
130
|
+
cell.deleteType = 0;
|
|
131
|
+
cell.fixed = 0;
|
|
132
|
+
// width=0 是「隐藏列」,是合法值,不能被 falsy 判断覆盖
|
|
133
|
+
if (cell.width === undefined || cell.width === null || cell.width === '')
|
|
134
|
+
cell.width = 150;
|
|
135
|
+
if (!cell.height)
|
|
136
|
+
cell.height = 24;
|
|
137
|
+
cell.expandType = bp.expandType || (bp.cellType === 'Field' ? 'Vertical' : 'NoExpand');
|
|
138
|
+
cell.displayType = cell.displayType || 'Group';
|
|
139
|
+
const ds = ctx.dataset;
|
|
140
|
+
if (bp.cellType === 'Field') {
|
|
141
|
+
if (!ds || !ds.id) {
|
|
142
|
+
throw new Error(`Field 格 (${bp.x},${bp.y})「${bp.name}」未解析到数据集:请给 dataset 或 datasets[] 的 key,并在格上写 datasetKey`);
|
|
143
|
+
}
|
|
144
|
+
cell.dataSetId = String(ds.id);
|
|
145
|
+
cell.nameIndex = String(ds.nameIndex || '');
|
|
146
|
+
cell.fieldKey = `${ds.id}.${cell.nameIndex}.${bp.name}`;
|
|
147
|
+
cell.tableName = bp.tableName || ds.tableName || '';
|
|
148
|
+
if (cell.countType === undefined)
|
|
149
|
+
cell.countType = 'none';
|
|
150
|
+
cell.transType = cell.transType || 'default';
|
|
151
|
+
cell.openType = cell.openType || 'blank';
|
|
152
|
+
cell.cellText = '';
|
|
153
|
+
for (const k of ['leftFilterField', 'topFilterField', 'customFilterField', 'dataFilterField']) {
|
|
154
|
+
if (bp[k] === undefined)
|
|
155
|
+
cell[k] = '[]';
|
|
156
|
+
}
|
|
157
|
+
cell.allNeedFields = bp.allNeedFields !== undefined ? bp.allNeedFields : '';
|
|
158
|
+
}
|
|
159
|
+
else if (bp.cellType === 'Formula') {
|
|
160
|
+
cell.dataSetId = '-1';
|
|
161
|
+
for (const k of ['leftFilterField', 'topFilterField', 'customFilterField', 'dataFilterField']) {
|
|
162
|
+
cell[k] = '[]';
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
cell.dataSetId = '-1';
|
|
167
|
+
for (const k of ['leftFilterField', 'topFilterField', 'customFilterField', 'dataFilterField']) {
|
|
168
|
+
if (bp[k] === undefined)
|
|
169
|
+
cell[k] = '[]';
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
if (bp.leftX !== undefined) {
|
|
173
|
+
cell.leftX = Number(bp.leftX);
|
|
174
|
+
cell.leftY = Number(bp.leftY);
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
cell.leftX = ctx.firstOfRow ? -1 : bp.x;
|
|
178
|
+
cell.leftY = ctx.firstOfRow ? -1 : ctx.prevY;
|
|
179
|
+
}
|
|
180
|
+
return cell;
|
|
181
|
+
}
|
|
182
|
+
/** 克隆纪律自检(按 sheet 维度调用 —— 不同 sheet 同坐标是合法的)。 */
|
|
183
|
+
export function checkCloneDiscipline(fields, allowedIds) {
|
|
184
|
+
const allow = new Set(allowedIds.map(String));
|
|
185
|
+
const seen = new Set();
|
|
186
|
+
const duplicates = [];
|
|
187
|
+
const metaLeaks = [];
|
|
188
|
+
const staleIds = [];
|
|
189
|
+
const META = ['id', 'createTime', 'updateTime', 'creator'];
|
|
190
|
+
for (const f of fields) {
|
|
191
|
+
const k = `${Number(f.x)},${Number(f.y)}`;
|
|
192
|
+
if (seen.has(k))
|
|
193
|
+
duplicates.push(k);
|
|
194
|
+
else
|
|
195
|
+
seen.add(k);
|
|
196
|
+
for (const m of META) {
|
|
197
|
+
const v = f[m];
|
|
198
|
+
if (v !== undefined && v !== null && String(v) !== '')
|
|
199
|
+
metaLeaks.push(`${k}.${m}=${String(v).slice(0, 16)}`);
|
|
200
|
+
}
|
|
201
|
+
for (const r of refsOfField(f)) {
|
|
202
|
+
if (!allow.has(r.id))
|
|
203
|
+
staleIds.push(`${k}.${r.key}=${r.id}`);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return { duplicates, metaLeaks, staleIds };
|
|
207
|
+
}
|
|
208
|
+
/** 把蓝图展开成字段记录(不落库)。 */
|
|
209
|
+
export async function buildBlueprint(http, bp) {
|
|
210
|
+
if (!bp.reportId || !bp.appId)
|
|
211
|
+
throw new Error('蓝图缺 reportId / appId');
|
|
212
|
+
const datasets = await resolveBlueprintDatasets(http, bp);
|
|
213
|
+
if (!datasets.length)
|
|
214
|
+
throw new Error('蓝图缺 dataset / datasets[](本报表的数据集声明)');
|
|
215
|
+
const byKey = new Map(datasets.map((d) => [d.key, d]));
|
|
216
|
+
const allowedIds = datasets.map((d) => String(d.id));
|
|
217
|
+
const sheetDefs = bp.sheets && bp.sheets.length
|
|
218
|
+
? bp.sheets.map((s, i) => ({ name: s.name || `Sheet${i + 1}`, cells: s.cells || [], index: i }))
|
|
219
|
+
: [{ name: 'Sheet1', cells: bp.cells || [], index: 0 }];
|
|
220
|
+
const templates = bp.styleSource
|
|
221
|
+
? await loadCellTemplates(http, bp.styleSource)
|
|
222
|
+
: {};
|
|
223
|
+
const templateKeys = [...new Set(Object.values(templates).flatMap((t) => Object.keys(t || {})))];
|
|
224
|
+
const sheets = [];
|
|
225
|
+
for (const sd of sheetDefs) {
|
|
226
|
+
const cells = sd.cells.map(normalizeCell).sort((a, b) => Number(a.x) - Number(b.x) || Number(a.y) - Number(b.y));
|
|
227
|
+
const fields = [];
|
|
228
|
+
let curX = null;
|
|
229
|
+
let prevY = -1;
|
|
230
|
+
for (const c of cells) {
|
|
231
|
+
const firstOfRow = Number(c.x) !== curX;
|
|
232
|
+
if (firstOfRow) {
|
|
233
|
+
curX = Number(c.x);
|
|
234
|
+
prevY = -1;
|
|
235
|
+
}
|
|
236
|
+
if (c.cellType === 'Field' && !c.datasetKey && datasets.length > 1) {
|
|
237
|
+
throw new Error(`sheet「${sd.name}」的 Field 格 (${c.x},${c.y})「${c.name}」缺少 datasetKey —— ` +
|
|
238
|
+
`多数据集报表禁止回退到 datasets[0]。本报表声明了 ${datasets.length} 个数据集:` +
|
|
239
|
+
datasets.map((d) => d.key).join(' / '));
|
|
240
|
+
}
|
|
241
|
+
const ds = byKey.get(String(c.datasetKey || 'default')) || (datasets.length === 1 ? datasets[0] : undefined);
|
|
242
|
+
if (!ds) {
|
|
243
|
+
throw new Error(`sheet「${sd.name}」格 (${c.x},${c.y}) 的 datasetKey="${c.datasetKey}" 在 datasets[] 里不存在`);
|
|
244
|
+
}
|
|
245
|
+
fields.push(buildCell(templates[String(c.cellType)], c, {
|
|
246
|
+
dataset: ds,
|
|
247
|
+
firstOfRow,
|
|
248
|
+
prevY,
|
|
249
|
+
sheetIndex: sd.index,
|
|
250
|
+
}));
|
|
251
|
+
prevY = Number(c.y);
|
|
252
|
+
}
|
|
253
|
+
const disc = checkCloneDiscipline(fields, allowedIds);
|
|
254
|
+
if (disc.duplicates.length || disc.metaLeaks.length || disc.staleIds.length) {
|
|
255
|
+
const parts = [];
|
|
256
|
+
if (disc.duplicates.length)
|
|
257
|
+
parts.push(`坐标冲突:${disc.duplicates.slice(0, 8).join('、')}`);
|
|
258
|
+
if (disc.metaLeaks.length)
|
|
259
|
+
parts.push(`META 键残留:${disc.metaLeaks.slice(0, 8).join('、')}`);
|
|
260
|
+
if (disc.staleIds.length)
|
|
261
|
+
parts.push(`白名单外数据集 id:${disc.staleIds.slice(0, 8).join('、')}`);
|
|
262
|
+
throw new Error(`sheet「${sd.name}」克隆纪律自检未通过 —— ${parts.join(';')}(拒绝落库)`);
|
|
263
|
+
}
|
|
264
|
+
sheets.push({ name: sd.name, index: sd.index, fields });
|
|
265
|
+
}
|
|
266
|
+
const fields = sheets.flatMap((s) => s.fields);
|
|
267
|
+
const counts = {};
|
|
268
|
+
for (const f of fields) {
|
|
269
|
+
const t = String(f.cellType || 'Const');
|
|
270
|
+
counts[t] = (counts[t] || 0) + 1;
|
|
271
|
+
}
|
|
272
|
+
return { sheets, fields, datasets, allowedIds, counts, templateKeys };
|
|
273
|
+
}
|
|
274
|
+
/** 回读校验:格数、类型计数、Field 绑定自洽。 */
|
|
275
|
+
export function verifyBlueprintReadback(afterFields, expected) {
|
|
276
|
+
const issues = [];
|
|
277
|
+
const counts = {};
|
|
278
|
+
for (const f of afterFields) {
|
|
279
|
+
const t = String(f.cellType || 'Const');
|
|
280
|
+
counts[t] = (counts[t] || 0) + 1;
|
|
281
|
+
}
|
|
282
|
+
if (afterFields.length !== expected.fields.length) {
|
|
283
|
+
issues.push(`格数 ${afterFields.length} ≠ 期望 ${expected.fields.length}`);
|
|
284
|
+
}
|
|
285
|
+
for (const [k, n] of Object.entries(expected.counts)) {
|
|
286
|
+
if ((counts[k] || 0) !== n)
|
|
287
|
+
issues.push(`${k} 格数 ${counts[k] || 0} ≠ 期望 ${n}`);
|
|
288
|
+
}
|
|
289
|
+
const noText = afterFields.filter((f) => f.cellType === 'Field' && !String(f.text || '')).length;
|
|
290
|
+
const noKey = afterFields.filter((f) => f.cellType === 'Field' && !String(f.fieldKey || '')).length;
|
|
291
|
+
const mismatch = afterFields.filter((f) => f.cellType === 'Field' && String(f.fieldKey || '').split('.')[0] !== String(f.dataSetId)).length;
|
|
292
|
+
if (noText)
|
|
293
|
+
issues.push(`Field 格缺显示名 ${noText} 个`);
|
|
294
|
+
if (noKey)
|
|
295
|
+
issues.push(`Field 格缺 fieldKey ${noKey} 个`);
|
|
296
|
+
if (mismatch)
|
|
297
|
+
issues.push(`fieldKey 首段 ≠ dataSetId ${mismatch} 个`);
|
|
298
|
+
const disc = checkCloneDiscipline(afterFields, expected.allowedIds);
|
|
299
|
+
if (disc.staleIds.length)
|
|
300
|
+
issues.push(`回读仍有白名单外 id:${disc.staleIds.slice(0, 6).join('、')}`);
|
|
301
|
+
return { ok: issues.length === 0, issues, counts };
|
|
302
|
+
}
|
|
303
|
+
/** 数据集白名单校验(落库前)。 */
|
|
304
|
+
export function assertAllowedDatasetIds(fields, allowedIds) {
|
|
305
|
+
const allow = new Set(allowedIds.map(String));
|
|
306
|
+
const bad = [];
|
|
307
|
+
for (const f of fields) {
|
|
308
|
+
for (const r of refsOfField(f))
|
|
309
|
+
if (!allow.has(r.id))
|
|
310
|
+
bad.push(`(${f.x},${f.y}).${r.key}=${r.id}`);
|
|
311
|
+
}
|
|
312
|
+
return bad;
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* 当前报表已挂的数据集 id(给「蓝图里只写了 sourceId」的场景复用判断用)。
|
|
316
|
+
* 暴露出来便于命令层先展示将要使用哪几条数据集。
|
|
317
|
+
*/
|
|
318
|
+
export async function ownDatasetIds(http, reportId, appId) {
|
|
319
|
+
const rows = await listDatasets(http, reportId, appId);
|
|
320
|
+
return rows.map((d) => String(d.id));
|
|
321
|
+
}
|
|
322
|
+
//# sourceMappingURL=blueprint.js.map
|