@microi.net/cli 5.5.8 → 5.6.0
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/.codebuddy-plugin/marketplace.json +2 -2
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.mcp.json +1 -1
- package/.workbuddy-plugin/marketplace.json +2 -2
- package/.workbuddy-plugin/plugin.json +1 -1
- package/README.md +71 -71
- package/assets/build-meta.json +5 -5
- package/assets/feature-matrix.json +129 -129
- package/cordis.patch.yml +1 -1
- package/package.json +1 -1
- package/scripts/codex-marketplace.json +20 -20
- package/scripts/mcp-codex-stdio-adapter.js +189 -189
- package/scripts/mcp-trae-windows-launcher.cmd +21 -21
- package/scripts/microi-cli-mcp.js +7 -7
- package/scripts/microi-codex-broker.js +447 -447
- package/scripts/microi-codex-router.js +582 -582
- package/scripts/microi-skills.meta.json +336 -336
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +3566 -3566
- package/skills/README.md +3 -3
- package/skills/ai-engine/SKILL.md +45 -43
- package/skills/ai-platform-governance/SKILL.md +177 -177
- package/skills/ai-platform-governance/references/progressive-01-/345/212/237/350/203/275/345/274/200/345/205/263.md +190 -190
- package/skills/app-store/SKILL.md +177 -177
- package/skills/business-blueprint/SKILL.md +85 -85
- package/skills/datasource-engine/SKILL.md +91 -91
- package/skills/dos-orm/SKILL.md +81 -81
- package/skills/dos-orm/references/api-reference.md +229 -229
- package/skills/email-engine/SKILL.md +80 -80
- package/skills/email-engine/references/v8-email.md +34 -34
- package/skills/job-engine/SKILL.md +154 -143
- package/skills/message-notification/SKILL.md +126 -126
- package/skills/message-notification/agents/openai.yaml +5 -5
- package/skills/message-notification/references/contracts.md +102 -102
- package/skills/microi-ai-app-auth.js +652 -652
- package/skills/microi-ai-application/SKILL.md +102 -94
- package/skills/microi-ai-application/agents/openai.yaml +4 -4
- package/skills/microi-ai-application/references/frontend-baseline.md +164 -164
- package/skills/microi-client-frontend/SKILL.md +43 -43
- package/skills/microi-client-frontend/references/progressive-01-3-/345/212/250/346/200/201/346/214/211/351/222/256/347/263/273/347/273/237.md +2 -2
- package/skills/microi-client-frontend/references/progressive-02-8-/350/277/220/350/241/214/346/227/266/351/253/230/351/242/221/345/235/221/345/244/215/347/233/230.md +28 -28
- package/skills/microi-client-frontend/references/progressive-03-vue3-/345/211/215/347/253/257/345/276/256/346/234/215/345/212/241/345/256/277/344/270/273/350/247/204/345/210/231.md +56 -56
- package/skills/microi-codex/SKILL.md +46 -46
- package/skills/microi-codex-installer/SKILL.md +216 -216
- package/skills/microi-codex-installer/agents/openai.yaml +7 -7
- package/skills/microi-datasource-mapping/SKILL.md +67 -67
- package/skills/microi-db-schema/SKILL.md +6 -6
- package/skills/microi-db-schema/references/core-tables.md +18 -18
- package/skills/microi-db-schema/references/form-component-options.md +256 -256
- package/skills/microi-db-schema/references/schema-overview.md +11 -11
- package/skills/microi-db-schema/references/schema.md +46 -46
- package/skills/microi-db-schema/references/table-catalog.md +57 -57
- package/skills/microi-deployment/SKILL.md +18 -1
- package/skills/microi-deployment/references/deployment-matrix.md +101 -101
- package/skills/microi-docs-coverage/SKILL.md +123 -123
- package/skills/microi-docs-coverage/references/capability-map.md +1 -0
- package/skills/microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs +894 -894
- package/skills/microi-form-engine/SKILL.md +50 -50
- package/skills/microi-form-engine/references/component-catalog.md +218 -218
- package/skills/microi-form-engine/references/data-source-events.md +124 -124
- package/skills/microi-form-layout/SKILL.md +13 -13
- package/skills/microi-form-layout/references/progressive-01-3-/344/270/211/347/247/215/345/210/206/347/273/204/347/232/204/345/255/230/345/202/250/344/270/216/351/205/215/347/275/256.md +235 -235
- package/skills/microi-frontend-sdk/SKILL.md +4 -4
- package/skills/microi-frontend-sdk/references/progressive-01-token-/345/275/223/345/211/215/347/231/273/345/275/225/347/224/250/346/210/267/344/270/216/345/275/223/345/211/215/347/273/210/347/253/257/347/231/273/345/275/225/345/215/217/350/256/256.md +175 -175
- package/skills/microi-left-right-layout/SKILL.md +141 -141
- package/skills/microi-microservice/SKILL.md +12 -10
- package/skills/microi-microservice/references/runtime-delivery.md +278 -278
- package/skills/microi-mobile-app-quality/references/progressive-01-4-/351/207/215/350/246/201/346/214/211/351/222/256/345/277/205/351/241/273/345/270/246/345/233/276/346/240/207.md +213 -213
- package/skills/microi-solution-quotation/SKILL.md +78 -78
- package/skills/microi-solution-quotation/agents/openai.yaml +4 -4
- package/skills/microi-solution-quotation/scripts/build_solution_quote.py +296 -296
- package/skills/microi-sso/SKILL.md +85 -85
- package/skills/microi-sso/references/acceptance.md +49 -49
- package/skills/microi-sso/references/configuration-and-security.md +53 -53
- package/skills/microi-sso/references/inbound.md +53 -53
- package/skills/microi-sso/references/outbound.md +39 -39
- package/skills/microi-system-delivery/references/progressive-02-/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/345/277/205/351/241/273/350/246/206/347/233/226/347/232/204/345/235/221.md +20 -20
- package/skills/microi-ui/SKILL.md +7 -2
- package/skills/microi-uniapp-frontend/SKILL.md +134 -134
- package/skills/microi-uniapp-frontend/references/progressive-01-/347/247/273/345/212/250/347/253/257/345/210/206/347/261/273-/345/217/214/346/240/217/345/210/227/350/241/250/347/213/254/347/253/213/346/273/232/345/212/250.md +136 -136
- package/skills/microi-uniapp-frontend/references/progressive-02-/345/205/263/351/224/256/344/270/232/345/212/241/350/265/204/344/272/247/344/270/215/345/276/227/351/273/230/350/256/244/351/200/211/344/270/255.md +124 -124
- package/skills/module-engine/SKILL.md +16 -16
- package/skills/ocr-engine/SKILL.md +2 -2
- package/skills/ocr-engine/agents/openai.yaml +1 -1
- package/skills/page-engine/SKILL.md +28 -28
- package/skills/page-engine/references/progressive-01-/346/211/200/346/234/211/347/273/204/344/273/266/347/261/273/345/236/213.md +126 -126
- package/skills/page-engine/references/progressive-02-/347/211/210/346/234/254/345/216/206/345/217/262-/345/271/266/345/217/221/344/277/235/345/255/230/344/270/216/345/233/236/346/273/232.md +42 -42
- package/skills/performance-testing/SKILL.md +120 -120
- package/skills/playwright-e2e/SKILL.md +84 -84
- package/skills/playwright-e2e/references/progressive-01-/345/205/250/350/207/252/345/212/250/347/231/273/345/275/225-/345/205/215/351/252/214/350/257/201/347/240/201-/344/275/206/344/270/215/345/205/215/345/257/206/347/240/201-/345/277/205/350/257/273.md +68 -68
- package/skills/playwright-e2e/references/progressive-02-/346/226/207/345/255/227/345/257/271/346/257/224/345/272/246/344/270/216/345/217/257/350/257/273/346/200/247/350/207/252/345/212/250/345/214/226/346/243/200/346/237/245-/345/277/205/345/201/232.md +64 -64
- package/skills/playwright-e2e/references/progressive-03-microi-helper-/346/250/241/346/235/277.md +20 -20
- package/skills/playwright-e2e/references/progressive-04-ci-/345/273/272/350/256/256.md +69 -69
- package/skills/print-engine/SKILL.md +36 -36
- package/skills/production-readonly-audit/SKILL.md +41 -41
- package/skills/report-engine/SKILL.md +71 -71
- package/skills/scripts/optimize-progressive-disclosure.mjs +204 -204
- package/skills/scripts/refresh-progressive-disclosure.mjs +64 -64
- package/skills/scripts/validate-progressive-disclosure.mjs +52 -52
- package/skills/search-engine/SKILL.md +75 -75
- package/skills/spider-engine/SKILL.md +190 -190
- package/skills/system-observability/SKILL.md +162 -162
- package/skills/system-observability/references/memory-incident-triage.md +73 -73
- package/skills/translate-engine/SKILL.md +1 -1
- package/skills/ui-design/SKILL.md +3 -1
- package/skills/uniapp-mall-assets/SKILL.md +170 -170
- package/skills/unity-integration/SKILL.md +155 -155
- package/skills/unity-integration/agents/openai.yaml +4 -4
- package/skills/unity-integration/references/ai-app-delivery.md +103 -103
- package/skills/unity-integration/references/sdk-api.md +82 -82
- package/skills/unity-integration/references/toolbox-migration.md +66 -66
- package/skills/unity-integration/references/webgl-hosting.md +57 -57
- package/skills/v8-api-config/SKILL.md +378 -378
- package/skills/v8-cache-pattern/SKILL.md +306 -306
- package/skills/v8-crud-api/SKILL.md +29 -29
- package/skills/v8-crud-api/references/progressive-01-/346/237/245/350/257/242/345/210/227/350/241/250-/345/210/206/351/241/265.md +56 -56
- package/skills/v8-debugging/SKILL.md +143 -143
- package/skills/v8-explorer-tree/SKILL.md +64 -64
- package/skills/v8-export-import/references/progressive-01-excellayout-/351/253/230/347/272/247/350/207/252/347/224/261/345/270/203/345/261/200.md +201 -201
- package/skills/v8-export-import/references/progressive-02-powerpoint-/345/257/274/345/207/272.md +118 -118
- package/skills/v8-export-import/references/progressive-03-/345/256/211/345/205/250-/346/200/247/350/203/275/346/263/250/346/204/217.md +32 -32
- package/skills/v8-file-upload/SKILL.md +154 -154
- package/skills/v8-file-upload/references/progressive-01-/345/205/254/346/234/211/346/241/266-vs-/347/247/201/346/234/211/346/241/266.md +133 -133
- package/skills/v8-file-upload/references/progressive-02-office-/346/226/207/344/273/266/345/234/250/347/272/277/347/274/226/350/276/221/347/211/210/346/234/254/345/217/267/350/247/204/345/210/231.md +138 -138
- package/skills/v8-formengine-http/SKILL.md +107 -107
- package/skills/v8-frontend-events/SKILL.md +22 -22
- package/skills/v8-frontend-events/references/bluetooth-print-api.md +135 -135
- package/skills/v8-frontend-events/references/bluetooth-print.md +247 -247
- package/skills/v8-frontend-events/references/progressive-01-/345/210/227/350/241/250/344/272/213/344/273/266.md +50 -50
- package/skills/v8-http-integration/SKILL.md +106 -106
- package/skills/v8-http-integration/references/progressive-01-get-/350/257/267/346/261/202.md +31 -31
- package/skills/v8-http-integration/references/progressive-02-/351/224/231/350/257/257/345/244/204/347/220/206/346/250/241/345/274/217.md +5 -5
- package/skills/v8-image-processing/SKILL.md +190 -190
- package/skills/v8-image-processing/agents/openai.yaml +4 -4
- package/skills/v8-image-processing/references/api-reference.md +623 -623
- package/skills/v8-menu-buttons/SKILL.md +103 -103
- package/skills/v8-menu-buttons/references/progressive-01-2-/346/214/211/351/222/256/345/257/271/350/261/241-schema.md +145 -145
- package/skills/v8-menu-buttons/references/progressive-02-8-/346/250/241/345/274/217-f-/345/220/216/345/217/260/344/273/273/345/212/241/346/214/211/351/222/256-/351/225/277/344/273/273/345/212/241.md +228 -228
- package/skills/v8-menu-buttons/references/progressive-03-10-/345/217/215/346/250/241/345/274/217-/351/201/277/345/205/215.md +43 -43
- package/skills/v8-mongodb/SKILL.md +65 -65
- package/skills/v8-mq-mqtt/SKILL.md +175 -175
- package/skills/v8-mq-mqtt/references/mqtt-production.md +342 -342
- package/skills/v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-/347/211/251/350/201/224/347/275/221.md +137 -137
- package/skills/v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs +203 -203
- package/skills/v8-saas-multi-tenant/SKILL.md +223 -223
- package/skills/v8-security/SKILL.md +25 -25
- package/skills/v8-security/references/progressive-01-2-/346/235/203/351/231/220/346/240/241/351/252/214.md +122 -122
- package/skills/v8-sql-query/SKILL.md +127 -127
- package/skills/v8-table-event/SKILL.md +20 -20
- package/skills/v8-table-event/references/progressive-01-informv8-js-/350/241/250/345/215/225/346/211/223/345/274/200/344/272/213/344/273/266.md +18 -18
- package/skills/v8-table-event/references/progressive-02-/345/211/215/347/253/257/344/272/213/344/273/266/345/220/215-v8-eventname-/345/217/257/350/203/275/347/232/204/345/200/274.md +15 -15
- package/skills/v8-tcp-integration/SKILL.md +1 -1
- package/skills/v8-tcp-integration/agents/openai.yaml +4 -4
- package/skills/v8-template-engine/SKILL.md +59 -59
- package/skills/v8-utilities/SKILL.md +92 -92
- package/skills/v8-utilities/references/client-api-index.md +143 -143
- package/skills/v8-utilities/references/platform-http-routes.md +83 -83
- package/skills/v8-utilities/references/server-api-index.md +74 -74
- package/skills/v8-workflow/SKILL.md +44 -44
- package/skills/vision-engine/SKILL.md +19 -19
- package/skills/vision-engine/references/architecture-and-acceptance.md +34 -34
- package/skills/workspace-conventions/SKILL.md +236 -236
- package/skills/workspace-conventions/references/progressive-01-/347/211/210/346/234/254/346/233/264/346/226/260/346/227/245/345/277/227/344/277/235/346/212/244/350/247/204/345/210/231-/345/274/272/345/210/266.md +208 -208
- package/skills/workspace-conventions/references/progressive-02-microi-net-api-/346/234/254/345/234/260/345/220/257/345/212/250/347/272/246/345/256/232.md +179 -179
- package/skills/workspace-conventions/references/progressive-03-cli-/344/270/216-ide-/346/217/222/344/273/266/351/224/231/347/211/210/345/205/261/345/255/230/347/272/246/345/256/232.md +21 -21
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: microi-db-schema
|
|
3
|
-
description: Microi 吾码数据库结构与字典指南。用于通过实时 MCP Schema 或当前租户快照检查 Microi 平台表,梳理 diy_table/diy_field/sys_menu 关系,定位 V8 事件存储字段,生成安全的系统表 V8 FormEngine 查询,或分析工作流、SaaS、权限、菜单、接口引擎、数据源和系统配置结构。
|
|
3
|
+
description: Microi 吾码数据库结构与字典指南。用于通过实时 MCP Schema 或当前租户快照检查 Microi 平台表,梳理 diy_table/diy_field/sys_menu 关系,定位 V8 事件存储字段,生成安全的系统表 V8 FormEngine 查询,或分析工作流、SaaS、权限、菜单、接口引擎、数据源和系统配置结构。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
> **Codex 非阻塞自动更新:** 当前宿主为 Codex 时,吾码 CLI、Codex 插件与工作区 AI/MCP 由后台自动更新;需要诊断时读取 `../microi-codex-installer/SKILL.md`。更新失败、等待空闲或尚未重载均不得阻断当前、正在进行或新建任务。非 Codex 宿主跳过此项。
|
|
@@ -11,9 +11,9 @@ description: Microi 吾码数据库结构与字典指南。用于通过实时 MC
|
|
|
11
11
|
|
|
12
12
|
## 快速流程
|
|
13
13
|
|
|
14
|
-
1. 优先调用 `microi_get_db_schema` 获取当前服务器的实时表结构;无法连接时才读取当前引擎所属 OsClient 目录的 `.microi-db-schema.md`,并明确说明快照可能过期。`references/schema.md` 只用于理解通用关系,不是任何租户的权威字段清单。
|
|
14
|
+
1. 优先调用 `microi_get_db_schema` 获取当前服务器的实时表结构;无法连接时才读取当前引擎所属 OsClient 目录的 `.microi-db-schema.md`,并明确说明快照可能过期。`references/schema.md` 只用于理解通用关系,不是任何租户的权威字段清单。
|
|
15
15
|
2. 编写感知结构的 V8 代码时,优先使用带 `_Where` 的 `V8.FormEngine`。只有联表、聚合或 FormEngine 无法表达的场景才使用 `V8.Db.FromSql`,并且必须参数化动态值。
|
|
16
|
-
3. 实时 MCP Schema 是字段事实源;本地 `.microi-db-schema.md` 仅作离线快照。不要假设普通用户拥有某个仓库专属数据库文件。DIY 表还带有固定系统字段(`Id`、`CreateTime`、`UpdateTime`、`UserId`、`UserName`、`IsDeleted`)。
|
|
16
|
+
3. 实时 MCP Schema 是字段事实源;本地 `.microi-db-schema.md` 仅作离线快照。不要假设普通用户拥有某个仓库专属数据库文件。DIY 表还带有固定系统字段(`Id`、`CreateTime`、`UpdateTime`、`UserId`、`UserName`、`IsDeleted`)。
|
|
17
17
|
|
|
18
18
|
## 核心模型
|
|
19
19
|
|
|
@@ -113,9 +113,9 @@ AI 或 MCP 生成低代码系统时,必须默认遵守此规则。发现已有
|
|
|
113
113
|
并把真实外键放在子表。不得创建主表 `XxxId` 后用 `JoinForm` 冒充子表。
|
|
114
114
|
- `JoinForm` 仅用于主表保存一个目标 Id 并嵌入一条独立目标记录;目标表不能与当前表相同。
|
|
115
115
|
关系基数不明确时,MCP 写入前必须询问,不能把 `JoinForm` 当安全默认值。
|
|
116
|
-
- 子表外键必须建立与物理租户隔离方式一致的回查索引:物理表存在 `OsClient` 时通常为
|
|
117
|
-
`(OsClient, ParentId)`,独立租户物理表没有 `OsClient` 时为 `(ParentId)`。结构或索引读取失败
|
|
118
|
-
必须拒绝关系配置,不能为了通过校验新增不存在业务语义的 `OsClient` 列。子表还要有绑定同一子表的隐藏菜单,
|
|
116
|
+
- 子表外键必须建立与物理租户隔离方式一致的回查索引:物理表存在 `OsClient` 时通常为
|
|
117
|
+
`(OsClient, ParentId)`,独立租户物理表没有 `OsClient` 时为 `(ParentId)`。结构或索引读取失败
|
|
118
|
+
必须拒绝关系配置,不能为了通过校验新增不存在业务语义的 `OsClient` 列。子表还要有绑定同一子表的隐藏菜单,
|
|
119
119
|
`Display=0`、`AppDisplay=0`、`HasChild=0`。
|
|
120
120
|
- Manifest/蓝图审查时,只要发现 1:N 关系对应 `JoinForm`、缺少子表外键、缺少隐藏子菜单
|
|
121
121
|
或缺少回查索引,就必须判定计划不合格,停止写入。
|
|
@@ -153,11 +153,11 @@ Use this reference when exact field names are needed for core platform configura
|
|
|
153
153
|
| `SelectFields` | 查询列 | `mediumtext` | `JsonTable` | 指定select哪些列,不指定则是select * |
|
|
154
154
|
| `SortFieldIds` | 可排序字段 | `mediumtext` | `MultipleSelect` | 可排序字段 |
|
|
155
155
|
| `DelCodeShowV8` | [删除]按钮显示条件 | `mediumtext` | `CodeEditor` | [删除]按钮显示条件 |
|
|
156
|
-
| `DiyConfig` | 已废弃 | `mediumtext` | `CodeEditor` | 仅兼容历史数据,禁止写入新配置 |
|
|
157
|
-
| `EnableViewSchema` | 启用跨端视图 | `int` | `Switch` | 1 表示启用 `ViewSchema` |
|
|
158
|
-
| `ViewSchemaVersion` | 视图协议版本 | `varchar(25)` | `Text` | 当前协议语义版本 |
|
|
159
|
-
| `ViewConfigVersion` | 视图配置版本 | `int` | `NumberText` | 每次发布配置时递增 |
|
|
160
|
-
| `ViewSchema` | 模块展示设计器 | `mediumtext` | `DevComponent` | 可视化配置 List/Card,保存 Detail/Edit/List/Card 的版本化 JSON |
|
|
156
|
+
| `DiyConfig` | 已废弃 | `mediumtext` | `CodeEditor` | 仅兼容历史数据,禁止写入新配置 |
|
|
157
|
+
| `EnableViewSchema` | 启用跨端视图 | `int` | `Switch` | 1 表示启用 `ViewSchema` |
|
|
158
|
+
| `ViewSchemaVersion` | 视图协议版本 | `varchar(25)` | `Text` | 当前协议语义版本 |
|
|
159
|
+
| `ViewConfigVersion` | 视图配置版本 | `int` | `NumberText` | 每次发布配置时递增 |
|
|
160
|
+
| `ViewSchema` | 模块展示设计器 | `mediumtext` | `DevComponent` | 可视化配置 List/Card,保存 Detail/Edit/List/Card 的版本化 JSON |
|
|
161
161
|
| `Url` | Url地址 | `varchar(500)` | `Text` | Url地址 |
|
|
162
162
|
| `IconClass` | 图标 | `varchar(500)` | `FontAwesome` | 图标 |
|
|
163
163
|
| `EditCodeShowV8` | [编辑]按钮显示条件 | `mediumtext` | `CodeEditor` | [编辑]按钮显示条件 |
|
|
@@ -356,17 +356,17 @@ Use this reference when exact field names are needed for core platform configura
|
|
|
356
356
|
|
|
357
357
|
### `sys_osclients` - OsClients
|
|
358
358
|
|
|
359
|
-
字段数:98
|
|
360
|
-
|
|
361
|
-
| 字段 | 标签 | 类型 | 控件 | 说明 |
|
|
362
|
-
|---|---|---|---|---|
|
|
363
|
-
| `DisableFileUpload` | 关闭文件上传 | `int` | `Switch` | 默认关闭且允许上传;只有 `1/true` 才禁止当前租户交互式上传。旧 `FileUploadEnabled` 仅作未升级节点兼容并在新版表单隐藏。 |
|
|
364
|
-
| `FileUploadMaxFileMB` | 单文件上限MB | `int` | `NumberText` | 租户业务值;留空依次使用环境变量、appsettings、代码默认值,最终受独立 Absolute/HTTP 上限保护。 |
|
|
365
|
-
| `FileUploadMaxRequestMB` | 单次总量上限MB | `int` | `NumberText` | 租户一次上传全部文件的业务合计;留空按回退链取值,最终受独立 Absolute/HTTP 上限保护。 |
|
|
366
|
-
| `FileUploadMaxCount` | 单次文件数上限 | `int` | `NumberText` | 租户业务值;必须为正整数,留空按回退链取值,最终受 AbsoluteMaxFileCount 保护。 |
|
|
367
|
-
| `FileUploadDailyUserQuotaMB` | 账号日额度MB | `int` | `NumberText` | 留空使用平台默认额度;按 UTC 日期、当前租户和账号在共享 Redis 原子统计。 |
|
|
368
|
-
| `FileUploadDailyTenantQuotaMB` | 租户日额度MB | `int` | `NumberText` | 留空使用平台默认额度;按 UTC 日期和当前租户在共享 Redis 原子统计。 |
|
|
369
|
-
| `MqttEnable` | 启用MQTT | `int` | `Switch` | 注意只有主库对应的SaaS引擎这一条数据MQTT配置的【MQTT端口】才有效果,其它租户SaaS引擎中的MQTT配置中【启用MQTT、用户名、密码、接口引擎】有效。 |
|
|
359
|
+
字段数:98
|
|
360
|
+
|
|
361
|
+
| 字段 | 标签 | 类型 | 控件 | 说明 |
|
|
362
|
+
|---|---|---|---|---|
|
|
363
|
+
| `DisableFileUpload` | 关闭文件上传 | `int` | `Switch` | 默认关闭且允许上传;只有 `1/true` 才禁止当前租户交互式上传。旧 `FileUploadEnabled` 仅作未升级节点兼容并在新版表单隐藏。 |
|
|
364
|
+
| `FileUploadMaxFileMB` | 单文件上限MB | `int` | `NumberText` | 租户业务值;留空依次使用环境变量、appsettings、代码默认值,最终受独立 Absolute/HTTP 上限保护。 |
|
|
365
|
+
| `FileUploadMaxRequestMB` | 单次总量上限MB | `int` | `NumberText` | 租户一次上传全部文件的业务合计;留空按回退链取值,最终受独立 Absolute/HTTP 上限保护。 |
|
|
366
|
+
| `FileUploadMaxCount` | 单次文件数上限 | `int` | `NumberText` | 租户业务值;必须为正整数,留空按回退链取值,最终受 AbsoluteMaxFileCount 保护。 |
|
|
367
|
+
| `FileUploadDailyUserQuotaMB` | 账号日额度MB | `int` | `NumberText` | 留空使用平台默认额度;按 UTC 日期、当前租户和账号在共享 Redis 原子统计。 |
|
|
368
|
+
| `FileUploadDailyTenantQuotaMB` | 租户日额度MB | `int` | `NumberText` | 留空使用平台默认额度;按 UTC 日期和当前租户在共享 Redis 原子统计。 |
|
|
369
|
+
| `MqttEnable` | 启用MQTT | `int` | `Switch` | 注意只有主库对应的SaaS引擎这一条数据MQTT配置的【MQTT端口】才有效果,其它租户SaaS引擎中的MQTT配置中【启用MQTT、用户名、密码、接口引擎】有效。 |
|
|
370
370
|
| `MqttApiEngine` | 接口引擎 | `varchar(100)` | `Select` | 服务器端启动时、客户端连接时/发送消息时/断开连接时均触发。EventName:StartServer、Connected、Disconnected、MessageReceived、StopServer |
|
|
371
371
|
| `MqttPort` | MQTT端口 | `int` | `NumberText` | 默认1883,注意api的编排ports参数必须添加对应的如- "1883:1883"。<br>注意只有主库对应的SaaS引擎这一条数据MQTT配置的【MQTT端口】才有效果,其它租户SaaS引擎中的MQTT配置中【启用MQTT、用户名、密码、接口引擎】有效。 |
|
|
372
372
|
| `MqttAccount` | 用户名 | `varchar(50)` | `Text` | 用户名 |
|
|
@@ -406,12 +406,12 @@ Use this reference when exact field names are needed for core platform configura
|
|
|
406
406
|
| `OsClientType` | OsClientType | `varchar(50)` | `Text` | SaaS引擎软件环境,自定义值,示例:Product(正式环境))、Dev(测试环境)、WZ(外帐) |
|
|
407
407
|
| `TencentAppId` | TencentAppId | `varchar(50)` | `Text` | TencentAppId |
|
|
408
408
|
| `DbVersion` | 数据库版本 | `varchar(50)` | `Text` | 如:12c、11g |
|
|
409
|
-
| `OsClient` | OsClient | `varchar(50)` | `Text` | SaaS引擎Key,自定义值,建议全小写字母。示例:tenant_a、tenant_demo、demo01 |
|
|
409
|
+
| `OsClient` | OsClient | `varchar(50)` | `Text` | SaaS引擎Key,自定义值,建议全小写字母。示例:tenant_a、tenant_demo、demo01 |
|
|
410
410
|
| `AliOssPrivateAccessKeyId` | 阿里云私有桶Key | `varchar(50)` | `Text` | 阿里云私有桶Key |
|
|
411
411
|
| `ClientSecrets` | Token密钥 | `varchar(50)` | `Text` | 废弃字段 |
|
|
412
412
|
| `MQVitrualHost` | VitrualHost | `varchar(50)` | `Text` | VitrualHost |
|
|
413
413
|
| `DbReadConn` | 数据库连接字符串(读) | `varchar(500)` | `Text` | 为空则取DbConn |
|
|
414
|
-
| `CorsAllowOrigins` | 跨域配置 | `mediumtext` | `Textarea` | 主租户此字段为空时默认允许任意来源;填写后按精确来源或通配符收紧,`CorsAllowAnyWhenUnconfigured` 可调整未配置时的兼容行为。示例:http://localhost:2009;https://os.itdos.com;https://*.microi.net。CORS 不是鉴权边界。 |
|
|
414
|
+
| `CorsAllowOrigins` | 跨域配置 | `mediumtext` | `Textarea` | 主租户此字段为空时默认允许任意来源;填写后按精确来源或通配符收紧,`CorsAllowAnyWhenUnconfigured` 可调整未配置时的兼容行为。示例:http://localhost:2009;https://os.itdos.com;https://*.microi.net。CORS 不是鉴权边界。 |
|
|
415
415
|
| `SessionAuthTimeout` | Token过期时间(PC) | `varchar(50)` | `Text` | 单位:分钟,默认20分钟 |
|
|
416
416
|
| `MQUserName` | 用户名 | `varchar(50)` | `Text` | 用户名 |
|
|
417
417
|
| `DomainName` | 域名 | `mediumtext` | `Text` | 多个域名使用英文分号分割,移动端建议使用m-开头。 |
|
|
@@ -1,256 +1,256 @@
|
|
|
1
|
-
# Microi 表单组件配置项参考
|
|
2
|
-
|
|
3
|
-
本参考用于 AI 生成、审查或修复 `diy_field.Config`。事实源仍是 `Microi.Client/src/views/form-engine/diy-field-component/` 与 `diy-component-list.json`;组件源码新增配置时,必须同步更新本文件和官方文档。
|
|
4
|
-
|
|
5
|
-
## 字段级元数据
|
|
6
|
-
|
|
7
|
-
| 字段 | 说明 |
|
|
8
|
-
| --- | --- |
|
|
9
|
-
| `Label` / `Name` | 显示名 / 物理字段名。`Name` 使用 PascalCase 或既有表字段名,不写中文。 |
|
|
10
|
-
| `Type` | 物理列类型,只使用平台允许类型:`varchar(N)`、`mediumtext`、`longtext`、`int`、`bigint`、`decimal(18,N)`。日期时间存 `varchar(25)`。 |
|
|
11
|
-
| `Component` | 控件类型,例如 `Text`、`Select`、`TableChild`。 |
|
|
12
|
-
| `NotEmpty` / `Readonly` | 必填、只读。 |
|
|
13
|
-
| `Visible` / `AppVisible` | PC / App 是否显示,默认业务字段为 `1`。 |
|
|
14
|
-
| `TableWidth` / `FormWidth` | 列表宽度 / 表单栅格宽度。普通字段一般不设置 `FormWidth`;上传、富文本、代码、地图、子表等整行控件设 `24`。 |
|
|
15
|
-
| `Data` | 选项类控件静态数据,常用 KeyValue:`key|label,key2|label2`。 |
|
|
16
|
-
| `DefaultValue` / `Placeholder` / `Tab` | 默认值、占位提示、表单 Tab 分组。 |
|
|
17
|
-
| `V8Code` / `KeyupV8Code` / `V8TmpEngineTable` / `V8TmpEngineForm` | 字段前端事件或 V8 模板代码。代码必须格式化,不要写成单行。 |
|
|
18
|
-
|
|
19
|
-
## 通用 `Config` 根节点
|
|
20
|
-
|
|
21
|
-
| 配置 | 说明 |
|
|
22
|
-
| --- | --- |
|
|
23
|
-
| `EnableSearch` | 是否作为搜索条件。 |
|
|
24
|
-
| `ParamData` | 组件请求或 V8 使用的附加参数。 |
|
|
25
|
-
| `Sql` | SQL 数据源查询语句。动态值使用平台占位或后端参数化规则,不拼接用户输入。 |
|
|
26
|
-
| `DataSource` | 数据源类型:`Data`、`KeyValue`、`Sql`、`ApiEngine`、`DataSource` 等。 |
|
|
27
|
-
| `DataSourceSqlRemote` / `DataSourceSqlRemoteLoading` | SQL 是否远程搜索 / 加载态。 |
|
|
28
|
-
| `DataSourceId` / `DataSourceApiEngineKey` | 数据源引擎 Id / 接口引擎 Key。 |
|
|
29
|
-
| `SelectLabel` / `SelectSaveField` | 下拉、树、级联等显示字段 / 保存字段。 |
|
|
30
|
-
| `SelectSaveFormat` | 保存格式,常用 `Text` 或 `Json`。 |
|
|
31
|
-
| `V8Code` / `V8CodeBlur` | 值变更、失焦事件代码。 |
|
|
32
|
-
| `TextIcon` / `TextIconPosition` | 输入框图标与位置。 |
|
|
33
|
-
| `TextApend` / `TextApendPosition` | 输入框前后缀文本与位置。 |
|
|
34
|
-
| `TextShowPassword` / `TextAutocomplete` | 密码显示模式 / 浏览器联想。 |
|
|
35
|
-
| `DateTimeType` | 日期控件类型,如 `date`、`datetime`。 |
|
|
36
|
-
| `DevComponentName` / `DevComponentPath` | 自定义组件名称和路径。 |
|
|
37
|
-
| `MapCompany` | 地图服务商,默认 `Baidu`。 |
|
|
38
|
-
|
|
39
|
-
## 基础输入类
|
|
40
|
-
|
|
41
|
-
| 组件 | 推荐类型 | 配置项 |
|
|
42
|
-
| --- | --- | --- |
|
|
43
|
-
| `Text` | `varchar(200)` | 使用通用文本配置:`TextShowPassword`、`TextIcon`、`TextApend`、`V8CodeBlur`。 |
|
|
44
|
-
| `Guid` | `varchar(50)` | 通常只读,用于保存业务关联 GUID。 |
|
|
45
|
-
| `Textarea` | `mediumtext` | `Textarea.DefaultRows` 控制默认行数。 |
|
|
46
|
-
| `NumberText` | `int` 或 `decimal(18,N)` | `NumberTextStep`、`NumberTextPrecision`、`NumberTextMath`、`NumberTextBtn`、`NumberTextBtnPosition`。 |
|
|
47
|
-
| `DateTime` | `varchar(25)` | `DateTimeType` 控制日期、日期时间等模式。 |
|
|
48
|
-
| `Switch` | `int` | 存 `1/0`,不要用 `varchar` 或 `boolean`。 |
|
|
49
|
-
| `Rate` / `Progress` / `Slider` | `int` | 评分、进度、滑块值。 |
|
|
50
|
-
| `ColorPicker` | `varchar(50)` | 保存颜色字符串。 |
|
|
51
|
-
|
|
52
|
-
## 选项和数据源类
|
|
53
|
-
|
|
54
|
-
| 组件 | 推荐类型 | 配置项 |
|
|
55
|
-
| --- | --- | --- |
|
|
56
|
-
| `Select` | `varchar(50)` | 必须配置 `Data` 或 `Config.DataSource`;常用 `SelectLabel`、`SelectSaveField`、`SelectSaveFormat`。 |
|
|
57
|
-
| `MultipleSelect` | `varchar(500)` 或 `mediumtext` | 同 `Select`,多选值通常保存 JSON 或分隔文本。 |
|
|
58
|
-
| `Radio` | `varchar(50)` | 必须配置选项数据。 |
|
|
59
|
-
| `Checkbox` | `varchar(500)` 或 `mediumtext` | 必须配置选项数据,多值保存 JSON。 |
|
|
60
|
-
| `Autocomplete` | `varchar(200)` | 可配 SQL/API 数据源,允许输入联想。 |
|
|
61
|
-
| `TagInput` | `mediumtext` | `TagInput.Placeholder`、`TagInput.Options`、`TagInput.MaxCount`。 |
|
|
62
|
-
| `Transfer` | `mediumtext` | `Transfer.LeftTitle`、`Transfer.RightTitle`、`Transfer.Filterable`、`Transfer.Options`。 |
|
|
63
|
-
|
|
64
|
-
## 布局和说明类
|
|
65
|
-
|
|
66
|
-
| 组件 | 说明 | 配置项 |
|
|
67
|
-
| --- | --- | --- |
|
|
68
|
-
| `Divider` | 分割线,不保存业务值 | `DividerPosition`、`Divider.Icon`。 |
|
|
69
|
-
| `CollapseGroup` | 折叠分组 | `CollapseGroup.DefaultCollapsed`、`ScopeMode`、`FieldCount`、`UntilNextGroup`、`Description`、`Icon`、`Theme`、`ShowFieldCount`。 |
|
|
70
|
-
| `Tabs` | 字段级页签分组 | `FieldTabs.DefaultActiveKey`、`FieldTabs.Tabs[{Key,Label,Icon,Description}]`。 |
|
|
71
|
-
| `Alert` | 表单提示 | `Alert.Title`、`Content`、`Type`、`Effect`、`ShowIcon`。 |
|
|
72
|
-
| `StaticText` | 静态文本展示 | `StaticText.Content`、样式类配置。 |
|
|
73
|
-
| `Html` | HTML 内容 | 保存 HTML 字符串;注意 XSS 风险。 |
|
|
74
|
-
| `Button` | 表单按钮 | `Button.Type`、`Loading`、`Icon`、`Size`、`PreviewCanClick`、`RefreshTableAfterClick`,点击逻辑写格式化 V8。 |
|
|
75
|
-
|
|
76
|
-
## 富文本、代码、上传
|
|
77
|
-
|
|
78
|
-
| 组件 | 推荐类型 | 配置项 |
|
|
79
|
-
| --- | --- | --- |
|
|
80
|
-
| `RichText` | `mediumtext` | 富文本内容,图片上传遵循平台上传配置。 |
|
|
81
|
-
| `CodeEditor` | `mediumtext` | `CodeEditor.Height`;`CodeEditor.DisplayMode=Inline/Dialog`,配置项很多或同页多个代码字段时优先 `Dialog`。 |
|
|
82
|
-
| `JsonTable` | `mediumtext` | JSON 表格展示/编辑,保存结构化 JSON;配置必须写在 `Config.JsonTable`。 |
|
|
83
|
-
| `ImgUpload` | `mediumtext` | `ImgUpload.Limit`、`Multiple`、`Tips`、`MaxCount`、`ShowFileList`、`Preview`、`MaxSize`。 |
|
|
84
|
-
| `FileUpload` | `mediumtext` | `FileUpload.Limit`、`Multiple`、`Tips`、`MaxCount`、`ShowFileList`、`MaxSize`。 |
|
|
85
|
-
| `ImgUpload` / `FileUpload` | - | `Upload.BeforeUploadV8`、`GetPrivateFileBeforeServerV8`、`GetPrivateFileAfterServerV8`。 |
|
|
86
|
-
|
|
87
|
-
### JsonTable 配置
|
|
88
|
-
|
|
89
|
-
`JsonTable` 的事实源是 `Microi.Client/src/views/form-engine/diy-field-component/diy-jsontable.vue`。AI 生成字段时不要只写 `Component=JsonTable`,必须同步生成 `Config.JsonTable.Columns`,否则前端只能显示空表。
|
|
90
|
-
|
|
91
|
-
`Config.JsonTable` 根节点:
|
|
92
|
-
|
|
93
|
-
| 配置 | 说明 |
|
|
94
|
-
| --- | --- |
|
|
95
|
-
| `Columns` | JSON 表格列数组,必填。每一项描述一列的显示、编辑控件和数据源。 |
|
|
96
|
-
| `DataSource` | 批量导入/候选数据源类型:`KeyValue`、`Sql`、`DataSource`、`ApiEngine` 等。 |
|
|
97
|
-
| `Sql` | `DataSource=Sql` 时的 SQL;远程搜索时必须带 `$Keyword$` 条件和 `limit`。 |
|
|
98
|
-
| `DataSourceId` | `DataSource=DataSource` 时的数据源引擎 Key/Id。 |
|
|
99
|
-
| `ApiEngineKey` / `DataSourceApiEngineKey` | `DataSource=ApiEngine` 时的接口引擎 Key;前端保存到 `ApiEngineKey`,列级配置可用 `DataSourceApiEngineKey`。 |
|
|
100
|
-
| `SelectLabel` | 候选数据展示字段。 |
|
|
101
|
-
| `DataSourceSqlRemote` | 是否远程搜索。大数据量必须设为 `true`。 |
|
|
102
|
-
| `KeyValueList` | 静态键值数据,格式为 `[{ "Key": "A", "Value": "选项A" }]`。 |
|
|
103
|
-
|
|
104
|
-
`Config.JsonTable.Columns[]` 列对象:
|
|
105
|
-
|
|
106
|
-
| 配置 | 说明 |
|
|
107
|
-
| --- | --- |
|
|
108
|
-
| `Id` | 列唯一 Id,建议使用 Guid/Ulid。 |
|
|
109
|
-
| `Sort` | 列排序。 |
|
|
110
|
-
| `Label` | 列标题,必填。 |
|
|
111
|
-
| `Key` | JSON 行对象中的属性名,必填,使用英文或既有字段名。 |
|
|
112
|
-
| `Component` | 列编辑控件:`Text`、`Number`、`Textarea`、`Password`、`Select`、`MultipleSelect`、`Radio`、`Checkbox`、`Switch`、`Cascader`、`SelectTree`、`DateTime`、`Rate`、`ColorPicker`、`Progress`、`AutoNumber`、`Autocomplete`、`Address`、`Department`、`Map`、`ImgUpload`、`FileUpload`、`RichText`、`CodeEditor`、`Html`、`Fontawesome`、`Qrcode`、`Divider`、`Button`。 |
|
|
113
|
-
| `Width` / `MinWidth` | 固定宽度 / 最小宽度,`MinWidth` 默认可用 `120`。 |
|
|
114
|
-
| `Required` | 是否必填。 |
|
|
115
|
-
| `Visible` | 是否显示,默认 `true`。 |
|
|
116
|
-
| `DefaultValue` | 新增行默认值。 |
|
|
117
|
-
| `Placeholder` | 占位提示。 |
|
|
118
|
-
| `Readonly` | 是否只读。 |
|
|
119
|
-
| `Config` | 列控件配置。选择类列使用 `SelectLabel`、`SelectSaveField`、`SelectSaveFormat`、`EnableSearch`、`DataSource`、`Sql`、`DataSourceId`、`DataSourceApiEngineKey`、`DataSourceSqlRemote`。 |
|
|
120
|
-
| `Data` | 列级普通静态选项。 |
|
|
121
|
-
| `KeyValueList` | 列级键值选项,格式同根节点。 |
|
|
122
|
-
|
|
123
|
-
示例:
|
|
124
|
-
|
|
125
|
-
```json
|
|
126
|
-
{
|
|
127
|
-
"JsonTable": {
|
|
128
|
-
"Columns": [
|
|
129
|
-
{
|
|
130
|
-
"Id": "col-material",
|
|
131
|
-
"Sort": 1,
|
|
132
|
-
"Label": "材料名称",
|
|
133
|
-
"Key": "MaterialName",
|
|
134
|
-
"Component": "Text",
|
|
135
|
-
"MinWidth": 160,
|
|
136
|
-
"Required": true,
|
|
137
|
-
"Visible": true,
|
|
138
|
-
"Placeholder": "请输入材料名称"
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
"Id": "col-status",
|
|
142
|
-
"Sort": 2,
|
|
143
|
-
"Label": "状态",
|
|
144
|
-
"Key": "Status",
|
|
145
|
-
"Component": "Select",
|
|
146
|
-
"MinWidth": 120,
|
|
147
|
-
"Visible": true,
|
|
148
|
-
"Config": {
|
|
149
|
-
"DataSource": "KeyValue",
|
|
150
|
-
"SelectLabel": "Value",
|
|
151
|
-
"SelectSaveField": "Key",
|
|
152
|
-
"SelectSaveFormat": "Text"
|
|
153
|
-
},
|
|
154
|
-
"KeyValueList": [
|
|
155
|
-
{ "Key": "draft", "Value": "草稿" },
|
|
156
|
-
{ "Key": "confirmed", "Value": "已确认" }
|
|
157
|
-
]
|
|
158
|
-
}
|
|
159
|
-
]
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
## 树、级联、组织
|
|
165
|
-
|
|
166
|
-
| 组件 | 推荐类型 | 配置项 |
|
|
167
|
-
| --- | --- | --- |
|
|
168
|
-
| `Cascader` | `varchar(500)` 或 `mediumtext` | `Cascader.Lazy`、`Filterable`、`Value`、`Label`、`Children`、`ParentField`、`ParentFields`、`Multiple`、`Disabled`、`Leaf`、`EmitPath`。 |
|
|
169
|
-
| `SelectTree` | `varchar(50)` | `SelectTree.Lazy`、`Filterable`、`Value`、`Label`、`Children`、`ParentField`、`ParentFields`、`Multiple`、`Disabled`、`Leaf`。 |
|
|
170
|
-
| `TreeCheckbox` | `mediumtext` | `TreeCheckbox.DataSourceType`、`DataSourceApi`、`ShowSearch`、`ShowIcon`、`DefaultExpandAll`、`NameColumnWidth`、`NameColumnLabel`、`PermissionColumnLabel`。 |
|
|
171
|
-
| `Department` | `varchar(50)` 或 `varchar(500)` | `Department.Multiple`、`Filterable`、`EmitPath`。 |
|
|
172
|
-
| `Address` | `varchar(500)` | 省市区地址选择,通常保存路径或 JSON。 |
|
|
173
|
-
|
|
174
|
-
## 弹表、关联表、子表
|
|
175
|
-
|
|
176
|
-
| 组件 | 推荐类型 | 配置项 |
|
|
177
|
-
| --- | --- | --- |
|
|
178
|
-
| `OpenTable` | `varchar(50)` | `OpenTable.BtnName`、`ShowDialog`、`MultipleSelect`、`BeforeOpenV8`、`SubmitV8`、`SearchAppend`。 |
|
|
179
|
-
| `JoinTable` | `varchar(50)` | `JoinTable.TableId`、`ModuleName`、`ModuleId`、`Where`。 |
|
|
180
|
-
| `JoinForm` | `varchar(50)` | `JoinForm.TableId`、`TableName`、`JoinFieldName`、`Id`、`FormMode`、`_SearchEqual`。主表字段保存一个目标记录 Id。 |
|
|
181
|
-
| `TableChild` | 控件字段通常不承担关系存储 | 根节点:`TableChildTableId`、`TableChildSysMenuId`、`TableChildSysMenuName`、`TableChildFkFieldName`、`TableChildRowClickV8`。真实关系列必须建在子表。 |
|
|
182
|
-
| `TableChild` | - | `TableChild.PrimaryTableFieldName`:主表关联字段,默认 `Id`;`DisablePagination`:子表是否禁用分页;`NoneDefaultHeight`:是否不使用默认高度;`Data`、`SearchAppend`、`LastTableId`、`LastSysMenuId`、`LastSysMenuName`。 |
|
|
183
|
-
| `TableChild` | - | `TableChild.ImportAutoFillFk`:导入子表时自动补外键;`FieldRelations[[Parent,Child,ImportMatch?]]`:全部关系用于新增回写和导入回填,第三位 `true` 的关系用于导入反查主表。 |
|
|
184
|
-
|
|
185
|
-
### `JoinForm` / `TableChild` 选择门禁
|
|
186
|
-
|
|
187
|
-
| 业务问题 | 正确组件 |
|
|
188
|
-
| --- | --- |
|
|
189
|
-
| 当前记录保存一个目标 Id,并内嵌该独立目标记录的完整表单 | `JoinForm` |
|
|
190
|
-
| 一条父记录拥有 0..N 条明细,需要列表、分页或多行增删改 | `TableChild` |
|
|
191
|
-
| 只需从列表选择一条/多条,不需要内嵌完整目标表单 | `OpenTable` |
|
|
192
|
-
|
|
193
|
-
- “明细、子表、清单、条目、行项目、多个记录”默认选择 `TableChild`;基数不清楚时先询问。
|
|
194
|
-
- `JoinForm` 渲染单条 `diy-form`,目标 `TableId/TableName` 必须与当前表不同;指回当前表时
|
|
195
|
-
组件不会初始化。`JoinFieldName` 是**当前主表中保存目标 Id 的字段名**。
|
|
196
|
-
- `TableChild` 渲染 `diy-table`。子表必须有物理外键,控件必须同时拿到真实的子表 Id、
|
|
197
|
-
子表菜单 Id 和外键字段名;不得猜 Id 或用 `JoinForm` 代替未完成的两阶段配置。
|
|
198
|
-
- 例:订单商品明细应为 `order_detail.OrderId + TableChild`;工单内嵌一个客户档案才是
|
|
199
|
-
`work_order.CustomerId + JoinForm`。
|
|
200
|
-
|
|
201
|
-
### JoinForm 示例
|
|
202
|
-
|
|
203
|
-
```json
|
|
204
|
-
{
|
|
205
|
-
"JoinForm": {
|
|
206
|
-
"TableId": "<目标 diy_table.Id>",
|
|
207
|
-
"TableName": "",
|
|
208
|
-
"JoinFieldName": "CustomerId",
|
|
209
|
-
"FormMode": "View",
|
|
210
|
-
"Id": "",
|
|
211
|
-
"_SearchEqual": {}
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
```
|
|
215
|
-
|
|
216
|
-
字段设计器选择 `TableId` 时会清空 `TableName`;动态配置也可以只给目标 `TableName`,
|
|
217
|
-
二者至少提供一个,不要把当前表作为目标表。
|
|
218
|
-
|
|
219
|
-
### TableChild 完整示例
|
|
220
|
-
|
|
221
|
-
```json
|
|
222
|
-
{
|
|
223
|
-
"TableChildTableId": "01KNRCSVFK2W4NCWYBTVH9HGM2",
|
|
224
|
-
"TableChildSysMenuId": "01KNRM72C6KBG4S8CY341333XJ",
|
|
225
|
-
"TableChildSysMenuName": "项目成品清单",
|
|
226
|
-
"TableChildFkFieldName": "Guid",
|
|
227
|
-
"TableChild": {
|
|
228
|
-
"PrimaryTableFieldName": "Id",
|
|
229
|
-
"Data": [],
|
|
230
|
-
"SearchAppend": {},
|
|
231
|
-
"ImportAutoFillFk": true,
|
|
232
|
-
"FieldRelations": [
|
|
233
|
-
["Code", "XiangmuBM", true],
|
|
234
|
-
["Name", "XiangmuMC"]
|
|
235
|
-
],
|
|
236
|
-
"LastTableId": "",
|
|
237
|
-
"LastSysMenuId": "",
|
|
238
|
-
"LastSysMenuName": "",
|
|
239
|
-
"DisablePagination": false,
|
|
240
|
-
"NoneDefaultHeight": false
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
`FieldRelations` 每项依次为主表字段、子表字段、可选的导入匹配标记。上例只用编号反查主表,名称仅回填。通过主表子表区域、左右树形页面或 `V8.OpenAnyTable` 带主表条件打开子表后导入时,即使 Excel 没有 `XiangmuBM` / `XiangmuMC`,后端也应根据固定主表行回填外键和展示列。旧三项配置仍由前后端兼容读取,并在字段下次保存时合并清理。
|
|
246
|
-
|
|
247
|
-
## 地图、二维码、图标、自定义
|
|
248
|
-
|
|
249
|
-
| 组件 | 推荐类型 | 配置项 |
|
|
250
|
-
| --- | --- | --- |
|
|
251
|
-
| `Map` | `varchar(200)` | 地图点位,使用 `MapCompany`。 |
|
|
252
|
-
| `MapArea` | `mediumtext` | 地图区域,多边形或区域 JSON。 |
|
|
253
|
-
| `Qrcode` | `varchar(500)` | 二维码内容或生成源字段。 |
|
|
254
|
-
| `FontAwesome` | `varchar(100)` | 图标类名。 |
|
|
255
|
-
| `DevComponent` | 视组件而定 | `DevComponentName`、`DevComponentPath`。 |
|
|
256
|
-
| `V8TmpEngine` | `mediumtext` | V8 模板引擎承载控件。 |
|
|
1
|
+
# Microi 表单组件配置项参考
|
|
2
|
+
|
|
3
|
+
本参考用于 AI 生成、审查或修复 `diy_field.Config`。事实源仍是 `Microi.Client/src/views/form-engine/diy-field-component/` 与 `diy-component-list.json`;组件源码新增配置时,必须同步更新本文件和官方文档。
|
|
4
|
+
|
|
5
|
+
## 字段级元数据
|
|
6
|
+
|
|
7
|
+
| 字段 | 说明 |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| `Label` / `Name` | 显示名 / 物理字段名。`Name` 使用 PascalCase 或既有表字段名,不写中文。 |
|
|
10
|
+
| `Type` | 物理列类型,只使用平台允许类型:`varchar(N)`、`mediumtext`、`longtext`、`int`、`bigint`、`decimal(18,N)`。日期时间存 `varchar(25)`。 |
|
|
11
|
+
| `Component` | 控件类型,例如 `Text`、`Select`、`TableChild`。 |
|
|
12
|
+
| `NotEmpty` / `Readonly` | 必填、只读。 |
|
|
13
|
+
| `Visible` / `AppVisible` | PC / App 是否显示,默认业务字段为 `1`。 |
|
|
14
|
+
| `TableWidth` / `FormWidth` | 列表宽度 / 表单栅格宽度。普通字段一般不设置 `FormWidth`;上传、富文本、代码、地图、子表等整行控件设 `24`。 |
|
|
15
|
+
| `Data` | 选项类控件静态数据,常用 KeyValue:`key|label,key2|label2`。 |
|
|
16
|
+
| `DefaultValue` / `Placeholder` / `Tab` | 默认值、占位提示、表单 Tab 分组。 |
|
|
17
|
+
| `V8Code` / `KeyupV8Code` / `V8TmpEngineTable` / `V8TmpEngineForm` | 字段前端事件或 V8 模板代码。代码必须格式化,不要写成单行。 |
|
|
18
|
+
|
|
19
|
+
## 通用 `Config` 根节点
|
|
20
|
+
|
|
21
|
+
| 配置 | 说明 |
|
|
22
|
+
| --- | --- |
|
|
23
|
+
| `EnableSearch` | 是否作为搜索条件。 |
|
|
24
|
+
| `ParamData` | 组件请求或 V8 使用的附加参数。 |
|
|
25
|
+
| `Sql` | SQL 数据源查询语句。动态值使用平台占位或后端参数化规则,不拼接用户输入。 |
|
|
26
|
+
| `DataSource` | 数据源类型:`Data`、`KeyValue`、`Sql`、`ApiEngine`、`DataSource` 等。 |
|
|
27
|
+
| `DataSourceSqlRemote` / `DataSourceSqlRemoteLoading` | SQL 是否远程搜索 / 加载态。 |
|
|
28
|
+
| `DataSourceId` / `DataSourceApiEngineKey` | 数据源引擎 Id / 接口引擎 Key。 |
|
|
29
|
+
| `SelectLabel` / `SelectSaveField` | 下拉、树、级联等显示字段 / 保存字段。 |
|
|
30
|
+
| `SelectSaveFormat` | 保存格式,常用 `Text` 或 `Json`。 |
|
|
31
|
+
| `V8Code` / `V8CodeBlur` | 值变更、失焦事件代码。 |
|
|
32
|
+
| `TextIcon` / `TextIconPosition` | 输入框图标与位置。 |
|
|
33
|
+
| `TextApend` / `TextApendPosition` | 输入框前后缀文本与位置。 |
|
|
34
|
+
| `TextShowPassword` / `TextAutocomplete` | 密码显示模式 / 浏览器联想。 |
|
|
35
|
+
| `DateTimeType` | 日期控件类型,如 `date`、`datetime`。 |
|
|
36
|
+
| `DevComponentName` / `DevComponentPath` | 自定义组件名称和路径。 |
|
|
37
|
+
| `MapCompany` | 地图服务商,默认 `Baidu`。 |
|
|
38
|
+
|
|
39
|
+
## 基础输入类
|
|
40
|
+
|
|
41
|
+
| 组件 | 推荐类型 | 配置项 |
|
|
42
|
+
| --- | --- | --- |
|
|
43
|
+
| `Text` | `varchar(200)` | 使用通用文本配置:`TextShowPassword`、`TextIcon`、`TextApend`、`V8CodeBlur`。 |
|
|
44
|
+
| `Guid` | `varchar(50)` | 通常只读,用于保存业务关联 GUID。 |
|
|
45
|
+
| `Textarea` | `mediumtext` | `Textarea.DefaultRows` 控制默认行数。 |
|
|
46
|
+
| `NumberText` | `int` 或 `decimal(18,N)` | `NumberTextStep`、`NumberTextPrecision`、`NumberTextMath`、`NumberTextBtn`、`NumberTextBtnPosition`。 |
|
|
47
|
+
| `DateTime` | `varchar(25)` | `DateTimeType` 控制日期、日期时间等模式。 |
|
|
48
|
+
| `Switch` | `int` | 存 `1/0`,不要用 `varchar` 或 `boolean`。 |
|
|
49
|
+
| `Rate` / `Progress` / `Slider` | `int` | 评分、进度、滑块值。 |
|
|
50
|
+
| `ColorPicker` | `varchar(50)` | 保存颜色字符串。 |
|
|
51
|
+
|
|
52
|
+
## 选项和数据源类
|
|
53
|
+
|
|
54
|
+
| 组件 | 推荐类型 | 配置项 |
|
|
55
|
+
| --- | --- | --- |
|
|
56
|
+
| `Select` | `varchar(50)` | 必须配置 `Data` 或 `Config.DataSource`;常用 `SelectLabel`、`SelectSaveField`、`SelectSaveFormat`。 |
|
|
57
|
+
| `MultipleSelect` | `varchar(500)` 或 `mediumtext` | 同 `Select`,多选值通常保存 JSON 或分隔文本。 |
|
|
58
|
+
| `Radio` | `varchar(50)` | 必须配置选项数据。 |
|
|
59
|
+
| `Checkbox` | `varchar(500)` 或 `mediumtext` | 必须配置选项数据,多值保存 JSON。 |
|
|
60
|
+
| `Autocomplete` | `varchar(200)` | 可配 SQL/API 数据源,允许输入联想。 |
|
|
61
|
+
| `TagInput` | `mediumtext` | `TagInput.Placeholder`、`TagInput.Options`、`TagInput.MaxCount`。 |
|
|
62
|
+
| `Transfer` | `mediumtext` | `Transfer.LeftTitle`、`Transfer.RightTitle`、`Transfer.Filterable`、`Transfer.Options`。 |
|
|
63
|
+
|
|
64
|
+
## 布局和说明类
|
|
65
|
+
|
|
66
|
+
| 组件 | 说明 | 配置项 |
|
|
67
|
+
| --- | --- | --- |
|
|
68
|
+
| `Divider` | 分割线,不保存业务值 | `DividerPosition`、`Divider.Icon`。 |
|
|
69
|
+
| `CollapseGroup` | 折叠分组 | `CollapseGroup.DefaultCollapsed`、`ScopeMode`、`FieldCount`、`UntilNextGroup`、`Description`、`Icon`、`Theme`、`ShowFieldCount`。 |
|
|
70
|
+
| `Tabs` | 字段级页签分组 | `FieldTabs.DefaultActiveKey`、`FieldTabs.Tabs[{Key,Label,Icon,Description}]`。 |
|
|
71
|
+
| `Alert` | 表单提示 | `Alert.Title`、`Content`、`Type`、`Effect`、`ShowIcon`。 |
|
|
72
|
+
| `StaticText` | 静态文本展示 | `StaticText.Content`、样式类配置。 |
|
|
73
|
+
| `Html` | HTML 内容 | 保存 HTML 字符串;注意 XSS 风险。 |
|
|
74
|
+
| `Button` | 表单按钮 | `Button.Type`、`Loading`、`Icon`、`Size`、`PreviewCanClick`、`RefreshTableAfterClick`,点击逻辑写格式化 V8。 |
|
|
75
|
+
|
|
76
|
+
## 富文本、代码、上传
|
|
77
|
+
|
|
78
|
+
| 组件 | 推荐类型 | 配置项 |
|
|
79
|
+
| --- | --- | --- |
|
|
80
|
+
| `RichText` | `mediumtext` | 富文本内容,图片上传遵循平台上传配置。 |
|
|
81
|
+
| `CodeEditor` | `mediumtext` | `CodeEditor.Height`;`CodeEditor.DisplayMode=Inline/Dialog`,配置项很多或同页多个代码字段时优先 `Dialog`。 |
|
|
82
|
+
| `JsonTable` | `mediumtext` | JSON 表格展示/编辑,保存结构化 JSON;配置必须写在 `Config.JsonTable`。 |
|
|
83
|
+
| `ImgUpload` | `mediumtext` | `ImgUpload.Limit`、`Multiple`、`Tips`、`MaxCount`、`ShowFileList`、`Preview`、`MaxSize`。 |
|
|
84
|
+
| `FileUpload` | `mediumtext` | `FileUpload.Limit`、`Multiple`、`Tips`、`MaxCount`、`ShowFileList`、`MaxSize`。 |
|
|
85
|
+
| `ImgUpload` / `FileUpload` | - | `Upload.BeforeUploadV8`、`GetPrivateFileBeforeServerV8`、`GetPrivateFileAfterServerV8`。 |
|
|
86
|
+
|
|
87
|
+
### JsonTable 配置
|
|
88
|
+
|
|
89
|
+
`JsonTable` 的事实源是 `Microi.Client/src/views/form-engine/diy-field-component/diy-jsontable.vue`。AI 生成字段时不要只写 `Component=JsonTable`,必须同步生成 `Config.JsonTable.Columns`,否则前端只能显示空表。
|
|
90
|
+
|
|
91
|
+
`Config.JsonTable` 根节点:
|
|
92
|
+
|
|
93
|
+
| 配置 | 说明 |
|
|
94
|
+
| --- | --- |
|
|
95
|
+
| `Columns` | JSON 表格列数组,必填。每一项描述一列的显示、编辑控件和数据源。 |
|
|
96
|
+
| `DataSource` | 批量导入/候选数据源类型:`KeyValue`、`Sql`、`DataSource`、`ApiEngine` 等。 |
|
|
97
|
+
| `Sql` | `DataSource=Sql` 时的 SQL;远程搜索时必须带 `$Keyword$` 条件和 `limit`。 |
|
|
98
|
+
| `DataSourceId` | `DataSource=DataSource` 时的数据源引擎 Key/Id。 |
|
|
99
|
+
| `ApiEngineKey` / `DataSourceApiEngineKey` | `DataSource=ApiEngine` 时的接口引擎 Key;前端保存到 `ApiEngineKey`,列级配置可用 `DataSourceApiEngineKey`。 |
|
|
100
|
+
| `SelectLabel` | 候选数据展示字段。 |
|
|
101
|
+
| `DataSourceSqlRemote` | 是否远程搜索。大数据量必须设为 `true`。 |
|
|
102
|
+
| `KeyValueList` | 静态键值数据,格式为 `[{ "Key": "A", "Value": "选项A" }]`。 |
|
|
103
|
+
|
|
104
|
+
`Config.JsonTable.Columns[]` 列对象:
|
|
105
|
+
|
|
106
|
+
| 配置 | 说明 |
|
|
107
|
+
| --- | --- |
|
|
108
|
+
| `Id` | 列唯一 Id,建议使用 Guid/Ulid。 |
|
|
109
|
+
| `Sort` | 列排序。 |
|
|
110
|
+
| `Label` | 列标题,必填。 |
|
|
111
|
+
| `Key` | JSON 行对象中的属性名,必填,使用英文或既有字段名。 |
|
|
112
|
+
| `Component` | 列编辑控件:`Text`、`Number`、`Textarea`、`Password`、`Select`、`MultipleSelect`、`Radio`、`Checkbox`、`Switch`、`Cascader`、`SelectTree`、`DateTime`、`Rate`、`ColorPicker`、`Progress`、`AutoNumber`、`Autocomplete`、`Address`、`Department`、`Map`、`ImgUpload`、`FileUpload`、`RichText`、`CodeEditor`、`Html`、`Fontawesome`、`Qrcode`、`Divider`、`Button`。 |
|
|
113
|
+
| `Width` / `MinWidth` | 固定宽度 / 最小宽度,`MinWidth` 默认可用 `120`。 |
|
|
114
|
+
| `Required` | 是否必填。 |
|
|
115
|
+
| `Visible` | 是否显示,默认 `true`。 |
|
|
116
|
+
| `DefaultValue` | 新增行默认值。 |
|
|
117
|
+
| `Placeholder` | 占位提示。 |
|
|
118
|
+
| `Readonly` | 是否只读。 |
|
|
119
|
+
| `Config` | 列控件配置。选择类列使用 `SelectLabel`、`SelectSaveField`、`SelectSaveFormat`、`EnableSearch`、`DataSource`、`Sql`、`DataSourceId`、`DataSourceApiEngineKey`、`DataSourceSqlRemote`。 |
|
|
120
|
+
| `Data` | 列级普通静态选项。 |
|
|
121
|
+
| `KeyValueList` | 列级键值选项,格式同根节点。 |
|
|
122
|
+
|
|
123
|
+
示例:
|
|
124
|
+
|
|
125
|
+
```json
|
|
126
|
+
{
|
|
127
|
+
"JsonTable": {
|
|
128
|
+
"Columns": [
|
|
129
|
+
{
|
|
130
|
+
"Id": "col-material",
|
|
131
|
+
"Sort": 1,
|
|
132
|
+
"Label": "材料名称",
|
|
133
|
+
"Key": "MaterialName",
|
|
134
|
+
"Component": "Text",
|
|
135
|
+
"MinWidth": 160,
|
|
136
|
+
"Required": true,
|
|
137
|
+
"Visible": true,
|
|
138
|
+
"Placeholder": "请输入材料名称"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"Id": "col-status",
|
|
142
|
+
"Sort": 2,
|
|
143
|
+
"Label": "状态",
|
|
144
|
+
"Key": "Status",
|
|
145
|
+
"Component": "Select",
|
|
146
|
+
"MinWidth": 120,
|
|
147
|
+
"Visible": true,
|
|
148
|
+
"Config": {
|
|
149
|
+
"DataSource": "KeyValue",
|
|
150
|
+
"SelectLabel": "Value",
|
|
151
|
+
"SelectSaveField": "Key",
|
|
152
|
+
"SelectSaveFormat": "Text"
|
|
153
|
+
},
|
|
154
|
+
"KeyValueList": [
|
|
155
|
+
{ "Key": "draft", "Value": "草稿" },
|
|
156
|
+
{ "Key": "confirmed", "Value": "已确认" }
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
]
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## 树、级联、组织
|
|
165
|
+
|
|
166
|
+
| 组件 | 推荐类型 | 配置项 |
|
|
167
|
+
| --- | --- | --- |
|
|
168
|
+
| `Cascader` | `varchar(500)` 或 `mediumtext` | `Cascader.Lazy`、`Filterable`、`Value`、`Label`、`Children`、`ParentField`、`ParentFields`、`Multiple`、`Disabled`、`Leaf`、`EmitPath`。 |
|
|
169
|
+
| `SelectTree` | `varchar(50)` | `SelectTree.Lazy`、`Filterable`、`Value`、`Label`、`Children`、`ParentField`、`ParentFields`、`Multiple`、`Disabled`、`Leaf`。 |
|
|
170
|
+
| `TreeCheckbox` | `mediumtext` | `TreeCheckbox.DataSourceType`、`DataSourceApi`、`ShowSearch`、`ShowIcon`、`DefaultExpandAll`、`NameColumnWidth`、`NameColumnLabel`、`PermissionColumnLabel`。 |
|
|
171
|
+
| `Department` | `varchar(50)` 或 `varchar(500)` | `Department.Multiple`、`Filterable`、`EmitPath`。 |
|
|
172
|
+
| `Address` | `varchar(500)` | 省市区地址选择,通常保存路径或 JSON。 |
|
|
173
|
+
|
|
174
|
+
## 弹表、关联表、子表
|
|
175
|
+
|
|
176
|
+
| 组件 | 推荐类型 | 配置项 |
|
|
177
|
+
| --- | --- | --- |
|
|
178
|
+
| `OpenTable` | `varchar(50)` | `OpenTable.BtnName`、`ShowDialog`、`MultipleSelect`、`BeforeOpenV8`、`SubmitV8`、`SearchAppend`。 |
|
|
179
|
+
| `JoinTable` | `varchar(50)` | `JoinTable.TableId`、`ModuleName`、`ModuleId`、`Where`。 |
|
|
180
|
+
| `JoinForm` | `varchar(50)` | `JoinForm.TableId`、`TableName`、`JoinFieldName`、`Id`、`FormMode`、`_SearchEqual`。主表字段保存一个目标记录 Id。 |
|
|
181
|
+
| `TableChild` | 控件字段通常不承担关系存储 | 根节点:`TableChildTableId`、`TableChildSysMenuId`、`TableChildSysMenuName`、`TableChildFkFieldName`、`TableChildRowClickV8`。真实关系列必须建在子表。 |
|
|
182
|
+
| `TableChild` | - | `TableChild.PrimaryTableFieldName`:主表关联字段,默认 `Id`;`DisablePagination`:子表是否禁用分页;`NoneDefaultHeight`:是否不使用默认高度;`Data`、`SearchAppend`、`LastTableId`、`LastSysMenuId`、`LastSysMenuName`。 |
|
|
183
|
+
| `TableChild` | - | `TableChild.ImportAutoFillFk`:导入子表时自动补外键;`FieldRelations[[Parent,Child,ImportMatch?]]`:全部关系用于新增回写和导入回填,第三位 `true` 的关系用于导入反查主表。 |
|
|
184
|
+
|
|
185
|
+
### `JoinForm` / `TableChild` 选择门禁
|
|
186
|
+
|
|
187
|
+
| 业务问题 | 正确组件 |
|
|
188
|
+
| --- | --- |
|
|
189
|
+
| 当前记录保存一个目标 Id,并内嵌该独立目标记录的完整表单 | `JoinForm` |
|
|
190
|
+
| 一条父记录拥有 0..N 条明细,需要列表、分页或多行增删改 | `TableChild` |
|
|
191
|
+
| 只需从列表选择一条/多条,不需要内嵌完整目标表单 | `OpenTable` |
|
|
192
|
+
|
|
193
|
+
- “明细、子表、清单、条目、行项目、多个记录”默认选择 `TableChild`;基数不清楚时先询问。
|
|
194
|
+
- `JoinForm` 渲染单条 `diy-form`,目标 `TableId/TableName` 必须与当前表不同;指回当前表时
|
|
195
|
+
组件不会初始化。`JoinFieldName` 是**当前主表中保存目标 Id 的字段名**。
|
|
196
|
+
- `TableChild` 渲染 `diy-table`。子表必须有物理外键,控件必须同时拿到真实的子表 Id、
|
|
197
|
+
子表菜单 Id 和外键字段名;不得猜 Id 或用 `JoinForm` 代替未完成的两阶段配置。
|
|
198
|
+
- 例:订单商品明细应为 `order_detail.OrderId + TableChild`;工单内嵌一个客户档案才是
|
|
199
|
+
`work_order.CustomerId + JoinForm`。
|
|
200
|
+
|
|
201
|
+
### JoinForm 示例
|
|
202
|
+
|
|
203
|
+
```json
|
|
204
|
+
{
|
|
205
|
+
"JoinForm": {
|
|
206
|
+
"TableId": "<目标 diy_table.Id>",
|
|
207
|
+
"TableName": "",
|
|
208
|
+
"JoinFieldName": "CustomerId",
|
|
209
|
+
"FormMode": "View",
|
|
210
|
+
"Id": "",
|
|
211
|
+
"_SearchEqual": {}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
字段设计器选择 `TableId` 时会清空 `TableName`;动态配置也可以只给目标 `TableName`,
|
|
217
|
+
二者至少提供一个,不要把当前表作为目标表。
|
|
218
|
+
|
|
219
|
+
### TableChild 完整示例
|
|
220
|
+
|
|
221
|
+
```json
|
|
222
|
+
{
|
|
223
|
+
"TableChildTableId": "01KNRCSVFK2W4NCWYBTVH9HGM2",
|
|
224
|
+
"TableChildSysMenuId": "01KNRM72C6KBG4S8CY341333XJ",
|
|
225
|
+
"TableChildSysMenuName": "项目成品清单",
|
|
226
|
+
"TableChildFkFieldName": "Guid",
|
|
227
|
+
"TableChild": {
|
|
228
|
+
"PrimaryTableFieldName": "Id",
|
|
229
|
+
"Data": [],
|
|
230
|
+
"SearchAppend": {},
|
|
231
|
+
"ImportAutoFillFk": true,
|
|
232
|
+
"FieldRelations": [
|
|
233
|
+
["Code", "XiangmuBM", true],
|
|
234
|
+
["Name", "XiangmuMC"]
|
|
235
|
+
],
|
|
236
|
+
"LastTableId": "",
|
|
237
|
+
"LastSysMenuId": "",
|
|
238
|
+
"LastSysMenuName": "",
|
|
239
|
+
"DisablePagination": false,
|
|
240
|
+
"NoneDefaultHeight": false
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
`FieldRelations` 每项依次为主表字段、子表字段、可选的导入匹配标记。上例只用编号反查主表,名称仅回填。通过主表子表区域、左右树形页面或 `V8.OpenAnyTable` 带主表条件打开子表后导入时,即使 Excel 没有 `XiangmuBM` / `XiangmuMC`,后端也应根据固定主表行回填外键和展示列。旧三项配置仍由前后端兼容读取,并在字段下次保存时合并清理。
|
|
246
|
+
|
|
247
|
+
## 地图、二维码、图标、自定义
|
|
248
|
+
|
|
249
|
+
| 组件 | 推荐类型 | 配置项 |
|
|
250
|
+
| --- | --- | --- |
|
|
251
|
+
| `Map` | `varchar(200)` | 地图点位,使用 `MapCompany`。 |
|
|
252
|
+
| `MapArea` | `mediumtext` | 地图区域,多边形或区域 JSON。 |
|
|
253
|
+
| `Qrcode` | `varchar(500)` | 二维码内容或生成源字段。 |
|
|
254
|
+
| `FontAwesome` | `varchar(100)` | 图标类名。 |
|
|
255
|
+
| `DevComponent` | 视组件而定 | `DevComponentName`、`DevComponentPath`。 |
|
|
256
|
+
| `V8TmpEngine` | `mediumtext` | V8 模板引擎承载控件。 |
|