diff --git a/src/schemas/__init__.py b/src/schemas/__init__.py index 68e5795..6b2c6aa 100644 --- a/src/schemas/__init__.py +++ b/src/schemas/__init__.py @@ -1,3 +1,4 @@ from .database import LOANS, MEDIA, USERS from .user import User -from .book import Book \ No newline at end of file +from .book import Book +from .loan import Loan \ No newline at end of file diff --git a/src/schemas/book.py b/src/schemas/book.py index 6e9a904..76893c8 100644 --- a/src/schemas/book.py +++ b/src/schemas/book.py @@ -3,14 +3,14 @@ from dataclasses import dataclass @dataclass class Book: - title: str | None = None - ppn: int | None = None - signature: str | None = None - isbn: str | None = None - link: str | None = None - database_id: int | None = None - link: str | None = None - loan_from: str | None = None - loan_to: str | None = None - returned: int | None = None - returned_date: str | None = None + title: str = "" + ppn: int = "" + signature: str = "" + isbn: str = "" + link: str = "" + database_id: int = "" + link: str = "" + loan_from: str = "" + loan_to: str = "" + returned: int = "" + returned_date: str = "" diff --git a/src/schemas/database.py b/src/schemas/database.py index 0a1dabb..29e554f 100644 --- a/src/schemas/database.py +++ b/src/schemas/database.py @@ -6,20 +6,20 @@ usermail TEXT NOT NULL); MEDIA = """CREATE TABLE IF NOT EXISTS media ( id INTEGER PRIMARY KEY AUTOINCREMENT, signature TEXT NOT NULL, -isbn TEXT NOT NULL, -ppn TEXT NOT NULL, +isbn TEXT, +ppn TEXT, title TEXT NOT NULL, -link TEXT NOT NULL); +link TEXT); """ LOANS = """CREATE TABLE IF NOT EXISTS loans ( id INTEGER PRIMARY KEY AUTOINCREMENT, user_id INTEGER NOT NULL, media_id INTEGER NOT NULL, -loan_date TEXT NOT NULL, -return_date TEXT NOT NULL, +loan_date DATETIME NOT NULL, +return_date DATETIME NOT NULL, returned INTEGER DEFAULT 0, -returned_date TEXT, +returned_date DATETIME, FOREIGN KEY (user_id) REFERENCES users(id), FOREIGN KEY (media_id) REFERENCES media(id)); """ diff --git a/src/schemas/loan.py b/src/schemas/loan.py new file mode 100644 index 0000000..fe0c944 --- /dev/null +++ b/src/schemas/loan.py @@ -0,0 +1,14 @@ +from .book import Book +from dataclasses import dataclass + + +@dataclass +class Loan: + id: int + user_id: int + media_id: int + loan_date: str + return_date: str + returned: int + returned_date: str + book: Book