Update app/schemas.py
This commit is contained in:
parent
558319cc17
commit
0d1a8c8284
1 changed files with 31 additions and 1 deletions
|
|
@ -1,6 +1,6 @@
|
|||
from pydantic import BaseModel
|
||||
from datetime import date
|
||||
from typing import Optional
|
||||
from typing import Optional, List
|
||||
|
||||
# -----------------------
|
||||
# Customer Schemas
|
||||
|
|
@ -28,6 +28,7 @@ class Customer(CustomerBase):
|
|||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Account Schemas
|
||||
# -----------------------
|
||||
|
|
@ -43,3 +44,32 @@ class Account(AccountBase):
|
|||
account_number: str
|
||||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Transaction Schemas
|
||||
# -----------------------
|
||||
class TransactionBase(BaseModel):
|
||||
account_id: str
|
||||
branch_id: Optional[int] = None
|
||||
transaction_type: str
|
||||
amount: float
|
||||
date: date
|
||||
balance_after: float
|
||||
vendor: Optional[str] = None
|
||||
transaction_location: Optional[str] = None
|
||||
|
||||
class Transaction(TransactionBase):
|
||||
transaction_id: str
|
||||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Nested Schemas
|
||||
# -----------------------
|
||||
class AccountWithTransactions(Account):
|
||||
transactions: Optional[List[Transaction]] = []
|
||||
|
||||
class CustomerWithAccounts(Customer):
|
||||
accounts: Optional[List[AccountWithTransactions]] = []
|
||||
|
|
|
|||
Loading…
Reference in a new issue