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

2.5 KiB
Raw Blame History

title
组织管理 | 多租户 CRUD 与状态管理 - MengStack官方文档

组织管理

组织管理模块提供租户(Tenant)的完整生命周期管理,是多租户系统的基础。

数据模型

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、状态
删除租户 级联清理关联数据
状态管理 启用 / 禁用租户,禁用后该租户用户无法登录

使用方式

创建租户

curl -X POST http://localhost:2222/api/v1/org/tenants \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "示例科技有限公司",
    "slug": "example-tech"
  }'

响应:

{
  "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"
  }
}

禁用租户

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 参考。