Tenant 模块
多租户域名管理。每个分销商可申请独立域名,客户在域名下注册即自动绑定为该分销商的客户。
数据模型
tenant_domain(租户域名)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | VARCHAR(32) | 主键 |
| domain | VARCHAR(200) | 域名 UNIQUE |
| resellerid | VARCHAR(32) | 分销商机构ID |
| orgid | VARCHAR(32) | 所属平台机构ID |
| status | VARCHAR(10) | active/inactive |
| created_at | TIMESTAMP | 创建时间 |
| updated_at | TIMESTAMP | 更新时间 |
集成点
- 注册自动绑定: 用户注册时根据
request.host查询tenant_domain→ 找到resellerid→ 写入discount_customer_bind - RBAC:
load_path.py注册所有路径 - Sage 集成: 需要在
app/sage.pyimport + load,build.shinstall loop,global_menu.uimenu entry
DB 迁移
CREATE TABLE tenant_domain (
id VARCHAR(32) NOT NULL,
domain VARCHAR(200) NOT NULL,
resellerid VARCHAR(32) NOT NULL,
orgid VARCHAR(32) NOT NULL,
status VARCHAR(10) NOT NULL DEFAULT 'active',
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id),
UNIQUE INDEX idx_tenant_domain_domain (domain),
INDEX idx_tenant_domain_reseller (resellerid),
INDEX idx_tenant_domain_orgid (orgid)
);
Description
Languages
Python
100%