37 lines
979 B
Python
37 lines
979 B
Python
from pydantic import BaseModel, Field
|
|
from typing import Optional
|
|
from datetime import datetime
|
|
import uuid
|
|
|
|
class RentMonitoringBase(BaseModel):
|
|
property_address: str
|
|
property_type: str
|
|
bedrooms: int
|
|
bathrooms: int
|
|
square_feet: float
|
|
rent_amount: float
|
|
listing_url: str
|
|
listing_source: str
|
|
is_available: bool = Field(True)
|
|
|
|
class RentMonitoringCreate(RentMonitoringBase):
|
|
pass
|
|
|
|
class RentMonitoringUpdate(RentMonitoringBase):
|
|
property_address: Optional[str] = None
|
|
property_type: Optional[str] = None
|
|
bedrooms: Optional[int] = None
|
|
bathrooms: Optional[int] = None
|
|
square_feet: Optional[float] = None
|
|
rent_amount: Optional[float] = None
|
|
listing_url: Optional[str] = None
|
|
listing_source: Optional[str] = None
|
|
is_available: Optional[bool] = None
|
|
|
|
class RentMonitoringSchema(RentMonitoringBase):
|
|
id: uuid.UUID
|
|
created_at: datetime
|
|
updated_at: datetime
|
|
|
|
class Config:
|
|
orm_mode = True |