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

Ответ

Для приложения паркинга самокатов и моноколес оптимально получать такие модели:

  1. Транспортные средства
    {
      "id": "scooter_123",
      "type": "scooter",
      "batteryLevel": 78,
      "coordinates": [50.4501, 30.5234],
      "isAvailable": true,
      "pricePerMinute": 0.25
    }
  1. Парковочные зоны
    {
      "id": "parking_456",
      "coordinates": [[50.4501, 30.5234], [50.4502, 30.5235]],
      "capacity": 10,
      "availableSpots": 3
    }
  1. Пользовательские сессии
    {
      "userId": "user_789",
      "vehicleId": "scooter_123",
      "startTime": "2023-10-01T14:30:00Z",
      "totalCost": 4.50
    }
  1. Тарифы и ограничения
    {
      "maxSpeed": 25,
      "allowedAreas": [[...]],
      "priceRules": {
        "day": 0.20,
        "night": 0.30
      }
    }

Дополнительно: статус API, ошибки валидации, геозоны. Минимум вложенности, camelCase, ISO-даты.

Ответ 18+ 🔞

А, слушай, смотри, вот эти твои самокаты и моноколеса, блядь... Ну, чтобы с ними не было пиздеца в коде, надо нормальные модели делать, а не как попало. Вот смотри, как надо, чтобы потом не охуевать.

Первое, это, блядь, сам транспорт. Не надо там десять полей нахуй, только самое важное. Вот, смотри, как я бы сделал:

{
  "id": "scooter_123",
  "type": "scooter",
  "batteryLevel": 78,
  "coordinates": [50.4501, 30.5234],
  "isAvailable": true,
  "pricePerMinute": 0.25
}

Видишь? Всё понятно, блядь: что это, где стоит, заряда сколько и почём. camelCase, даты по ISO — это святое, ёпта. Не выебывайся с форматами.

Дальше, парковки. Это же, сука, самое важное! Чтобы они не валялись где попало, как последние распиздяи.

{
  "id": "parking_456",
  "coordinates": [[50.4501, 30.5234], [50.4502, 30.5235]],
  "capacity": 10,
  "availableSpots": 3
}

Координаты полигоном, ёбта, чтобы зону обозначить. И сразу видно, сколько мест свободно, а то приедешь — а там хуй, всё занято, пизда.

Теперь, самое смешное — пользователи. Чувак взял самокат, поехал, а мы должны за ним следить, блядь, как за маленьким.

{
  "userId": "user_789",
  "vehicleId": "scooter_123",
  "startTime": "2023-10-01T14:30:00Z",
  "totalCost": 4.50
}

Всё, сессия началась, часики тикают, деньги капают. Просто и гениально, в рот меня чих-пых.

И, конечно, правила. Без них — анархия, блядь, и пиздец. Скорость, где можно ездить, почём.

{
  "maxSpeed": 25,
  "allowedAreas": [[...]],
  "priceRules": {
    "day": 0.20,
    "night": 0.30
  }
}

Ночью дороже, логично же, ёпта. И зоны ограничить, чтобы не уехал в соседний город, пидарас шерстяной.

И не забудь про статус API, ошибки валидации и геозоны. Но главное — без этой ебаной вложенности, как матрёшка, блядь. Сделал просто — и спи спокойно.