add vehicle service profile settings

This commit is contained in:
VPN SaaS Dev
2026-05-12 04:52:42 +09:00
parent b5012ec6e7
commit e75697f83e
10 changed files with 496 additions and 5 deletions

View File

@@ -13,6 +13,16 @@ class CarBase(BaseModel):
plate_number: str | None = None
vin: str | None = None
fuel_type: str | None = None
target_consumption_l_per_100km: Decimal | None = None
fuel_tank_volume_l: Decimal | None = None
engine_oil_type: str | None = None
engine_oil_volume_l: Decimal | None = None
transmission_fluid_type: str | None = None
transmission_fluid_volume_l: Decimal | None = None
coolant_type: str | None = None
brake_fluid_type: str | None = None
tire_pressure_front_bar: Decimal | None = None
tire_pressure_rear_bar: Decimal | None = None
purchase_date: date | None = None
purchase_price: Decimal | None = None
current_odometer: int | None = None
@@ -31,6 +41,16 @@ class CarUpdate(BaseModel):
plate_number: str | None = None
vin: str | None = None
fuel_type: str | None = None
target_consumption_l_per_100km: Decimal | None = None
fuel_tank_volume_l: Decimal | None = None
engine_oil_type: str | None = None
engine_oil_volume_l: Decimal | None = None
transmission_fluid_type: str | None = None
transmission_fluid_volume_l: Decimal | None = None
coolant_type: str | None = None
brake_fluid_type: str | None = None
tire_pressure_front_bar: Decimal | None = None
tire_pressure_rear_bar: Decimal | None = None
purchase_date: date | None = None
purchase_price: Decimal | None = None
current_odometer: int | None = None

View File

@@ -0,0 +1,48 @@
from datetime import datetime
from pydantic import BaseModel, ConfigDict
class ServiceCenterCreate(BaseModel):
name: str
telegram_chat_id: str | None = None
contact_phone: str | None = None
address: str | None = None
class ServiceCenterRead(ServiceCenterCreate):
id: int
created_at: datetime
model_config = ConfigDict(from_attributes=True)
class CarServiceLinkCreate(BaseModel):
car_id: int
service_center_id: int
external_vehicle_ref: str | None = None
is_active: bool = True
class CarServiceLinkRead(CarServiceLinkCreate):
id: int
created_at: datetime
model_config = ConfigDict(from_attributes=True)
class ServiceInboxCreate(BaseModel):
source_chat_id: str | None = None
raw_text: str
car_id: int | None = None
service_center_id: int | None = None
class ServiceInboxRead(ServiceInboxCreate):
id: int
parsed_status: str
parsed_payload: str | None = None
error: str | None = None
created_at: datetime
model_config = ConfigDict(from_attributes=True)