Отчеты водителей
REST API
Получение отчетов водителей за указанный период для списка КП
GET GetReportsForLk
https://{host_name}/app/api/v1/admin/task/getReportsForLk
Params | Value | Comment |
---|---|---|
dateAppTzFrom | 2024-05-14T10:00:00Z | Дата с: yyyy-mm-ddThh:mm:ssZ |
dateAppTzTo | 2024-05-14T10:00:00Z | Дата до: yyyy-mm-ddThh:mm:ssZ |
lkCodes | 38012345 | Коды КП: 12345678, 12345678 |
Результат
[
{
"id": "3a6e3666-b169-4cff-9978-6f80d80f4a94", // ID отчета в БД
"notRemovedContainers": [], // Не вывезенные контейнеры
"planContainers": [ // Контейнеры в плане
{
"id": "a7b670ae-1484-47f1-bfa9-7c188600145f", // ID контейнера в плане
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // ID типа контейнера
"volume": 1.1, // Объем контейнера в кубических метрах
"name": "Евро-контейнер 1,1 м3" // Название типа контейнера
},
"amount": 2 // Количество контейнеров данного типа в плане
},
{
"id": "cc5d7928-e782-4dbc-b5c3-342d38e01fec", // ID контейнера в плане
"type": {
"id": "498dd96b-e626-4e1e-9599-3f723c22fce4", // ID типа контейнера
"volume": 8.0, // Объем контейнера в кубических метрах
"name": "Бункер 8 м3" // Название типа контейнера
},
"amount": 1 // Количество контейнеров данного типа в плане
}
],
"factContainersAmount": 3, // Фактическое количество контейнеров
"pickedUpVolume": 0.0, // Собранный объем в кубических метрах
"emptyContainersAmount": 0, // Количество пустых контейнеров
"area": { // Контейнерная площадка (КП)
"id": "4fc39014-e9b7-4f62-900e-7c69714e53de", // ID КП
"lkCode": "38105858" // Код КП
},
"removalTs": "2024-03-02T23:08:08.000+00:00", // Дата и время удаления
"vehicleNumber": "Т 285 ВХ 138", // Номер автомобиля
"detailingNotRemoved": [], // Детализация не забранных контейнеров
"detailingEmpty": [], // Детализация пустых контейнеров
"detailingFact": [
{
"id": "a8bc648c-dcaf-4ef0-981e-610cd5bd32fc", // ID детализации факта
"group": {
"id": "cc5d7928-e782-4dbc-b5c3-342d38e01fec", // ID группы контейнеров
"type": {
"id": "498dd96b-e626-4e1e-9599-3f723c22fce4",// ID типа контейнера в группе
"volume": 8.0, // Объем контейнера в группе
"name": "Бункер 8 м3" // Название типа контейнера в группе
},
"amount": 1 // Количество контейнеров данного типа в группе
},
"amount": 1 // Количество контейнеров в детализации факта
},
{
"id": "d5cf3999-6039-4232-8bbd-7bca097937db", // ID детализации факта
"group": {
"id": "a7b670ae-1484-47f1-bfa9-7c188600145f", // ID группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29",// ID типа контейнера в группе
"volume": 1.1, // Объем контейнера в группе
"name": "Евро-контейнер 1,1 м3" // Название типа контейнера в группе
},
"amount": 2 // Количество контейнеров данного типа в группе
},
"amount": 2 // Количество контейнеров в детализации факта
}
],
"detailingPlan": [
{
"id": "65cc2d58-c1de-44dd-b8ca-dc50a8c3b584", // ID детализации плана
"group": {
"id": "a7b670ae-1484-47f1-bfa9-7c188600145f", // ID группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29",// ID типа контейнера в группе
"volume": 1.1, // Объем контейнера в группе
"name": "Евро-контейнер 1,1 м3" // Название типа контейнера в группе
},
"amount": 2 // Количество контейнеров данного типа в группе
},
"amount": 2 // Количество контейнеров в детализации плана
},
{
"id": "e078dc13-f724-4b9b-847e-2faba0894ad4", // ID детализации плана
"group": {
"id": "cc5d7928-e782-4dbc-b5c3-342d38e01fec", // ID группы контейнеров
"type": {
"id": "498dd96b-e626-4e1e-9599-3f723c22fce4",// ID типа контейнера в группе
"volume": 8.0, // Объем контейнера в группе
"name": "Бункер 8 м3" // Название типа контейнера в группе
},
"amount": 1 // Количество контейнеров данного типа в группе
},
"amount": 1 // Количество контейнеров в детализации плана
}
],
"photos": [
{
"url": "/2024/03/02/323c7ebd-7c4b-4375-b847-cce597be7b50.jpeg" // URL фото отчета
},
{
"url": "/2024/03/02/7cc15451-c5a5-4d4c-b9a6-be369a1b7761.jpeg" // URL фото отчета
}
]
}
]
Kafka
Отправка всех новых отчетов водителей, которые ещё не экспортированы или были изменены после последнего экспорта
POST exportNewOrChangedReportsToLk
https://{Host_name}/app/api/v1/admin/task/exportNewOrChangedReportsToLk
Результат приходит в KAFKA в комнату REPORT_FROM_DRIVER_DSP_OUT_{server_name}, где server_name - суффикс сервера.
Результат в Kafka для 1 отчета
{
"id": "23b0dec5-3ed4-4c1f-be3b-3ede49ab51ad", // id отчета
"notRemovedContainers": [], // список контейнеров, которые не были подобраны (в данном случае пустой)
"planContainers": [
{
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id контейнера
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера ТКО, КГО РСО
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
}
],
"factContainersAmount": 2, // фактическое количество контейнеров
"pickedUpVolume": 0, // объем собранного мусора
"emptyContainersAmount": 0, // количество пустых контейнеров
"area": {
"id": "e4c64c3c-375b-41cf-9cef-35a7d1833687", // id района КП - контейнерная площадка
"lkCode": "38105065", // код КП
"externalCode": null // внешний код КП (null, если не указано)
},
"removalTs": 1717405524000, // время вывоза (в формате unix time)
"localRemovalTs": "2024-10-02T09:27:46.000+08:00", // время вывоза с указанием таймзоны
"vehicleNumber": "К 915 ЕВ 138", // номер транспортного средства
"detailingNotRemoved": [
{
"id": "25f9e88a-5161-4064-9140-6005ddb08182", // id записи детализации
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров на одном КП может быть несколько контейнеров.
"type": {
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
},
"amount": 0, // количество контейнеров в данной записи детализации
"volume": null // объем контейнеров в данной записи детализации (null, если не указано)
}
],
"detailingEmpty": [
{
"id": "56d3735c-0257-4372-92c4-296899e1490f", // id записи детализации
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
},
"amount": 0, // количество контейнеров в данной записи детализации
"volume": null // объем контейнеров в данной записи детализации (null, если не указано)
}
],
"detailingFact": [ // задание фактическое
{
"id": "380a3ae0-9d1a-4aa8-9b2f-5364cb5c8e41", // id записи детализации из TASK DETAIL FACT
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
},
"amount": 2, // количество контейнеров в данной записи детализации
"volume": 0 // объем контейнеров в данной записи детализации
}
],
"detailingPlan": [ // задание по плану
{
"id": "d0c2cc25-c1d8-40b1-8639-27755bb0231e", // id записи детализации из TASK DETAIL
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1 // объем контейнера
}
}
}
]
}
Остановка отправки отчетов
POST StopExportReports
https://{host_name}/app/api/v1/admin/task/stopExportReportsToLk
При отправке отчетов они добавляются в кафку по одному. Если процесс еще не завершен, мы можем остановить в любой момент экспорт отчетов.
Отправка отчетов водителей за указанный период для списка КП либо для всех КП
POST exportReportsToLk
https://{Host_name}/app/api/v1/admin/task/exportReportsToLk?dateAppTzFrom=2023-05-23&dateAppTzTo=2023-05-26&lkCodes=38101463&exportAllCodes=true&chunked=true&exportReport=2
Результат приходит в KAFKA в комнату REPORT_FROM_DRIVER_DSP_OUT_{server_name}, где server_name - суффикс сервера. Каждый отчет приходит отдельным сообщением.
PARAMS | value | Комментарий |
---|---|---|
dateAppTzFrom | 2024-05-14T10:00:00Z | Дата с : format yyyy-mm-ddThh:mm:ssZ |
dateAppTzTo | 2024-05-14T10:00:00Z | Дата до : format yyyy-mm-ddThh:mm:ssZ |
lkCodes | 38012345, | Список Номеров КП: format 12345678, 12345678 |
*exportAll (не обязателен) | true | Дополнительный параметр, если хотите вывести отчеты для всех КП за период |
Результат в Kafka для 1 отчета
{
"id": "23b0dec5-3ed4-4c1f-be3b-3ede49ab51ad", // id отчета
"notRemovedContainers": [], // список контейнеров, которые не были подобраны (в данном случае пустой)
"planContainers": [
{
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id контейнера
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера ТКО, КГО РСО
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
}
],
"factContainersAmount": 2, // фактическое количество контейнеров
"pickedUpVolume": 0, // объем собранного мусора
"emptyContainersAmount": 0, // количество пустых контейнеров
"area": {
"id": "e4c64c3c-375b-41cf-9cef-35a7d1833687", // id района КП - контейнерная площадка
"lkCode": "38105065", // код КП
"externalCode": null // внешний код КП (null, если не указано)
},
"removalTs": 1717405524000, // время вывоза (в формате timestamp)
"vehicleNumber": "К 915 ЕВ 138", // номер транспортного средства
"detailingNotRemoved": [
{
"id": "25f9e88a-5161-4064-9140-6005ddb08182", // id записи детализаци
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров на одном КП может быть несколько контейнеров.
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
},
"amount": 0, // количество контейнеров в данной записи детализации
"volume": null // объем контейнеров в данной записи детализации (null, если не указано)
}
],
"detailingEmpty": [
{
"id": "56d3735c-0257-4372-92c4-296899e1490f", // id записи детализации
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
},
"amount": 0, // количество контейнеров в данной записи детализации
"volume": null // объем контейнеров в данной записи детализации (null, если не указано)
}
],
"detailingFact": [ // задание фактическое
{
"id": "380a3ae0-9d1a-4aa8-9b2f-5364cb5c8e41", // id записи детализации из TASK DETAIL FACT
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1, // объем контейнера
"name": "Евро-контейнер 1,1 м3" // название типа контейнера
},
"amount": 2 // количество контейнеров данного типа
},
"amount": 2, // количество контейнеров в данной записи детализации
"volume": 0 // объем контейнеров в данной записи детализации
}
],
"detailingPlan": [ // задание по плану
{
"id": "d0c2cc25-c1d8-40b1-8639-27755bb0231e", // id записи детализации из TASK DETAIL
"group": {
"id": "79d1b9a2-c316-4c82-85b9-52b05b5b8a1d", // id группы контейнеров
"type": {
"id": "d21baed2-ba6f-467a-8f90-3a6647a63c29", // id типа контейнера
"volume": 1.1 // объем контейнера
}
}
}
]
}