| 123456789101112131415161718 |
- """从登录用户上下文解析当前租户编号。"""
- from sqlalchemy.orm import Session
- from app.core.config import settings
- from app.models.models import SysUser
- def get_tenant_no(db: Session, user: dict) -> str:
- """优先使用 user 字典中的 tenant_no,否则查 sys_user,最后回退 DEFAULT_TENANT_NO。"""
- cached = (user.get("tenant_no") or "").strip()
- if cached:
- return cached
- user_id = user.get("user_id")
- if not user_id:
- return settings.DEFAULT_TENANT_NO
- sys_user = db.query(SysUser).filter(SysUser.id == user_id).first()
- return (sys_user.tenant_no if sys_user and sys_user.tenant_no else None) or settings.DEFAULT_TENANT_NO
|