From 577ec37a2f59a0a4c042cb42c566797037a89cb6 Mon Sep 17 00:00:00 2001 From: vladtechno Date: Wed, 20 May 2026 14:53:11 +1000 Subject: [PATCH] =?UTF-8?q?vehicle-card:=20=D0=BF=D0=BE=D0=BA=D0=B0=D0=B7?= =?UTF-8?q?=20=D0=B2=D0=BE=D0=B4=D0=B8=D1=82=D0=B5=D0=BB=D1=8F=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B4=20vendor=20states=20(Element=20history)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TtStateSummary.driver_id + driver_name добавлены в TS-тип. В строке каждого Element-state'а под датой/пробегом теперь выводится '👤 ФИО' если backend подтянул водителя. Логика идентична нашим осмотрам — общий helper drivers_at_dates на backend (см. PremiumCRM aa55431). --- mechanic-pwa/frontend/src/api/vehicles.ts | 5 +++++ mechanic-pwa/frontend/src/pages/VehicleCard.tsx | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/mechanic-pwa/frontend/src/api/vehicles.ts b/mechanic-pwa/frontend/src/api/vehicles.ts index af503d9..86555c5 100644 --- a/mechanic-pwa/frontend/src/api/vehicles.ts +++ b/mechanic-pwa/frontend/src/api/vehicles.ts @@ -54,6 +54,11 @@ export interface TtStateSummary { mileage: number | null; photos_count: number; damages_count: number; + /** Водитель, прикреплённый к машине на момент unix_time (lookup в + driver_rentals_v2 по car_number + перекрывающему/предыдущему периоду). + NULL если на тот момент машина была свободна. */ + driver_id?: number | null; + driver_name?: string | null; } export interface TtHistory { diff --git a/mechanic-pwa/frontend/src/pages/VehicleCard.tsx b/mechanic-pwa/frontend/src/pages/VehicleCard.tsx index 71eece9..1fa87b5 100644 --- a/mechanic-pwa/frontend/src/pages/VehicleCard.tsx +++ b/mechanic-pwa/frontend/src/pages/VehicleCard.tsx @@ -233,6 +233,11 @@ export default function VehicleCard() { )} + {s.driver_name && ( +
+ 👤 {s.driver_name} +
+ )}
📷 {s.photos_count}