Files
roaauto/backend/app/orders/schemas.py
Marius Mutu 9db4e746e3 feat: add clients nomenclator, order edit/delete/devalidate, invoice types, dashboard redesign
- New clients table with PF/PJ support, fiscal data (CUI, IBAN, eFactura fields)
- Full CRUD API for clients with search, sync integration
- Order lifecycle: edit header (DRAFT), devalidate (VALIDAT→DRAFT), delete order/invoice
- Invoice types: FACTURA (B2B) vs BON_FISCAL (B2C) with different nr formats
- OrderCreateView redesigned as multi-step flow (client→vehicle→details)
- Autocomplete from catalog_norme/catalog_preturi in OrderLineForm
- Dashboard now combines stats + full orders table with filter tabs and search
- ClientPicker and VehiclePicker with inline creation capability
- Frontend schema aligned with backend (missing columns causing sync errors)
- Mobile responsive fixes for OrderDetailView buttons

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 00:36:40 +02:00

32 lines
795 B
Python

from pydantic import BaseModel
class CreateOrderRequest(BaseModel):
vehicle_id: str
tip_deviz_id: str | None = None
km_intrare: int | None = None
observatii: str | None = None
class UpdateOrderRequest(BaseModel):
vehicle_id: str | None = None
tip_deviz_id: str | None = None
km_intrare: int | None = None
observatii: str | None = None
client_id: str | None = None
client_nume: str | None = None
client_telefon: str | None = None
nr_auto: str | None = None
marca_denumire: str | None = None
model_denumire: str | None = None
class AddLineRequest(BaseModel):
tip: str # manopera | material
descriere: str
ore: float = 0
pret_ora: float = 0
cantitate: float = 0
pret_unitar: float = 0
um: str | None = None