weaver-e10-builder 1.5.16 → 1.6.4
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/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +4 -2
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +109 -51
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/form-attachment-setting.d.ts +3 -0
- package/dist/commands/form-attachment-setting.d.ts.map +1 -0
- package/dist/commands/form-attachment-setting.js +422 -0
- package/dist/commands/form-attachment-setting.js.map +1 -0
- package/dist/commands/form-data.d.ts.map +1 -1
- package/dist/commands/form-data.js +49 -1
- package/dist/commands/form-data.js.map +1 -1
- package/dist/commands/form-ebuilder-scope.d.ts +21 -0
- package/dist/commands/form-ebuilder-scope.d.ts.map +1 -1
- package/dist/commands/form-ebuilder-scope.js +41 -8
- package/dist/commands/form-ebuilder-scope.js.map +1 -1
- package/dist/commands/form-field-linkage.d.ts +6 -1
- package/dist/commands/form-field-linkage.d.ts.map +1 -1
- package/dist/commands/form-field-linkage.js +138 -31
- package/dist/commands/form-field-linkage.js.map +1 -1
- package/dist/commands/form-layout-code-reviewed.d.ts +3 -0
- package/dist/commands/form-layout-code-reviewed.d.ts.map +1 -0
- package/dist/commands/form-layout-code-reviewed.js +61 -0
- package/dist/commands/form-layout-code-reviewed.js.map +1 -0
- package/dist/commands/form-layout-describe.d.ts +3 -0
- package/dist/commands/form-layout-describe.d.ts.map +1 -0
- package/dist/commands/form-layout-describe.js +58 -0
- package/dist/commands/form-layout-describe.js.map +1 -0
- package/dist/commands/form-layout-diff.d.ts +3 -0
- package/dist/commands/form-layout-diff.d.ts.map +1 -0
- package/dist/commands/form-layout-diff.js +48 -0
- package/dist/commands/form-layout-diff.js.map +1 -0
- package/dist/commands/form-layout-document.d.ts +3 -0
- package/dist/commands/form-layout-document.d.ts.map +1 -0
- package/dist/commands/form-layout-document.js +81 -0
- package/dist/commands/form-layout-document.js.map +1 -0
- package/dist/commands/form-layout-edit.d.ts +3 -0
- package/dist/commands/form-layout-edit.d.ts.map +1 -0
- package/dist/commands/form-layout-edit.js +51 -0
- package/dist/commands/form-layout-edit.js.map +1 -0
- package/dist/commands/form-layout-init-reviewed.d.ts +3 -0
- package/dist/commands/form-layout-init-reviewed.d.ts.map +1 -0
- package/dist/commands/form-layout-init-reviewed.js +78 -0
- package/dist/commands/form-layout-init-reviewed.js.map +1 -0
- package/dist/commands/form-layout-restore.d.ts.map +1 -1
- package/dist/commands/form-layout-restore.js +23 -0
- package/dist/commands/form-layout-restore.js.map +1 -1
- package/dist/commands/form-layout-template-catalog.d.ts +3 -0
- package/dist/commands/form-layout-template-catalog.d.ts.map +1 -0
- package/dist/commands/form-layout-template-catalog.js +45 -0
- package/dist/commands/form-layout-template-catalog.js.map +1 -0
- package/dist/commands/form.d.ts.map +1 -1
- package/dist/commands/form.js +80 -5
- package/dist/commands/form.js.map +1 -1
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +39 -6
- package/dist/commands/project.js.map +1 -1
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_add.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_add.js +12 -5
- package/dist/services/actionflow/components/action_eb_add.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_add_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_add_compiler.js +5 -0
- package/dist/services/actionflow/components/action_eb_add_compiler.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_delete.d.ts +6 -1
- package/dist/services/actionflow/components/action_eb_delete.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_delete.js +23 -5
- package/dist/services/actionflow/components/action_eb_delete.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_delete_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_delete_compiler.js +22 -0
- package/dist/services/actionflow/components/action_eb_delete_compiler.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_update.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_update.js +13 -4
- package/dist/services/actionflow/components/action_eb_update.js.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/components/action_eb_update_compiler.js +9 -2
- package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
- package/dist/services/actionflow/components/date_trigger.js +2 -2
- package/dist/services/actionflow/components/date_trigger.js.map +1 -1
- package/dist/services/actionflow/components/enquiry_form.d.ts.map +1 -1
- package/dist/services/actionflow/components/enquiry_form.js +11 -10
- package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
- package/dist/services/actionflow/components/event_button.js +1 -1
- package/dist/services/actionflow/components/event_button.js.map +1 -1
- package/dist/services/actionflow/components/form_data_builder.d.ts +29 -1
- package/dist/services/actionflow/components/form_data_builder.d.ts.map +1 -1
- package/dist/services/actionflow/components/form_data_builder.js +67 -3
- package/dist/services/actionflow/components/form_data_builder.js.map +1 -1
- package/dist/services/actionflow/components/time_batch_trigger.js +2 -2
- package/dist/services/actionflow/components/time_batch_trigger.js.map +1 -1
- package/dist/services/actionflow/form_source.d.ts +44 -1
- package/dist/services/actionflow/form_source.d.ts.map +1 -1
- package/dist/services/actionflow/form_source.js +231 -5
- package/dist/services/actionflow/form_source.js.map +1 -1
- package/dist/services/actionflow/preflight_service.d.ts +8 -0
- package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
- package/dist/services/actionflow/preflight_service.js +120 -14
- package/dist/services/actionflow/preflight_service.js.map +1 -1
- package/dist/services/actionflow/system_params.d.ts.map +1 -1
- package/dist/services/actionflow/system_params.js +4 -1
- package/dist/services/actionflow/system_params.js.map +1 -1
- package/dist/services/actionflow/trigger_common.d.ts.map +1 -1
- package/dist/services/actionflow/trigger_common.js +12 -3
- package/dist/services/actionflow/trigger_common.js.map +1 -1
- package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
- package/dist/services/actionflow/workflow_compiler.js +117 -40
- package/dist/services/actionflow/workflow_compiler.js.map +1 -1
- package/dist/services/form-attachment-settings.d.ts +110 -0
- package/dist/services/form-attachment-settings.d.ts.map +1 -0
- package/dist/services/form-attachment-settings.js +332 -0
- package/dist/services/form-attachment-settings.js.map +1 -0
- package/dist/services/form-attachment-upload.d.ts +30 -0
- package/dist/services/form-attachment-upload.d.ts.map +1 -0
- package/dist/services/form-attachment-upload.js +76 -0
- package/dist/services/form-attachment-upload.js.map +1 -0
- package/dist/services/form-data-openapi.d.ts +2 -0
- package/dist/services/form-data-openapi.d.ts.map +1 -1
- package/dist/services/form-data-openapi.js +1 -0
- package/dist/services/form-data-openapi.js.map +1 -1
- package/dist/services/form-layout-code-reviewed.d.ts +32 -0
- package/dist/services/form-layout-code-reviewed.d.ts.map +1 -0
- package/dist/services/form-layout-code-reviewed.js +101 -0
- package/dist/services/form-layout-code-reviewed.js.map +1 -0
- package/dist/services/form-layout-describe.d.ts +4 -0
- package/dist/services/form-layout-describe.d.ts.map +1 -0
- package/dist/services/form-layout-describe.js +107 -0
- package/dist/services/form-layout-describe.js.map +1 -0
- package/dist/services/form-layout-diff.d.ts +37 -0
- package/dist/services/form-layout-diff.d.ts.map +1 -0
- package/dist/services/form-layout-diff.js +232 -0
- package/dist/services/form-layout-diff.js.map +1 -0
- package/dist/services/form-layout-document-apply.d.ts +23 -0
- package/dist/services/form-layout-document-apply.d.ts.map +1 -0
- package/dist/services/form-layout-document-apply.js +82 -0
- package/dist/services/form-layout-document-apply.js.map +1 -0
- package/dist/services/form-layout-document.d.ts +13 -0
- package/dist/services/form-layout-document.d.ts.map +1 -0
- package/dist/services/form-layout-document.js +228 -0
- package/dist/services/form-layout-document.js.map +1 -0
- package/dist/services/form-layout-edit.d.ts +21 -0
- package/dist/services/form-layout-edit.d.ts.map +1 -0
- package/dist/services/form-layout-edit.js +103 -0
- package/dist/services/form-layout-edit.js.map +1 -0
- package/dist/services/form-layout-init-plan.d.ts +54 -0
- package/dist/services/form-layout-init-plan.d.ts.map +1 -0
- package/dist/services/form-layout-init-plan.js +211 -0
- package/dist/services/form-layout-init-plan.js.map +1 -0
- package/dist/services/form-layout-source/review.d.ts +4 -0
- package/dist/services/form-layout-source/review.d.ts.map +1 -0
- package/dist/services/form-layout-source/review.js +54 -0
- package/dist/services/form-layout-source/review.js.map +1 -0
- package/dist/services/form-layout-template-advanced.d.ts +5 -0
- package/dist/services/form-layout-template-advanced.d.ts.map +1 -1
- package/dist/services/form-layout-template-advanced.js +17 -1
- package/dist/services/form-layout-template-advanced.js.map +1 -1
- package/dist/services/form-layout-template-catalog.d.ts +13 -0
- package/dist/services/form-layout-template-catalog.d.ts.map +1 -0
- package/dist/services/form-layout-template-catalog.js +27 -0
- package/dist/services/form-layout-template-catalog.js.map +1 -0
- package/dist/services/form-layout-template-flow.d.ts +1 -1
- package/dist/services/form-layout-template-flow.d.ts.map +1 -1
- package/dist/services/form-layout-template-flow.js.map +1 -1
- package/dist/services/form-layout-template-verification.d.ts +34 -0
- package/dist/services/form-layout-template-verification.d.ts.map +1 -0
- package/dist/services/form-layout-template-verification.js +124 -0
- package/dist/services/form-layout-template-verification.js.map +1 -0
- package/dist/services/form-style-template.d.ts +3 -3
- package/dist/services/form-style-template.d.ts.map +1 -1
- package/dist/services/form-style-template.js +18 -13
- package/dist/services/form-style-template.js.map +1 -1
- package/package.json +1 -1
- package/skill-docs/SKILL.md +163 -155
- package/skill-docs/_catalog.md +110 -106
- package/skill-docs/actionflows/references/components/ebuilder/ActionEbDelete.md +60 -3
- package/skill-docs/actionflows/references/components/ebuilder/EventButton.md +35 -33
- package/skill-docs/assets/sample/api/formApi.js +689 -510
- package/skill-docs/assets/sample/app/config.js +4 -0
- package/skill-docs/assets/sample/app/fields.js +25 -0
- package/skill-docs/assets/sample/entry.js +24 -22
- package/skill-docs/assets/sample/eslint.config.cjs +1 -0
- package/skill-docs/assets/sample/pages/Items.js +247 -0
- package/skill-docs/assets/sample/styles/prototypeStyles.js +137 -0
- package/skill-docs/references/coding/guide-edit-backfill.md +102 -150
- package/skill-docs/references/coding/guide-form-crud.md +195 -172
- package/skill-docs/references/coding/guide-html-to-react.md +250 -0
- package/skill-docs/references/coding/guide-page-code.md +194 -167
- package/skill-docs/references/coding/guide-page-export.md +27 -18
- package/skill-docs/references/coding/ref-compile-rules.md +7 -7
- package/skill-docs/references/common/capability-boundaries.md +20 -1
- package/skill-docs/references/common/guide-plan-template.md +29 -3
- package/skill-docs/references/common/map.md +13 -8
- package/skill-docs/references/common/ref-cli-commands.md +31 -10
- package/skill-docs/references/components/display-FilePreview.md +5 -4
- package/skill-docs/references/form/guide-browser-definition.md +57 -13
- package/skill-docs/references/form/guide-create-form.md +258 -258
- package/skill-docs/references/form/guide-field-linkage.md +4 -1
- package/skill-docs/references/form/guide-form-attachment-setting.md +95 -0
- package/skill-docs/references/form/guide-form-data.md +22 -1
- package/skill-docs/references/form/layout/code-block/code-block-guide.md +153 -0
- package/skill-docs/references/form/layout/code-block/controls.md +60 -0
- package/skill-docs/references/form/layout/code-block/coverage.md +32 -0
- package/skill-docs/references/form/layout/code-block/details.md +57 -0
- package/skill-docs/references/form/layout/code-block/events-validation.md +42 -0
- package/skill-docs/references/form/layout/code-block/foundations-fields.md +56 -0
- package/skill-docs/references/form/layout/code-block/layout-css.md +116 -0
- package/skill-docs/references/form/layout/code-block/recipes.md +164 -0
- package/skill-docs/references/form/layout/code-block/troubleshooting.md +49 -0
- package/skill-docs/references/form/layout/code-block/ui-global.md +47 -0
- package/skill-docs/references/form/layout/document.md +39 -0
- package/skill-docs/references/form/layout/incremental.md +133 -0
- package/skill-docs/references/form/layout/initialization.md +39 -0
- package/skill-docs/references/form/layout/inspect-edit.md +76 -0
- package/skill-docs/references/form/layout/layout-overview.md +67 -0
- package/skill-docs/references/form/layout/management.md +64 -0
- package/skill-docs/references/form/layout/planning.md +76 -0
- package/skill-docs/references/form/layout/source-restoration.md +388 -0
- package/skill-docs/references/form/layout/template/advanced-css.md +167 -0
- package/skill-docs/references/form/layout/template/advanced.md +318 -0
- package/skill-docs/references/form/layout/template/easy.md +64 -0
- package/skill-docs/references/form/layout/template/flow.md +30 -0
- package/skill-docs/references/form/layout/template/template-guide.md +56 -0
- package/skill-docs/references/form/layout/workflow-layout.md +44 -0
- package/skill-docs/references/form/ref-form-fields.md +303 -301
- package/skill-docs/references/workflow/guide-workflow-node-layout.md +189 -187
- package/skill-docs/assets/sample/config/config.js +0 -0
- package/skill-docs/assets/sample/config/configLoad.js +0 -0
- package/skill-docs/assets/sample/config/configLoad_default.js +0 -0
- package/skill-docs/assets/sample/config/config_default.js +0 -0
- package/skill-docs/assets/sample/memo.md +0 -0
- package/skill-docs/assets/sample/readme.js +0 -8
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 表单附件上传设置(附件设置页)的读写。
|
|
3
|
+
*
|
|
4
|
+
* 平台把设置分成三层:
|
|
5
|
+
* 1. 表单通用配置 —— configType=0 / type=common,不带 fieldId;
|
|
6
|
+
* 2. 字段级覆盖 —— configType=1 / type=folder,带 fieldId;
|
|
7
|
+
* 3. 页面展示 —— 字段级某一项留空时继承通用配置。
|
|
8
|
+
*
|
|
9
|
+
* 通用配置里三个落点要分开看:
|
|
10
|
+
* - `folderId` + `folderIdBrowserValue` : 附件/图片上传目录
|
|
11
|
+
* - `fixedDirectory` : 新建文档存储位置
|
|
12
|
+
* - `addTypeConfig.types` : 新建方式(可创建的文档类型)
|
|
13
|
+
*
|
|
14
|
+
* 字段级覆盖里对应:
|
|
15
|
+
* - `folderId` + `folderIdBrowserValue` : 上传目录(folderSelectType=0 固定目录 / 1 选项关联)
|
|
16
|
+
* - `docFixedDirectoryConfig` : 新建文档存储位置
|
|
17
|
+
* - `docAddTypeConfig` : 新建方式
|
|
18
|
+
*
|
|
19
|
+
* 保存顺序按页面行为:先写字段级列表,再写通用配置。只读字段(customAttmentSize、
|
|
20
|
+
* formFields 等)回写前必须剔除,否则会被当成业务数据提交。
|
|
21
|
+
*/
|
|
22
|
+
import type { ApiClient } from '../core/client.js';
|
|
23
|
+
export interface AttachmentTarget {
|
|
24
|
+
appId: string;
|
|
25
|
+
objId: string;
|
|
26
|
+
formId: string;
|
|
27
|
+
}
|
|
28
|
+
export interface CommonChanges {
|
|
29
|
+
/** 上传目录;null 表示清空 */
|
|
30
|
+
uploadFolder?: any | null;
|
|
31
|
+
/** 新建文档存储位置;null 表示清空 */
|
|
32
|
+
docFolder?: any | null;
|
|
33
|
+
/** 新建方式;null 表示清空 */
|
|
34
|
+
docTypes?: string[] | null;
|
|
35
|
+
/** 允许上传的扩展名;null 表示清空(不受限) */
|
|
36
|
+
formats?: string[] | null;
|
|
37
|
+
maxSizeMb?: number | string;
|
|
38
|
+
enable?: boolean;
|
|
39
|
+
displayTip?: boolean;
|
|
40
|
+
}
|
|
41
|
+
export interface FieldChanges {
|
|
42
|
+
uploadMode?: 'fixed' | 'option';
|
|
43
|
+
uploadFolder?: any | null;
|
|
44
|
+
optionFieldId?: string;
|
|
45
|
+
docFolder?: any | null;
|
|
46
|
+
docTypes?: string[] | null;
|
|
47
|
+
formats?: string[] | null;
|
|
48
|
+
}
|
|
49
|
+
/** 上传格式预设,对应设计器里的五个快捷按钮。 */
|
|
50
|
+
export declare const FORMAT_PRESETS: Record<string, string[]>;
|
|
51
|
+
/**
|
|
52
|
+
* 逗号串 / 预设 / 数组 → 扩展名数组(去空、去重、保持顺序)。
|
|
53
|
+
*
|
|
54
|
+
* 预设必须带 `@` 前缀(如 `@doc,@image`),否则 `doc` 这种既是预设名又是真实扩展名的值
|
|
55
|
+
* 会被误展开成整个文档类。
|
|
56
|
+
*/
|
|
57
|
+
export declare function normalizeFormats(input: string | string[] | undefined): string[];
|
|
58
|
+
/** 扩展名数组 → 平台保存形状(逗号串,保留尾逗号,与设计器一致)。 */
|
|
59
|
+
export declare function formatLimitString(exts: string[]): string;
|
|
60
|
+
/** 逗号串 → 扩展名数组,供展示。 */
|
|
61
|
+
export declare function parseFormatLimit(value: string | undefined): string[];
|
|
62
|
+
/** 读取表单通用配置(附件设置页中间那栏)。 */
|
|
63
|
+
export declare function readAttachmentCommon(client: ApiClient, baseUrl: string, target: AttachmentTarget): Promise<any>;
|
|
64
|
+
/** 读取单个附件字段的有效配置。 */
|
|
65
|
+
export declare function readAttachmentField(client: ApiClient, baseUrl: string, target: AttachmentTarget, fieldId: string): Promise<any>;
|
|
66
|
+
/** 读取表单下所有附件字段的字段级配置。 */
|
|
67
|
+
export declare function listAttachmentFields(client: ApiClient, baseUrl: string, target: AttachmentTarget): Promise<any[]>;
|
|
68
|
+
/** 读取表单主表字段记录(解析选项关联字段、展示字段名用)。 */
|
|
69
|
+
export declare function listFormFields(client: ApiClient, baseUrl: string, target: AttachmentTarget): Promise<any[]>;
|
|
70
|
+
/** 名称或 ID → 字段记录;匹配多个时要求使用 ID。 */
|
|
71
|
+
export declare function findFormField(fields: any[], input: string): any;
|
|
72
|
+
/** 读取“新建方式设置”里可选的文档类型。 */
|
|
73
|
+
export declare function readDocumentCreateMenus(client: ApiClient, baseUrl: string, folderId?: string): Promise<any[]>;
|
|
74
|
+
/**
|
|
75
|
+
* 列出可用的文档目录。
|
|
76
|
+
*
|
|
77
|
+
* 目录浏览器一次只返回一类:默认请求给系统知识库(100-10x),
|
|
78
|
+
* `noChoiceType=sys,privy` 给公司/私有知识库。两次合并后再去重,否则会把
|
|
79
|
+
* “系统知识库/文档(101)”这类目录误判成不存在。
|
|
80
|
+
*/
|
|
81
|
+
export declare function listDocumentFolders(client: ApiClient, baseUrl: string): Promise<any[]>;
|
|
82
|
+
/** 按目录 ID 查文档目录节点(返回的值可直接用来拼保存报文)。 */
|
|
83
|
+
export declare function resolveDocumentFolder(client: ApiClient, baseUrl: string, folderId: string): Promise<any>;
|
|
84
|
+
/** 按名称或路径查目录;重名时报错要求改用 ID。 */
|
|
85
|
+
export declare function resolveDocumentFolderByName(client: ApiClient, baseUrl: string, name: string): Promise<any>;
|
|
86
|
+
/** 目录节点 → 上传目录的展示对象(folderIdBrowserValue)。 */
|
|
87
|
+
export declare function folderBrowserValue(node: any): Record<string, any>;
|
|
88
|
+
/**
|
|
89
|
+
* 取上传目录 ID。
|
|
90
|
+
*
|
|
91
|
+
* 平台读回时**不返回顶层 folderId**,只给 folderIdBrowserValue[0](且形状与写报文不同);
|
|
92
|
+
* 写报文才带 folderId。所有「判断是否已设置」和回读比对都必须走这里。
|
|
93
|
+
*/
|
|
94
|
+
export declare function uploadFolderIdOf(config: any): string;
|
|
95
|
+
/** 目录节点 → 新建文档存储位置(fixedDirectory / docFixedDirectoryConfig)。 */
|
|
96
|
+
export declare function fixedDirectoryValue(node: any): Record<string, any>;
|
|
97
|
+
/** 合并通用配置改动;返回完整可保存对象。 */
|
|
98
|
+
export declare function applyCommonChanges(config: any, changes: CommonChanges): Record<string, any>;
|
|
99
|
+
/** 合并字段级配置改动;返回完整可保存实体。 */
|
|
100
|
+
export declare function applyFieldChanges(entity: any, changes: FieldChanges): Record<string, any>;
|
|
101
|
+
/** 构造通用配置保存报文(纯函数,便于单测锁定形状)。 */
|
|
102
|
+
export declare function buildCommonSaveBody(target: AttachmentTarget, config: any): Record<string, any>;
|
|
103
|
+
/** 构造字段级列表保存报文(纯函数,便于单测锁定形状)。 */
|
|
104
|
+
export declare function buildFieldListSaveBody(target: AttachmentTarget, entities: any[]): Record<string, any>;
|
|
105
|
+
/** 保存表单通用配置。 */
|
|
106
|
+
export declare function saveAttachmentCommon(client: ApiClient, baseUrl: string, target: AttachmentTarget, config: any): Promise<void>;
|
|
107
|
+
/** 保存字段级配置列表(整组提交,未改动的实体原样带回)。 */
|
|
108
|
+
export declare function saveAttachmentFields(client: ApiClient, baseUrl: string, target: AttachmentTarget, entities: any[]): Promise<void>;
|
|
109
|
+
export declare function findAttachmentEntity(entities: any[], field: string): any | undefined;
|
|
110
|
+
//# sourceMappingURL=form-attachment-settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-attachment-settings.d.ts","sourceRoot":"","sources":["../../src/services/form-attachment-settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
const ATTACHMENT_PATH = '/api/ebuilder/form/form/setting/attachment';
|
|
2
|
+
const DOC_FOLDER_BROWSER_PATH = '/api/doc/common/browser/complete/folder';
|
|
3
|
+
const DOC_CREATE_SETTING_PATH = '/api/doc/folders/createDocument/getDocumentBrowserCreateSetting';
|
|
4
|
+
/** 上传格式预设,对应设计器里的五个快捷按钮。 */
|
|
5
|
+
export const FORMAT_PRESETS = {
|
|
6
|
+
doc: ['txt', 'pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'wps', 'rtf', 'hlp'],
|
|
7
|
+
image: ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'tif'],
|
|
8
|
+
video: ['mkv', 'mp4', 'avi', 'swf', 'wmv', 'rmvb', 'mov', 'mpg'],
|
|
9
|
+
audio: ['mp3', 'flac', 'ape', 'wma', 'wav', 'aac', 'm4a', 'au', 'ram', 'mmf', 'aif'],
|
|
10
|
+
archive: ['rar', 'zip', '7z', 'gz', 'arj', 'z'],
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* 逗号串 / 预设 / 数组 → 扩展名数组(去空、去重、保持顺序)。
|
|
14
|
+
*
|
|
15
|
+
* 预设必须带 `@` 前缀(如 `@doc,@image`),否则 `doc` 这种既是预设名又是真实扩展名的值
|
|
16
|
+
* 会被误展开成整个文档类。
|
|
17
|
+
*/
|
|
18
|
+
export function normalizeFormats(input) {
|
|
19
|
+
const raw = Array.isArray(input) ? input : String(input ?? '').split(',');
|
|
20
|
+
const out = [];
|
|
21
|
+
for (const item of raw) {
|
|
22
|
+
const value = String(item).trim().replace(/^\./, '');
|
|
23
|
+
if (!value)
|
|
24
|
+
continue;
|
|
25
|
+
if (value.startsWith('@')) {
|
|
26
|
+
const preset = FORMAT_PRESETS[value.slice(1)];
|
|
27
|
+
if (!preset)
|
|
28
|
+
throw new Error(`未知的上传格式预设:${value}。可选:${Object.keys(FORMAT_PRESETS).map((key) => `@${key}`).join(', ')}`);
|
|
29
|
+
for (const ext of preset) {
|
|
30
|
+
if (!out.includes(ext))
|
|
31
|
+
out.push(ext);
|
|
32
|
+
}
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
if (!out.includes(value))
|
|
36
|
+
out.push(value);
|
|
37
|
+
}
|
|
38
|
+
return out;
|
|
39
|
+
}
|
|
40
|
+
/** 扩展名数组 → 平台保存形状(逗号串,保留尾逗号,与设计器一致)。 */
|
|
41
|
+
export function formatLimitString(exts) {
|
|
42
|
+
return exts.length ? `${exts.join(',')},` : '';
|
|
43
|
+
}
|
|
44
|
+
/** 逗号串 → 扩展名数组,供展示。 */
|
|
45
|
+
export function parseFormatLimit(value) {
|
|
46
|
+
return String(value ?? '').split(',').map((item) => item.trim()).filter(Boolean);
|
|
47
|
+
}
|
|
48
|
+
function checked(res, action) {
|
|
49
|
+
if (res?.code !== 200 || !res?.status) {
|
|
50
|
+
throw new Error(`${action}失败:${res?.msg || '接口返回异常'}`);
|
|
51
|
+
}
|
|
52
|
+
return res.data;
|
|
53
|
+
}
|
|
54
|
+
function locateBody(target, type, fieldId) {
|
|
55
|
+
return {
|
|
56
|
+
formId: target.formId,
|
|
57
|
+
type,
|
|
58
|
+
...(fieldId ? { fieldId: String(fieldId) } : {}),
|
|
59
|
+
module: 'ebuilderform',
|
|
60
|
+
apiModule: 'ebuilder/form',
|
|
61
|
+
customParam: { appId: target.appId, objId: target.objId },
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/** 读取表单通用配置(附件设置页中间那栏)。 */
|
|
65
|
+
export async function readAttachmentCommon(client, baseUrl, target) {
|
|
66
|
+
return checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/getWeaFormAndData?apid=${encodeURIComponent(target.appId)}`, locateBody(target, 'common'), { ebbusinessid: target.formId }), '读取附件通用设置');
|
|
67
|
+
}
|
|
68
|
+
/** 读取单个附件字段的有效配置。 */
|
|
69
|
+
export async function readAttachmentField(client, baseUrl, target, fieldId) {
|
|
70
|
+
return checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/getWeaFormAndData?apid=${encodeURIComponent(target.appId)}`, locateBody(target, 'folder', fieldId), { ebbusinessid: target.formId }), '读取附件字段设置');
|
|
71
|
+
}
|
|
72
|
+
/** 读取表单下所有附件字段的字段级配置。 */
|
|
73
|
+
export async function listAttachmentFields(client, baseUrl, target) {
|
|
74
|
+
const data = checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/listAttachFields?apid=${encodeURIComponent(target.appId)}`, {
|
|
75
|
+
formId: target.formId,
|
|
76
|
+
apiModule: 'ebuilder/form',
|
|
77
|
+
module: 'ebuilderform',
|
|
78
|
+
customParam: { appId: target.appId, objId: target.objId },
|
|
79
|
+
}, { ebbusinessid: target.formId }), '读取附件字段列表');
|
|
80
|
+
return Array.isArray(data) ? data : [];
|
|
81
|
+
}
|
|
82
|
+
/** 读取表单主表字段记录(解析选项关联字段、展示字段名用)。 */
|
|
83
|
+
export async function listFormFields(client, baseUrl, target) {
|
|
84
|
+
const res = await client.post(`${baseUrl}/api/ebuilder/form/form/field/manage/getFormFieldPage?apid=${encodeURIComponent(target.appId)}`, {
|
|
85
|
+
pageNo: 1,
|
|
86
|
+
pageSize: 500,
|
|
87
|
+
module: 'ebuilderform',
|
|
88
|
+
customParam: { appId: target.appId },
|
|
89
|
+
formFieldSearchEntity: { isDelete: 0, status: 'enable', formId: target.formId },
|
|
90
|
+
}, { ebbusinessid: target.formId });
|
|
91
|
+
return res?.data?.pageDatas?.result || res?.data?.data?.records || res?.data?.data || [];
|
|
92
|
+
}
|
|
93
|
+
/** 名称或 ID → 字段记录;匹配多个时要求使用 ID。 */
|
|
94
|
+
export function findFormField(fields, input) {
|
|
95
|
+
const hits = fields.filter((field) => String(field.fieldId) === String(input)
|
|
96
|
+
|| String(field.id) === String(input)
|
|
97
|
+
|| String(field.title) === input);
|
|
98
|
+
if (!hits.length)
|
|
99
|
+
throw new Error(`字段 ${input} 不存在`);
|
|
100
|
+
if (hits.length > 1)
|
|
101
|
+
throw new Error(`字段 ${input} 匹配到多个,请改用 fieldId`);
|
|
102
|
+
return hits[0];
|
|
103
|
+
}
|
|
104
|
+
/** 读取“新建方式设置”里可选的文档类型。 */
|
|
105
|
+
export async function readDocumentCreateMenus(client, baseUrl, folderId = '-1') {
|
|
106
|
+
const data = checked(await client.post(`${baseUrl}${DOC_CREATE_SETTING_PATH}`, { folderId: String(folderId) }), '读取新建方式');
|
|
107
|
+
return Array.isArray(data?.menus) ? data.menus : [];
|
|
108
|
+
}
|
|
109
|
+
function flattenFolderNodes(nodes) {
|
|
110
|
+
const out = [];
|
|
111
|
+
const walk = (list) => {
|
|
112
|
+
for (const node of list || []) {
|
|
113
|
+
if (!node)
|
|
114
|
+
continue;
|
|
115
|
+
out.push(node);
|
|
116
|
+
if (Array.isArray(node.children) && node.children.length)
|
|
117
|
+
walk(node.children);
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
walk(nodes);
|
|
121
|
+
return out;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* 列出可用的文档目录。
|
|
125
|
+
*
|
|
126
|
+
* 目录浏览器一次只返回一类:默认请求给系统知识库(100-10x),
|
|
127
|
+
* `noChoiceType=sys,privy` 给公司/私有知识库。两次合并后再去重,否则会把
|
|
128
|
+
* “系统知识库/文档(101)”这类目录误判成不存在。
|
|
129
|
+
*/
|
|
130
|
+
export async function listDocumentFolders(client, baseUrl) {
|
|
131
|
+
const queries = [
|
|
132
|
+
{ noUserName: '1', newly: 1, searchValue: '' },
|
|
133
|
+
{ browserMultiple: true, noChoiceType: 'sys,privy', newly: 1, searchValue: '' },
|
|
134
|
+
];
|
|
135
|
+
const nodes = [];
|
|
136
|
+
let lastError = null;
|
|
137
|
+
for (const query of queries) {
|
|
138
|
+
try {
|
|
139
|
+
const data = checked(await client.post(`${baseUrl}${DOC_FOLDER_BROWSER_PATH}`, query), '查询文档目录');
|
|
140
|
+
nodes.push(...flattenFolderNodes(Array.isArray(data?.data) ? data.data : []));
|
|
141
|
+
}
|
|
142
|
+
catch (error) {
|
|
143
|
+
lastError = error;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
if (!nodes.length && lastError)
|
|
147
|
+
throw lastError;
|
|
148
|
+
const seen = new Set();
|
|
149
|
+
return nodes.filter((node) => {
|
|
150
|
+
const id = String(node.id ?? '');
|
|
151
|
+
if (!id || seen.has(id))
|
|
152
|
+
return false;
|
|
153
|
+
seen.add(id);
|
|
154
|
+
return true;
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
/** 按目录 ID 查文档目录节点(返回的值可直接用来拼保存报文)。 */
|
|
158
|
+
export async function resolveDocumentFolder(client, baseUrl, folderId) {
|
|
159
|
+
const nodes = await listDocumentFolders(client, baseUrl);
|
|
160
|
+
const hit = nodes.find((node) => String(node.id) === String(folderId));
|
|
161
|
+
if (!hit)
|
|
162
|
+
throw new Error(`文档目录 ${folderId} 不存在或无权限访问`);
|
|
163
|
+
return hit;
|
|
164
|
+
}
|
|
165
|
+
/** 按名称或路径查目录;重名时报错要求改用 ID。 */
|
|
166
|
+
export async function resolveDocumentFolderByName(client, baseUrl, name) {
|
|
167
|
+
const nodes = await listDocumentFolders(client, baseUrl);
|
|
168
|
+
const hits = nodes.filter((node) => String(node.title ?? '') === name
|
|
169
|
+
|| String(node.content ?? '') === name);
|
|
170
|
+
if (!hits.length)
|
|
171
|
+
throw new Error(`文档目录 ${name} 不存在`);
|
|
172
|
+
if (hits.length > 1)
|
|
173
|
+
throw new Error(`文档目录 ${name} 匹配到多个,请改用目录 ID`);
|
|
174
|
+
return hits[0];
|
|
175
|
+
}
|
|
176
|
+
/** 目录节点 → 上传目录的展示对象(folderIdBrowserValue)。 */
|
|
177
|
+
export function folderBrowserValue(node) {
|
|
178
|
+
return {
|
|
179
|
+
employeeName: node?.employeeName ?? '',
|
|
180
|
+
icon: node?.icon ?? '',
|
|
181
|
+
title: node?.title ?? node?.content ?? '',
|
|
182
|
+
type: node?.type ?? '',
|
|
183
|
+
isLeaf: node?.isLeaf ?? false,
|
|
184
|
+
content: node?.content ?? node?.title ?? '',
|
|
185
|
+
parentId: node?.parentId ?? '',
|
|
186
|
+
children: [],
|
|
187
|
+
disabled: node?.disabled ?? false,
|
|
188
|
+
id: String(node?.id ?? ''),
|
|
189
|
+
key: node?.key ?? {},
|
|
190
|
+
username: node?.username ?? node?.title ?? '',
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* 取上传目录 ID。
|
|
195
|
+
*
|
|
196
|
+
* 平台读回时**不返回顶层 folderId**,只给 folderIdBrowserValue[0](且形状与写报文不同);
|
|
197
|
+
* 写报文才带 folderId。所有「判断是否已设置」和回读比对都必须走这里。
|
|
198
|
+
*/
|
|
199
|
+
export function uploadFolderIdOf(config) {
|
|
200
|
+
const node = config?.folderIdBrowserValue?.[0];
|
|
201
|
+
return String(node?.id ?? node?.dataId ?? config?.folderId ?? '');
|
|
202
|
+
}
|
|
203
|
+
/** 目录节点 → 新建文档存储位置(fixedDirectory / docFixedDirectoryConfig)。 */
|
|
204
|
+
export function fixedDirectoryValue(node) {
|
|
205
|
+
return {
|
|
206
|
+
folderValue: [{ id: String(node?.id ?? ''), content: String(node?.content ?? node?.title ?? '') }],
|
|
207
|
+
type: 'fixed',
|
|
208
|
+
folderType: 'range',
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
function stripCommonReadOnly(config) {
|
|
212
|
+
const { customAttmentSize, formFields, ...rest } = config || {};
|
|
213
|
+
return rest;
|
|
214
|
+
}
|
|
215
|
+
/** 合并通用配置改动;返回完整可保存对象。 */
|
|
216
|
+
export function applyCommonChanges(config, changes) {
|
|
217
|
+
const next = { ...(config || {}) };
|
|
218
|
+
if (changes.uploadFolder !== undefined) {
|
|
219
|
+
if (changes.uploadFolder === null) {
|
|
220
|
+
next.folderId = '';
|
|
221
|
+
next.folderIdBrowserValue = [];
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
next.folderSelectType = '0';
|
|
225
|
+
next.folderId = String(changes.uploadFolder.id);
|
|
226
|
+
next.folderIdBrowserValue = [folderBrowserValue(changes.uploadFolder)];
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
if (changes.docFolder !== undefined) {
|
|
230
|
+
next.fixedDirectory = changes.docFolder ? fixedDirectoryValue(changes.docFolder) : {};
|
|
231
|
+
}
|
|
232
|
+
if (changes.docTypes !== undefined) {
|
|
233
|
+
next.addTypeConfig = changes.docTypes && changes.docTypes.length
|
|
234
|
+
? { types: changes.docTypes }
|
|
235
|
+
: {};
|
|
236
|
+
}
|
|
237
|
+
if (changes.formats !== undefined) {
|
|
238
|
+
next.customLimitFormat = formatLimitString(changes.formats ?? []);
|
|
239
|
+
}
|
|
240
|
+
if (changes.maxSizeMb !== undefined) {
|
|
241
|
+
next.attmentSizeLimit = String(changes.maxSizeMb);
|
|
242
|
+
}
|
|
243
|
+
if (changes.enable !== undefined) {
|
|
244
|
+
next.enableState = changes.enable ? 1 : 0;
|
|
245
|
+
}
|
|
246
|
+
if (changes.displayTip !== undefined) {
|
|
247
|
+
next.displayTip = changes.displayTip;
|
|
248
|
+
}
|
|
249
|
+
return next;
|
|
250
|
+
}
|
|
251
|
+
/** 合并字段级配置改动;返回完整可保存实体。 */
|
|
252
|
+
export function applyFieldChanges(entity, changes) {
|
|
253
|
+
const next = { ...(entity || {}) };
|
|
254
|
+
const mode = changes.uploadMode;
|
|
255
|
+
if (mode === 'fixed') {
|
|
256
|
+
if (!changes.uploadFolder)
|
|
257
|
+
throw new Error('固定目录模式需要同时提供 --upload-dir');
|
|
258
|
+
next.folderSelectType = '0';
|
|
259
|
+
next.folderId = String(changes.uploadFolder.id);
|
|
260
|
+
next.folderIdBrowserValue = [folderBrowserValue(changes.uploadFolder)];
|
|
261
|
+
delete next.optionId;
|
|
262
|
+
}
|
|
263
|
+
else if (mode === 'option') {
|
|
264
|
+
if (!changes.optionFieldId)
|
|
265
|
+
throw new Error('选项关联模式需要同时提供 --option-field');
|
|
266
|
+
next.folderSelectType = '1';
|
|
267
|
+
next.optionId = String(changes.optionFieldId);
|
|
268
|
+
delete next.folderId;
|
|
269
|
+
delete next.folderIdBrowserValue;
|
|
270
|
+
}
|
|
271
|
+
else if (changes.uploadFolder !== undefined) {
|
|
272
|
+
if (String(next.folderSelectType) === '1') {
|
|
273
|
+
throw new Error('该字段当前是选项关联,先指定 --upload-mode fixed 再改固定目录');
|
|
274
|
+
}
|
|
275
|
+
if (changes.uploadFolder === null) {
|
|
276
|
+
next.folderId = '';
|
|
277
|
+
next.folderIdBrowserValue = [];
|
|
278
|
+
}
|
|
279
|
+
else {
|
|
280
|
+
next.folderId = String(changes.uploadFolder.id);
|
|
281
|
+
next.folderIdBrowserValue = [folderBrowserValue(changes.uploadFolder)];
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
if (changes.docFolder !== undefined) {
|
|
285
|
+
next.docFixedDirectoryConfig = changes.docFolder ? fixedDirectoryValue(changes.docFolder) : {};
|
|
286
|
+
}
|
|
287
|
+
if (changes.docTypes !== undefined) {
|
|
288
|
+
next.docAddTypeConfig = changes.docTypes && changes.docTypes.length
|
|
289
|
+
? { types: changes.docTypes }
|
|
290
|
+
: {};
|
|
291
|
+
}
|
|
292
|
+
if (changes.formats !== undefined) {
|
|
293
|
+
next.customLimitFormat = formatLimitString(changes.formats ?? []);
|
|
294
|
+
}
|
|
295
|
+
return next;
|
|
296
|
+
}
|
|
297
|
+
/** 构造通用配置保存报文(纯函数,便于单测锁定形状)。 */
|
|
298
|
+
export function buildCommonSaveBody(target, config) {
|
|
299
|
+
const payload = stripCommonReadOnly(config);
|
|
300
|
+
// 读回没有顶层 folderId;保存报文需要它,从展示对象里补回来。
|
|
301
|
+
if (!payload.folderId)
|
|
302
|
+
payload.folderId = uploadFolderIdOf(payload);
|
|
303
|
+
return {
|
|
304
|
+
...payload,
|
|
305
|
+
formId: target.formId,
|
|
306
|
+
configType: 0,
|
|
307
|
+
type: 'common',
|
|
308
|
+
customParam: { appId: target.appId, objId: target.objId },
|
|
309
|
+
};
|
|
310
|
+
}
|
|
311
|
+
/** 构造字段级列表保存报文(纯函数,便于单测锁定形状)。 */
|
|
312
|
+
export function buildFieldListSaveBody(target, entities) {
|
|
313
|
+
return {
|
|
314
|
+
formId: target.formId,
|
|
315
|
+
formAttachmentConfigEntities: entities,
|
|
316
|
+
configType: 1,
|
|
317
|
+
customParam: { appId: target.appId, objId: target.objId },
|
|
318
|
+
};
|
|
319
|
+
}
|
|
320
|
+
/** 保存表单通用配置。 */
|
|
321
|
+
export async function saveAttachmentCommon(client, baseUrl, target, config) {
|
|
322
|
+
checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/insertOrUpdateAttachmentForm?apid=${encodeURIComponent(target.appId)}`, buildCommonSaveBody(target, config), { ebbusinessid: target.formId }), '保存附件通用设置');
|
|
323
|
+
}
|
|
324
|
+
/** 保存字段级配置列表(整组提交,未改动的实体原样带回)。 */
|
|
325
|
+
export async function saveAttachmentFields(client, baseUrl, target, entities) {
|
|
326
|
+
checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/insertOrUpdateAttachmentFormList?apid=${encodeURIComponent(target.appId)}`, buildFieldListSaveBody(target, entities), { ebbusinessid: target.formId }), '保存附件字段设置');
|
|
327
|
+
}
|
|
328
|
+
export function findAttachmentEntity(entities, field) {
|
|
329
|
+
return entities.find((entity) => String(entity.fieldId) === String(field)
|
|
330
|
+
|| String(entity.fieldName) === field);
|
|
331
|
+
}
|
|
332
|
+
//# sourceMappingURL=form-attachment-settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-attachment-settings.js","sourceRoot":"","sources":["../../src/services/form-attachment-settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ApiClient } from '../core/client.js';
|
|
2
|
+
import { type FileMeta } from './org-employee.js';
|
|
3
|
+
export interface AttachmentUploadOptions {
|
|
4
|
+
/** 默认 true:上传同时生成文档 */
|
|
5
|
+
createDoc?: boolean;
|
|
6
|
+
/** 上传模块,表单附件默认 ebuilder */
|
|
7
|
+
module?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface UploadedAttachment {
|
|
10
|
+
fileId: string;
|
|
11
|
+
docId: string;
|
|
12
|
+
doc: boolean;
|
|
13
|
+
name: string;
|
|
14
|
+
size: number;
|
|
15
|
+
}
|
|
16
|
+
/** 构造两段上传报文(纯函数,便于单测锁定 createDoc/module 等字段)。 */
|
|
17
|
+
export declare function buildAttachmentUploadForms(meta: FileMeta, fileBytes: Buffer<ArrayBuffer>, opts?: AttachmentUploadOptions, preUploadId?: string): {
|
|
18
|
+
pre: FormData;
|
|
19
|
+
upload: FormData;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* 解析 ② 的响应。
|
|
23
|
+
*
|
|
24
|
+
* 要求生成文档时,`doc` 必须是 true —— 否则就是"只有附件没有文档"的孤儿文件,
|
|
25
|
+
* 直接在命令层报错,不让它静默通过。
|
|
26
|
+
*/
|
|
27
|
+
export declare function parseUploadedAttachment(resp: any, meta: FileMeta, createDoc: boolean): UploadedAttachment;
|
|
28
|
+
/** 上传一个文件;默认生成文档。 */
|
|
29
|
+
export declare function uploadAttachmentFile(client: ApiClient, baseUrl: string, filePath: string, opts?: AttachmentUploadOptions): Promise<UploadedAttachment>;
|
|
30
|
+
//# sourceMappingURL=form-attachment-upload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-attachment-upload.d.ts","sourceRoot":"","sources":["../../src/services/form-attachment-upload.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAmD,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEnG,MAAM,WAAW,uBAAuB;IACtC,uBAAuB;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAkBD,iDAAiD;AACjD,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,EAC9B,IAAI,GAAE,uBAA4B,EAClC,WAAW,SAAK,GACf;IAAE,GAAG,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAA;CAAE,CAerC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,GAC5C,kBAAkB,CAepB;AAED,qBAAqB;AACrB,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,uBAA4B,GACjC,OAAO,CAAC,kBAAkB,CAAC,CAa7B"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 表单附件上传(两段式)。
|
|
3
|
+
*
|
|
4
|
+
* ① `POST /api/file/preUploadCheck` → 预上传 id
|
|
5
|
+
* ② `POST /api/file/module/upload` → `fileid`,并在 `createDoc=true` 时返回 `docId`
|
|
6
|
+
*
|
|
7
|
+
* 关键点:表单附件默认必须带 `createDoc=true`。`false` 只会留下文件,文档中心
|
|
8
|
+
* 不会生成文档,附件字段虽然能回读,但「文档ID」和文档目录里都没有东西。
|
|
9
|
+
*
|
|
10
|
+
* 两段报文字段几乎相同,② 只多 `preUploadId` 与 `uploadType=common`;`file` 永远在最后。
|
|
11
|
+
* `preUploadCheck` 的返回形状不稳定,复用 org-employee 的三处兜底。
|
|
12
|
+
*/
|
|
13
|
+
import { readFileSync } from 'node:fs';
|
|
14
|
+
import { readFileMeta, extractPreUploadId, extractFileId } from './org-employee.js';
|
|
15
|
+
function appendCommonFields(form, meta, createDoc, module) {
|
|
16
|
+
form.append('compressImg', 'false');
|
|
17
|
+
form.append('customParam', JSON.stringify({ employeeId: '' }));
|
|
18
|
+
form.append('module', module);
|
|
19
|
+
form.append('tempFileFlag', 'false');
|
|
20
|
+
form.append('createDoc', createDoc ? 'true' : 'false');
|
|
21
|
+
form.append('tempFileTime', '1');
|
|
22
|
+
form.append('size', String(meta.size));
|
|
23
|
+
form.append('name', meta.name);
|
|
24
|
+
form.append('MD5', meta.md5);
|
|
25
|
+
form.append('lastModified', String(meta.lastModified));
|
|
26
|
+
form.append('lastModifiedDate', String(meta.lastModified));
|
|
27
|
+
}
|
|
28
|
+
/** 构造两段上传报文(纯函数,便于单测锁定 createDoc/module 等字段)。 */
|
|
29
|
+
export function buildAttachmentUploadForms(meta, fileBytes, opts = {}, preUploadId = '') {
|
|
30
|
+
const createDoc = opts.createDoc !== false;
|
|
31
|
+
const module = opts.module || 'ebuilder';
|
|
32
|
+
const pre = new FormData();
|
|
33
|
+
appendCommonFields(pre, meta, createDoc, module);
|
|
34
|
+
pre.append('file', new Blob([fileBytes]), meta.name);
|
|
35
|
+
const upload = new FormData();
|
|
36
|
+
appendCommonFields(upload, meta, createDoc, module);
|
|
37
|
+
upload.append('preUploadId', preUploadId);
|
|
38
|
+
upload.append('uploadType', 'common');
|
|
39
|
+
upload.append('file', new Blob([fileBytes]), meta.name);
|
|
40
|
+
return { pre, upload };
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* 解析 ② 的响应。
|
|
44
|
+
*
|
|
45
|
+
* 要求生成文档时,`doc` 必须是 true —— 否则就是"只有附件没有文档"的孤儿文件,
|
|
46
|
+
* 直接在命令层报错,不让它静默通过。
|
|
47
|
+
*/
|
|
48
|
+
export function parseUploadedAttachment(resp, meta, createDoc) {
|
|
49
|
+
const data = resp?.data || {};
|
|
50
|
+
const fileId = extractFileId(resp);
|
|
51
|
+
const doc = data.doc === true || String(data.doc) === 'true';
|
|
52
|
+
const docId = String(data.docId ?? data.docid ?? '');
|
|
53
|
+
if (createDoc && !doc) {
|
|
54
|
+
throw new Error(`上传未生成文档(createDoc=true,响应 doc=${String(data.doc)});请确认模块 ${data.moduleId || 'ebuilder'} 的文档权限`);
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
fileId,
|
|
58
|
+
docId,
|
|
59
|
+
doc,
|
|
60
|
+
name: String(data.name || meta.name),
|
|
61
|
+
size: Number(data.size ?? meta.size),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/** 上传一个文件;默认生成文档。 */
|
|
65
|
+
export async function uploadAttachmentFile(client, baseUrl, filePath, opts = {}) {
|
|
66
|
+
const createDoc = opts.createDoc !== false;
|
|
67
|
+
const meta = readFileMeta(filePath);
|
|
68
|
+
const bytes = readFileSync(filePath);
|
|
69
|
+
const { pre } = buildAttachmentUploadForms(meta, bytes, opts);
|
|
70
|
+
const preResp = await client.postMultipart(`${baseUrl}/api/file/preUploadCheck`, pre);
|
|
71
|
+
const preUploadId = extractPreUploadId(preResp);
|
|
72
|
+
const { upload } = buildAttachmentUploadForms(meta, bytes, opts, preUploadId);
|
|
73
|
+
const uploadResp = await client.postMultipart(`${baseUrl}/api/file/module/upload`, upload);
|
|
74
|
+
return parseUploadedAttachment(uploadResp, meta, createDoc);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=form-attachment-upload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-attachment-upload.js","sourceRoot":"","sources":["../../src/services/form-attachment-upload.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-data-openapi.d.ts","sourceRoot":"","sources":["../../src/services/form-data-openapi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,KAAK,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,eAAe,CAAC,CAAC;AAapE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"form-data-openapi.d.ts","sourceRoot":"","sources":["../../src/services/form-data-openapi.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,6 +50,7 @@ function toFieldMeta(raw) {
|
|
|
50
50
|
compType: String(raw?.compType ?? raw?.type ?? ''),
|
|
51
51
|
type: String(raw?.type ?? ''),
|
|
52
52
|
multiSelect: raw?.multiSelect === true || String(raw?.multiSelect) === 'true',
|
|
53
|
+
format: String(raw?.format ?? raw?.dateFormat ?? raw?.config?.format ?? raw?.config?.dateFormat ?? ''),
|
|
53
54
|
};
|
|
54
55
|
}
|
|
55
56
|
/**
|