20260802220544
This commit is contained in:
1 parent
c00329b5a4
commit
4fc9040a8a
60 files changed
+6273
-908
No files matched your search
@@ -0,0 +1,148 @@
|
||||
# FMS API 详细参数参考
|
||||
|
||||
## DataController 端点参数
|
||||
|
||||
### POST /data/loaddata
|
||||
|
||||
```
|
||||
Body: {
|
||||
"view_name": "string (required) — 表名或视图名",
|
||||
"search_condition": "string (optional) — WHERE 条件表达式,如 b_id = 1 AND b_name LIKE N'%关键词%'",
|
||||
"order_by": "string (optional) — 排序,如 b_id ASC 或 b_xh ASC, b_id DESC",
|
||||
"search_columns": ["string"] (optional) — 查询列,默认 *"
|
||||
}
|
||||
Response: { code: 0, message: "操作成功", data: [{...row}] }
|
||||
```
|
||||
|
||||
### POST /data/page
|
||||
|
||||
```
|
||||
Body: {
|
||||
"view_name": "string (required)",
|
||||
"order_by": "string (required) — 支持逗号分隔多字段",
|
||||
"page_no": int (optional, default 1),
|
||||
"page_size": int (optional, default 20),
|
||||
"search_condition": "string (optional)",
|
||||
"search_columns": ["string"] (optional)
|
||||
}
|
||||
Response: {
|
||||
code: 0,
|
||||
data: {
|
||||
rows: [{...row}],
|
||||
row_count: int,
|
||||
total: int,
|
||||
page_no: int,
|
||||
page_size: int
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### POST /data/saveobjt
|
||||
|
||||
```
|
||||
Body: [{
|
||||
"table": "string (required) — 目标表名",
|
||||
"key_field": "string (required) — 主键字段名,通常为 b_id",
|
||||
"inserts": [{...row}] (optional) — 新增行,key_field 值 < 0 时自动分配雪花ID",
|
||||
"updates": [{...row}] (optional) — 修改行,必须包含 key_field 值",
|
||||
"deletes": [{...row}] (optional) — 删除行,必须包含 key_field 值",
|
||||
}]
|
||||
Response: { code: 0, message: "操作成功", data: null }
|
||||
```
|
||||
|
||||
执行顺序:deletes → updates → inserts。整体在一个事务中。
|
||||
|
||||
### POST /data/loaddatabysql
|
||||
|
||||
```
|
||||
Body: { "sql": "string (required) — 仅允许 SELECT 或 WITH 开头" }
|
||||
Response: { code: 0, data: [{...row}] }
|
||||
```
|
||||
|
||||
安全检查:
|
||||
- 必须以 SELECT 或 WITH 开头
|
||||
- 禁止 INSERT/UPDATE/DELETE/DROP/ALTER/CREATE/EXEC/GRANT 等 DML/DDL
|
||||
- 禁止 SQL 注释(`--`、`/* */`)
|
||||
- 禁止分号
|
||||
|
||||
### GET /data/nextid
|
||||
|
||||
```
|
||||
Query: ?count=int (optional, default 1)
|
||||
Response: {
|
||||
code: 0,
|
||||
data: "1234567890123456" (count=1) | ["id1", "id2"] (count>1)
|
||||
}
|
||||
```
|
||||
|
||||
### GET /data/nextcode
|
||||
|
||||
```
|
||||
Query: ?moduleId=long&count=int (optional, default 1)
|
||||
Response: {
|
||||
code: 0,
|
||||
data: "PREFIX2025080200001" (count=1) | ["code1", "code2"] (count>1)
|
||||
}
|
||||
```
|
||||
|
||||
### POST /data/describe
|
||||
|
||||
```
|
||||
Body: { "table": "string" }
|
||||
Response: { code: 0, data: [{ name: "b_id", type: "bigint", nullable: false, size: 19 }] }
|
||||
```
|
||||
|
||||
## AuthController
|
||||
|
||||
### POST /auth/login
|
||||
|
||||
```
|
||||
Body: {
|
||||
"orgid": "string (required) — 机构码",
|
||||
"userid": "string (required) — 账号",
|
||||
"password": "string (optional) — 密码"
|
||||
}
|
||||
Response (成功): {
|
||||
code: 0,
|
||||
data: {
|
||||
token: "eyJ...",
|
||||
orgid: "ORG001",
|
||||
user: { id: 1001, account: "admin", name: "管理员" }
|
||||
}
|
||||
}
|
||||
Response (失败): { code: 401, message: "机构码、账号或密码错误" }
|
||||
```
|
||||
|
||||
## FileController
|
||||
|
||||
### GET /file/config
|
||||
|
||||
```
|
||||
Response: { code: 0, data: { storageType: "local" | "aliyun-oss" } }
|
||||
```
|
||||
|
||||
### POST /file/upload (local 模式)
|
||||
|
||||
```
|
||||
Content-Type: multipart/form-data
|
||||
Fields: { files: File[], father: string, moduleId: string, cateId?: string }
|
||||
Response: { code: 0, data: [{...fileRecord}] }
|
||||
```
|
||||
|
||||
### POST /file/upload-credential (OSS 模式)
|
||||
|
||||
```
|
||||
Response: { code: 0, data: { accessId, accessKey, host, policy, signature, expire } }
|
||||
```
|
||||
|
||||
### POST /file/save-record (OSS 回调)
|
||||
|
||||
```
|
||||
Body: { subid: string, father: string, mx_moduleid: string, mx_cate_id?: string }
|
||||
```
|
||||
|
||||
### POST /file/delete
|
||||
|
||||
```
|
||||
Body: { subid: string }
|
||||
```
|
||||
@@ -0,0 +1,136 @@
|
||||
# FMS 数据库 Schema 参考
|
||||
|
||||
## 模块管理核心六表
|
||||
|
||||
### s_module(模块定义)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 不可变雪花 ID |
|
||||
| b_code | VARCHAR(50) UNIQUE | 可变小写编码,如 `m_biz` |
|
||||
| b_parent_id | BIGINT | 父模块 ID(NULL=根) |
|
||||
| b_name | NVARCHAR(200) | 模块名称 |
|
||||
| b_module_type | VARCHAR(20) | `directory` / `page` / `data` |
|
||||
| b_canuse | TINYINT | 1=启用 |
|
||||
| b_canmenu | TINYINT | 1=显示在菜单 |
|
||||
| b_xh | INT | 排序号 |
|
||||
| b_route | VARCHAR(500) | 页面路由 |
|
||||
| b_icon | VARCHAR(200) | 图标 |
|
||||
| b_memo | NVARCHAR(500) | 备注 |
|
||||
|
||||
### s_module_field(字段定义)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_module_id | BIGINT FK→s_module | 所属模块 |
|
||||
| b_code | VARCHAR(50) | 字段编码 |
|
||||
| b_name | NVARCHAR(200) | 字段名称 |
|
||||
| b_data_type | VARCHAR(50) | 数据类型:text/number/money/date/datetime/checkbox/select |
|
||||
| b_field_type | VARCHAR(50) | 字段类型:normal/key/auto/memo |
|
||||
| b_db_field | VARCHAR(200) | 对应数据库字段名 |
|
||||
| b_db_table | VARCHAR(200) | 对应数据库表名(多表关联时用) |
|
||||
| b_xh | INT | 排序号 |
|
||||
| b_canuse | TINYINT | 1=启用 |
|
||||
| b_memo | NVARCHAR(500) | 备注 |
|
||||
|
||||
### s_module_power(操作权限定义)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_module_id | BIGINT FK→s_module | 所属模块 |
|
||||
| b_code | VARCHAR(50) | 权限编码:create/update/delete/... |
|
||||
| b_name | NVARCHAR(200) | 权限名称 |
|
||||
| b_canuse | TINYINT | 1=启用 |
|
||||
| b_xh | INT | 排序号 |
|
||||
|
||||
### b_user_module(用户模块授权)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_user_id | BIGINT FK→b_user | 用户 |
|
||||
| b_module_id | BIGINT FK→s_module | 授予的模块 |
|
||||
|
||||
### b_user_power(用户操作权限)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_user_id | BIGINT FK→b_user | 用户 |
|
||||
| b_power_id | BIGINT FK→s_module_power | 授予的操作权限 |
|
||||
|
||||
### b_i18n(多语言翻译)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_locale | VARCHAR(10) | 语言代码:zh-CN/en-US/... |
|
||||
| b_key | VARCHAR(200) | 翻译键 |
|
||||
| b_value | NVARCHAR(MAX) | 翻译文本 |
|
||||
| b_module_id | BIGINT FK→s_module | 关联模块(可选) |
|
||||
| b_group | VARCHAR(50) | 分组类型 |
|
||||
|
||||
## 扩展表(模块配置)
|
||||
|
||||
### s_module_field_list(列表视图配置)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_module_id | BIGINT FK→s_module | 所属模块 |
|
||||
| b_field_id | BIGINT FK→s_module_field | 关联字段 |
|
||||
| b_visible | TINYINT | 1=显示在列表 |
|
||||
| b_width | INT | 列宽 |
|
||||
| b_xh | INT | 列顺序 |
|
||||
| b_editor_type | VARCHAR(50) | 编辑控件类型 |
|
||||
|
||||
### s_module_field_edit(编辑视图配置)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_module_id | BIGINT FK→s_module | 所属模块 |
|
||||
| b_field_id | BIGINT FK→s_module_field | 关联字段 |
|
||||
| b_visible | TINYINT | 1=编辑时可见 |
|
||||
| b_group | VARCHAR(50) | 分组 |
|
||||
| b_xh | INT | 字段排列顺序 |
|
||||
| b_width | INT | 编辑控件宽度 |
|
||||
|
||||
### s_module_field_query(查询条件配置)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_module_id | BIGINT FK→s_module | 所属模块 |
|
||||
| b_field_id | BIGINT FK→s_module_field | 关联字段 |
|
||||
| b_visible | TINYINT | 1=显示为查询条件 |
|
||||
| b_operator | VARCHAR(20) | 运算符:=/like/in/between |
|
||||
| b_xh | INT | 排列顺序 |
|
||||
| b_option_config | NVARCHAR(500) | 选项配置(select 用) |
|
||||
|
||||
### s_module_auto_code(自动编号规则)
|
||||
|
||||
| 列 | 类型 | 说明 |
|
||||
|----|------|------|
|
||||
| b_id | BIGINT PK | 雪花 ID |
|
||||
| b_module_id | BIGINT FK→s_module | 所属模块 |
|
||||
| b_prefix | VARCHAR(50) | 前缀 |
|
||||
| b_separator | VARCHAR(10) | 分隔符 |
|
||||
| b_date_format | VARCHAR(50) | 日期格式:yyyyMMdd |
|
||||
| b_sequence_width | INT | 流水号宽度 |
|
||||
| b_reset_type | VARCHAR(20) | 重置类型:none/year/month/day |
|
||||
| b_start_value | BIGINT | 起始值 |
|
||||
| b_current_period | VARCHAR(50) | 当前周期值 |
|
||||
| b_current_value | BIGINT | 当前流水号 |
|
||||
| b_save_table | VARCHAR(200) | 保存到的表 |
|
||||
| b_field_name | VARCHAR(200) | 保存到的字段 |
|
||||
|
||||
## 业务表命名惯例
|
||||
|
||||
- `s_*` — 系统配置表(static/system)
|
||||
- `b_*` — 业务表/基础表(business/base)
|
||||
- `bf_*` — 业务-文件关联表
|
||||
- `v_*` — 视图
|
||||
- 主键统一:`b_id BIGINT`
|
||||
- 排序字段:`b_xh INT`
|
||||
- 启用字段:`b_canuse TINYINT`(0/1)
|
||||
Reference in new issue
Block a user