add new ui

This commit is contained in:
Danamir
2025-11-10 11:28:49 +03:00
parent 3f91dc91ec
commit e428e7f762
19 changed files with 755 additions and 31 deletions

View File

@@ -1,7 +1,7 @@
# backend/schemas.py
from pydantic import BaseModel
from typing import Optional, List
from typing import Optional, List, Literal
from datetime import datetime
@@ -49,6 +49,20 @@ class ConsumableRead(ConsumableBase):
orm_mode = True
# === Owner ===
class OwnerBase(BaseModel):
name: str
class OwnerCreate(OwnerBase):
pass
class OwnerRead(OwnerBase):
id: int
class Config:
orm_mode = True
# === Oborud ===
class OborudBase(BaseModel):
invNumber: Optional[int]
@@ -58,13 +72,25 @@ class OborudBase(BaseModel):
kolichestvo: Optional[int] = None
aud_id: int
type_id: int
owner_id: Optional[int] = None
class OborudCreate(OborudBase):
pass
class OborudUpdate(BaseModel):
invNumber: Optional[int] = None
nazvanie: Optional[str] = None
raspologenie: Optional[str] = None
numberppasu: Optional[str] = None
kolichestvo: Optional[int] = None
aud_id: Optional[int] = None
type_id: Optional[int] = None
owner_id: Optional[int] = None
class OborudRead(OborudBase):
id: int
type: EquipmentTypeRead
owner: Optional[OwnerRead] = None
components: List[ComponentRead] = []
consumables: List[ConsumableRead] = []
@@ -100,3 +126,33 @@ class ZametkaRead(ZametkaBase):
class Config:
orm_mode = True
# === Auth/User ===
class Token(BaseModel):
access_token: str
token_type: str = "bearer"
class TokenData(BaseModel):
username: Optional[str] = None
role: Optional[str] = None
Role = Literal["admin", "editor", "viewer"]
class UserBase(BaseModel):
username: str
role: Role = "viewer"
class UserCreate(UserBase):
password: str
class UserRead(UserBase):
id: int
class Config:
orm_mode = True
class UserRoleUpdate(BaseModel):
role: Role