mirror of
https://github.com/fccapria/scientify.git
synced 2026-01-12 02:36:10 +00:00
Initial release
This commit is contained in:
commit
ae5e4b8873
52 changed files with 17572 additions and 0 deletions
69
backend/app/schemas.py
Normal file
69
backend/app/schemas.py
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
import uuid
|
||||
|
||||
from pydantic import BaseModel
|
||||
from typing import List, Optional
|
||||
from datetime import datetime
|
||||
|
||||
from fastapi_users import schemas
|
||||
|
||||
|
||||
class UserRead(schemas.BaseUser[uuid.UUID]):
|
||||
first_name: Optional[str] = None
|
||||
last_name: Optional[str] = None
|
||||
|
||||
|
||||
class UserCreate(schemas.BaseUserCreate):
|
||||
first_name: Optional[str] = None
|
||||
last_name: Optional[str] = None
|
||||
|
||||
|
||||
class UserUpdate(schemas.BaseUserUpdate):
|
||||
first_name: Optional[str] = None
|
||||
last_name: Optional[str] = None
|
||||
|
||||
|
||||
class AuthorOut(BaseModel):
|
||||
id: int
|
||||
name: str
|
||||
|
||||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
class KeywordOut(BaseModel):
|
||||
id: int
|
||||
name: str
|
||||
|
||||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
class PublicationOut(BaseModel):
|
||||
id: int
|
||||
title: str
|
||||
filename: Optional[str]
|
||||
upload_date: datetime
|
||||
journal: Optional[str] = None
|
||||
year: Optional[int] = None
|
||||
doi: Optional[str] = None
|
||||
authors: List[AuthorOut]
|
||||
keywords: List[KeywordOut]
|
||||
user_id: Optional[uuid.UUID] = None
|
||||
|
||||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
class UserPublicationOut(BaseModel):
|
||||
id: int
|
||||
title: str
|
||||
filename: Optional[str]
|
||||
upload_date: datetime
|
||||
journal: Optional[str] = None
|
||||
year: Optional[int] = None
|
||||
doi: Optional[str] = None
|
||||
authors: List[AuthorOut]
|
||||
keywords: List[KeywordOut]
|
||||
|
||||
class Config:
|
||||
orm_mode = True
|
||||
Loading…
Add table
Add a link
Reference in a new issue