mengstack-website/guide/org.md
MengStack Dev fca3326e34 docs: 官网文档全面更新 — M2-M8 指南 + API 参考 + v0.2.0 更新日志
- 更新 changelog.md: v0.2.0 记录 M2-M8 全部完成,路线图更新
- 新增 5 篇指南: RBAC、组织管理、审计日志、通知模块、质量横切
- 新增 5 篇 API 文档: RBAC(11)、Org(5)、Audit(1)、Settings(7)、Notification(7)
- 更新 api/overview.md: 完整 37 端点列表
- 更新 config.ts: 侧边栏分组 + 11 页 SEO 元数据
2026-10-03 01:55:55 +08:00

93 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 组织管理 | 多租户 CRUD 与状态管理 - MengStack官方文档
---
# 组织管理
组织管理模块提供租户(Tenant)的完整生命周期管理,是多租户系统的基础。
## 数据模型
```go
type Tenant struct {
ID string // UUID 主键
Name string // 组织名称
Slug string // 唯一标识符(用于 URL 友好展示)
Status int // 1=启用, 0=禁用
Settings string // JSON 扩展配置
CreatedAt time.Time
UpdatedAt time.Time
}
```
## 核心能力
| 能力 | 说明 |
|------|------|
| 创建租户 | 自动生成 UUID,需提供 name 和 slug |
| 查询租户 | 支持列表查询和单条详情查询 |
| 更新租户 | 可修改名称、slug、状态 |
| 删除租户 | 级联清理关联数据 |
| 状态管理 | 启用 / 禁用租户,禁用后该租户用户无法登录 |
## 使用方式
### 创建租户
```bash
curl -X POST http://localhost:2222/api/v1/org/tenants \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "示例科技有限公司",
"slug": "example-tech"
}'
```
响应:
```json
{
"code": 0,
"message": "success",
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "示例科技有限公司",
"slug": "example-tech",
"status": 1,
"created_at": "2026-10-03T10:00:00+08:00",
"updated_at": "2026-10-03T10:00:00+08:00"
}
}
```
### 禁用租户
```bash
curl -X PUT http://localhost:2222/api/v1/org/tenants/550e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"status": 0}'
```
## 与多租户中间件的关系
组织管理模块负责租户数据的 CRUD,而多租户中间件(`X-Tenant-ID` header)负责在请求级别隔离数据。两者配合实现完整的多租户能力:
1. 通过 **组织管理 API** 创建租户
2. 用户登录时通过 **X-Tenant-ID** 指定所属租户
3. 中间件自动验证租户状态并注入上下文
4. 后续所有数据库操作自动按 `tenant_id` 过滤
## API 端点
| 方法 | 路径 | 说明 |
|------|------|------|
| POST | `/api/v1/org/tenants` | 创建租户 |
| GET | `/api/v1/org/tenants` | 列出所有租户 |
| GET | `/api/v1/org/tenants/:id` | 获取租户详情 |
| PUT | `/api/v1/org/tenants/:id` | 更新租户 |
| DELETE | `/api/v1/org/tenants/:id` | 删除租户 |
详细接口参数见 [组织管理 API 参考](/api/org)。