u
This commit is contained in:
1 parent
ae3ca3cfa1
commit
7bd5f1dde9
45 files changed
+3414
-229
No files matched your search
@@ -11,7 +11,7 @@
|
||||
| 项 | 状态 |
|
||||
|---|---|
|
||||
| 元数据驱动引擎(通用查询 / 保存 / 权限) | 未设计 |
|
||||
| 后端设计与 Java 分包 | 未开始 |
|
||||
| 后端设计与 Java 分包 | 已开始(见 `server/README.md`) |
|
||||
| `stk-table-vue`(虚拟滚动表格) | 待定 |
|
||||
| LogicFlow(审批流设计器) | 待定 |
|
||||
| 登录 / 权限 / 用户模块 | 未开始(骨架已留位) |
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
- 关联、聚合或其他配置表达起来不合适的查询,可在模块配置中使用 `b_query_sql`;它是模块配置数据,不要求在后端代码中为每家公司登记 SQL 编码。
|
||||
- 对于按机构隔离的数据库,机构数据源路由继续使用现有 `OrgContext` / `OrgDataSourceManager`。各机构可在自己的配置库维护不同模块 SQL,不新增租户配置层。
|
||||
- 运行查询 SQL 必须经过现有只读校验路径;只允许查询语句,不允许用查询 SQL 执行新增、修改、删除或 DDL。写入走现有保存/删除接口或明确的业务服务。
|
||||
- `b_order_sql` 是模块默认排序;排序标识符按现有 `DbUtils` 校验规则处理。查询参数和值不得通过未校验的字符串拼接进入 SQL。
|
||||
- `b_order_sql` 是模块默认排序;排序标识符按现有 `SqlText` 校验规则处理。查询参数和值不得通过未校验的字符串拼接进入 SQL。
|
||||
|
||||
## 4. 沿用的通用数据 API
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
| `POST /data/describe` | 探测表或视图列结构 |
|
||||
| `POST /data/nextid`、`/data/nextcode` | 取雪花 ID 或模块业务编码 |
|
||||
|
||||
`loaddata` / `page` 使用表或视图名、结构化筛选和排序参数;`loaddatabysql` 用于复杂只读查询。已有 `DbUtils` 负责标识符验证、SQL 只读检查和 SQL 执行。通用保存服务依据真实表结构生成参数化写入,不通过 `b_query_sql` 写业务数据。
|
||||
`loaddata` / `page` 使用表或视图名、结构化筛选和排序参数;`loaddatabysql` 用于复杂只读查询。已有 `SqlText` 负责标识符验证与 SQL 只读检查,`MetadataReader` / `RowReader` / `RowWriter` 分别负责表结构探测、只读查询与写入执行。通用保存服务依据真实表结构生成参数化写入,不通过 `b_query_sql` 写业务数据。
|
||||
|
||||
新接入系统应沿用这些请求/响应格式和既有身份、机构、权限上下文;模块管理页面负责读取模块配置并组织请求,不需要另造一套模块专属 CRUD API。
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
|
||||
- 客户端不能以任意表名或列名绕过后端标识符验证。
|
||||
- 普通查询的筛选值以参数传递;字段、排序方向等 SQL 标识由校验后的配置控制。
|
||||
- `b_query_sql` 和 `/data/loaddatabysql` 仅用于只读查询,并使用现有 `DbUtils.validateReadOnlySql()` 校验。
|
||||
- `b_query_sql` 和 `/data/loaddatabysql` 仅用于只读查询,并使用现有 `SqlText.validateReadOnlySql()` 校验。
|
||||
- SQL 配置及执行需经过现有机构、用户和数据范围权限上下文;不能因为使用 SQL 扩展绕过权限校验。
|
||||
- 写操作使用 `/data/saveobjt`、`/data/delete` 或已有业务服务,并纳入现有事务和审计规则。
|
||||
- 版本恢复同样执行配置权限校验、引用校验和事务处理。
|
||||
|
||||
Reference in new issue
Block a user