feat(多租户): 增强多租户和客户支持功能

添加租户ID和客户ID到请求上下文中
更新操作日志记录以包含租户和客户信息
优化类型注解使用现代Python语法
重构基础模型和模式中的租户和客户关联字段
This commit is contained in:
zhangtao
2025-11-29 16:22:46 +08:00
parent 7e4eda0671
commit 959eb6f19c
6 changed files with 66 additions and 54 deletions
@@ -1,6 +1,5 @@
# -*- coding: utf-8 -*-
from typing import Optional, Union
from datetime import datetime
from pydantic import ConfigDict, Field, BaseModel, model_validator
from sqlalchemy.ext.asyncio import AsyncSession
@@ -21,8 +20,8 @@ class JWTPayloadSchema(BaseModel):
"""JWT载荷模型"""
sub: str = Field(..., description='用户登录信息')
is_refresh: bool = Field(default=False, description='是否刷新token')
exp: Union[datetime, int] = Field(..., description='过期时间')
tenant_id: Optional[int] = Field(default=None, description='租户ID')
exp: datetime | int = Field(..., description='过期时间')
tenant_id: int | None = Field(default=None, description='租户ID')
@model_validator(mode='after')
def validate_fields(self):