Что должно быть в моделях получаемых с Backend при реализации приложения для паркинга самокатов и моноколес на Vue

«Что должно быть в моделях получаемых с Backend при реализации приложения для паркинга самокатов и моноколес на Vue» — вопрос из категории Vue, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Модели должны включать:

  1. Vehicle:
interface Vehicle {
  id: string;
  type: 'scooter' | 'monowheel';
  coordinates: [number, number];
  batteryLevel: number;
  isAvailable: boolean;
  tariff: number; // цена за минуту
}
  1. ParkingZone:
interface ParkingZone {
  id: string;
  coordinates: [number, number][]; // полигон зоны
  capacity: number;
  currentVehicles: number;
}
  1. UserRide (для истории поездок):
interface UserRide {
  id: string;
  vehicleId: string;
  startTime: Date;
  endTime: Date | null;
  route: [number, number][];
  cost: number;
}

Дополнительно:

  • Валидация координат (lat, lng)
  • Статусы доступности транспорта
  • Текущее местоположение пользователя (если нужно)
  • Система рейтингов/отзывов (опционально)