×

Список заданий

Этот API используется для того, чтобы получить список заданий в PTM.
С его помощью можно:
— просматривать все задания, созданные в аккаунте
— отфильтровать их по периоду или статусу
— сортировать и постранично загружать данные
— видеть статусы, инициаторов, адреса и прочие параметры задания

 Как получить данные

Метод

GET

Адрес запроса

Для получения данных используйте адрес: https://tasks.<server_address>/backend/public/dashboard/tasks

Параметры запроса

  • page — страница для выборки. Используется для пагинации . По умолчанию — 1
  • start — смещение для SQL-запроса. По умолчанию — 0
  • limit  — количество записей для выборки. По умолчанию — 25
  • usr_id — ID пользователя (можно взять из объекта, возвращаемого при авторизации или инициализации)
  • acc_id — ID аккаунта (тоже берётся при авторизации/инициализации)
  • filter — фильтр в формате JSON. Например, выборка заданий за период:
    [{"property":"c_begin_time","operator":"bt_date","value":[1575147600,1583139659]}]
  • sort — сортировка в формате JSON. Например, сортировка по ID задания:
    [{"property":"id","direction":"DESC"}]
 

Пример запроса

fetch("https://tasks.<server_address>/backend/public/dashboard/tasks?page=1&start=0&limit=25&sort=%5B%7B%22
property%22%3A%22id%22%2C%22direction%22%3A%22ASC%22%7D%5D", {
  method: "GET",
  headers: {
    "accept": "*/*",
    "x-csrf-token": token   // токен, полученный через getToken
  },
  credentials: "include"
})
.then(response => response.json())
.then(data => console.log(data));
Ответ
{
  "page": 1,
  "items": [
    {
      "id": 403,
      "c_status_id": 2,
      "c_task_type_id": 5,
      "c_initiator": "Иванов И.И.",
      "c_address_initiator": "г. Москва, ул. Ленина, 10",
      "c_address_tasks": "г. Москва, ул. Пушкина, 25",
      "c_address_base": "База №1",
      "c_tasks_lat": 55.7558,
      "c_tasks_lon": 37.6173,
      "c_base_lat": 55.7512,
      "c_base_lon": 37.6184,
      "c_user_id": 12,
      "c_driver_id": 101,
      "c_vehicle_id": "10518",
      "c_initiator_type": 1,
      "c_begin_time": 1575147600,
      "c_return_time": 1575154800,
      "c_running_time": 1575148000,
      "c_progress_time": 1575149000,
      "c_end_time": 1575152000,
      "c_information": "{\"comment\":\"Доставка документов\"}",
      "created_at": "2020-12-01T10:00:00Z",
      "updated_at": "2020-12-01T10:10:00Z",
      "c_accept_time": 1575147700,
      "c_initiator_type_name": "Шаблон: Доставка",
      "c_initiator_parameters": "{\"priority\":\"high\"}",
      "c_status_name": "Выполнено",
      "c_task_type_name": "Доставка",
      "c_task_type_priority": "1",
      "c_task_type_priority_name": "Высокий",
      "c_task_type_color": "#FF0000"
    }
  ],
  "total": 22,
  "msg": []
}
В ответ на API-запрос возвращается:
  • page — номер страницы
  • items — массив заданий
  • total — общее количество заданий
  • msg — сообщения сервера (чаще пусто)
Основные поля задания:
  • id — ID задания
  • c_status_id — ID статуса
  • c_task_type_id — ID типа задания
  • c_initiator — инициатор (заявитель)
  • c_address_initiator — адрес инициатора
  • c_address_tasks — адрес выполнения задания
  • c_address_base — адрес базы
  • c_tasks_lat, c_tasks_lon — координаты задания
  • c_base_lat, c_base_lon — координаты базы
  • c_user_id — ID пользователя, создавшего задание
  • c_driver_id — ID назначенного водителя
  • c_vehicle_id — ID машины
  • c_initiator_type — ID шаблона задания
  • c_begin_time — время начала (Unix timestamp)
  • c_return_time — время возврата
  • c_running_time — время отправки на выполнение
  • c_progress_time — время начала выполнения
  • c_end_time — время завершения
  • c_information — дополнительные данные в формате JSON (например, комментарий)
  • created_at — время создания
  • updated_at — время обновления
  • c_accept_time — время принятия задания водителем
  • c_initiator_type_name — название шаблона
  • c_initiator_parameters — параметры шаблона (JSON)
  • c_status_name — название статуса задания
  • c_task_type_name — название типа задания
  • c_task_type_priority — ID приоритета
  • c_task_type_priority_name — название приоритета
  • c_task_type_color — цветовое обозначение типа задания