0.1.3
This commit is contained in:
2
src/models/database_models/__init__.py
Normal file
2
src/models/database_models/__init__.py
Normal file
@@ -0,0 +1,2 @@
|
||||
from .files import Stored
|
||||
from .model import Model, User, RefreshTokens, PermissionsGroups, Permissions
|
||||
14
src/models/database_models/files.py
Normal file
14
src/models/database_models/files.py
Normal file
@@ -0,0 +1,14 @@
|
||||
from datetime import datetime
|
||||
from sqlalchemy import TIMESTAMP, String, func
|
||||
from sqlalchemy.orm import Mapped, mapped_column
|
||||
from src.models.database_models.model import Model
|
||||
|
||||
class Stored(Model):
|
||||
__tablename__="reports"
|
||||
|
||||
id:Mapped[int]=mapped_column(primary_key=True, index=True)
|
||||
filename:Mapped[str]=mapped_column(String(255), index=True)
|
||||
created_at:Mapped[datetime]=mapped_column(TIMESTAMP, server_default=func.now())
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f'ID: {self.id}, Filename: {self.filename}'
|
||||
@@ -1,4 +1,3 @@
|
||||
from dataclasses import replace
|
||||
from datetime import datetime
|
||||
from typing import Annotated
|
||||
from pydantic import BaseModel, EmailStr, Field
|
||||
@@ -61,7 +60,7 @@ class PermissionsGroupsOut(Base):
|
||||
|
||||
|
||||
class RefreshTokens(Base):
|
||||
id:int
|
||||
|
||||
user_id:Annotated[UUID, Field(..., description="foreign key for the user")]
|
||||
token_hash:Annotated[str, Field(..., description="token hash")]
|
||||
device_info:Annotated[str, Field(..., description="User device info")]
|
||||
@@ -69,4 +68,12 @@ class RefreshTokens(Base):
|
||||
is_revoked:Annotated[bool|None, Field(None, description="revoke token if logout was made")]
|
||||
expires_at:Annotated[datetime, Field(..., description="when token is going to be expired")]
|
||||
|
||||
|
||||
class RefreshTokensOut(Base):
|
||||
|
||||
id:int
|
||||
user_id:Annotated[UUID, Field(..., description="foreign key for the user")]
|
||||
token_hash:Annotated[str, Field(..., description="token hash")]
|
||||
device_info:Annotated[str, Field(..., description="User device info")]
|
||||
ip_address:Annotated[str, Field(..., description="ip v4/v6 of the user")]
|
||||
is_revoked:Annotated[bool|None, Field(None, description="revoke token if logout was made")]
|
||||
expires_at:Annotated[datetime, Field(..., description="when token is going to be expired")]
|
||||
|
||||
Reference in New Issue
Block a user