Changes for page Методы API для работы с ГЛОНАССSoft
Last modified by Андрей Калиновский on 2025/04/24 15:46
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. krainovim1 +XWiki.Gadmin - Content
-
... ... @@ -1,5 +1,24 @@ 1 1 (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %) 2 2 ((( 3 +(% class="box warningmessage" %) 4 +((( 5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно 6 +просим вас соблюдать несколько простых правил при использовании API-команд:## 7 +))) 8 + 9 +* Формировать не более 3 отчётов одновременно. 10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50. 11 + 12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов. 13 + 14 +(% class="box infomessage" %) 15 +((( 16 +**Чтобы избежать блокировки** из-за превышения количества авторизаций, вам необходимо использовать токен авторизации, полученный с помощью метода /auth/login, во всех последующих запросах к API. Этот токен имеет ограниченный срок действия, который можно изменить, настроив параметр "Длительность сессии" в пользовательских настройках. 17 +))) 18 + 19 +При выполнении запросов с одним и тем же токеном его срок действия автоматически продлевается. Это позволяет пройти авторизацию только один раз и использовать полученный токен во всех последующих запросах без необходимости повторного входа в систему. 20 + 21 + 3 3 **Содержание страницы:** 4 4 ))) 5 5 ... ... @@ -14,11 +14,20 @@ 14 14 15 15 Пример: X-Auth: 34f4919a-099b-4b7d-8aa1-f478ec2062de. 16 16 17 -(% style="color:#000000" %)− (%%)При **редактировании** необходимо передавать все параметры пользователяв теле запроса! Те параметры, значения которых не будут переданы - будут стерты!36 +(% style="color:#000000" %)− (%%)При **редактировании** любой записи (пользователь, объект и т.д) необходимо передавать все параметры записи в теле запроса! Те параметры, значения которых не будут переданы - будут стерты! 18 18 38 + 39 +(% style="color:#000000; font-size:16px" %)**Рекомендации** 40 + 41 +- Для запросов по API рекомендуется наделить пользователя ролью **Администратора партнера**, в противном случае при выполнении некоторых запросов у него не будет хватать прав (чаще всего сталкиваются с отсутствием прав при запросах сообщений от терминала за период). 42 + 19 19 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Авторизация**(%%) = 20 20 21 -== (% style="color:#000000; font-size:16px" %)**Авторизация**(%%) == 45 +(% class="box warningmessage" id="H41043244243E44043843743044643844F" %) 46 +((( 47 +(% style="color:#000000; font-size:16px" %)**Авторизация**(%%) 48 +(% style="color:#000000; font-size:16px" %)Адрес сервера всегда следует указывать именно тот, по которому происходит вход в СМТ (https:~/~/hosting.glonasssoft.ru/ , [[https:~~/~~/regions.glonasssoft.ru/>>https://regions.glonasssoft.ru/]] или другие) 49 +))) 22 22 23 23 (% class="box successmessage" %) 24 24 ((( ... ... @@ -44,12 +44,8 @@ 44 44 45 45 (% lang="en-US" %) 46 46 (% style="color:#000000" %){ 47 - 48 -(% lang="en-US" %) 49 -(% style="color:#000000" %) "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 50 - "User": "testuser" , ~/~/ имя пользователя 51 - 52 -(% lang="en-US" %) 75 + "AuthId": "(%%)93c6jg79-b88b-4a35-a2d0-70dg9jc2898b(% style="color:#000000" %)" , ~/~/ токен авторизации 76 + "User": "testuser" , ~/~/ имя пользователя(%%) 53 53 } 54 54 55 55 **Примечание: **Время жизни токена авторизации задается в настройках пользователя, там есть параметр длительность сессии. При каждом запросе токен пролонгируется. ... ... @@ -60,6 +60,9 @@ 60 60 |(% style="width:215px" %)(% style="color:#000000" %)AuthId|(% style="width:861px" %)Токен авторизации 61 61 |(% style="width:215px" %)(% style="color:#000000" %)User|(% style="width:861px" %)Логин пользователя 62 62 87 +(% class="wikigeneratedid" %) 88 +Также имеется возможность сквозной (/бесшовной) авторизации. Для этого к ссылке ( [[https:~~/~~/hosting.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]] / [[https:~~/~~/regions.glonasssoft.ru>>url:https://hosting.glonasssoft.ru/login?authId={AuthId}]]) добавьте токен авторизации - {AuthId}, чтобы попасть сразу в клиента ([[https:~~/~~/hosting.glonasssoft.ru/login?authId={AUTH_ID}>>https://hosting.glonasssoft.ru/login?authId={AUTH_ID}]]) 89 + 63 63 == (% style="color:#000000; font-size:16px" %)**Проверка авторизации**(%%) == 64 64 65 65 (% class="box infomessage" %) ... ... @@ -173,7 +173,6 @@ 173 173 { 174 174 "agentId": "",(% style="color:#000000" %) (%%) 175 175 "parentId": "", 176 - "parentName": "string", 177 177 "name": "string", 178 178 "fullName": "string", 179 179 "agentInfoType": 0, ... ... @@ -184,7 +184,6 @@ 184 184 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 185 185 |(% style="width:215px" %)(% style="color:#000000" %)agentId|(% style="width:861px" %)(% style="color:#000000" %)Идентификатор клиента 186 186 |(% style="width:215px" %)parentId|(% style="width:861px" %)Идентификатор клиента-родителя 187 -|(% style="width:215px" %)parentName|(% style="width:861px" %)Наименование (% style="color:#000000" %)клиента-родителя 188 188 |(% style="width:215px" %)name|(% style="width:861px" %)(% style="color:#000000" %)Наименование клиента 189 189 |(% style="width:215px" %)fullName|(% style="width:861px" %)(% style="color:#000000" %)Полное наименование клиента 190 190 |(% style="width:215px" %)agentInfoType|(% style="width:861px" %)(% style="color:#000000" %)Тип клиента (0- Клиент, 1 - Партнер, 2 - Группа, 3 - Административная группа, 4 - Тестовый клиент, 5 - Договор) ... ... @@ -228,7 +228,6 @@ 228 228 "bankKS": "string" ~/~/ корр. счёт 229 229 } 230 230 231 - 232 232 Ответ: 233 233 234 234 { ... ... @@ -356,7 +356,7 @@ 356 356 357 357 Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 358 358 359 -== (% style="color:#000000; font-size:16px" %)** Редактированиеклиента**(%%) ==383 +== (% style="color:#000000; font-size:16px" %)**Смена статуса клиента (активация/блокировка)**(%%) == 360 360 361 361 (% class="box warningmessage" %) 362 362 ((( ... ... @@ -422,7 +422,6 @@ 422 422 ], 423 423 "language": 0 ~/~/ Язык интерфейса пользователя 1 - Русский, 2 - Английский, 3 - Азербайджанский 424 424 } 425 - 426 426 { 427 427 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 428 428 "lastName": "string", ... ... @@ -436,12 +436,8 @@ 436 436 437 437 (% style="text-align:left" %) 438 438 (% style="color:#000000; font-weight:normal" %)Ответ: 439 - 440 -(% style="text-align:left" %) 441 -(% style="color:#000000; font-weight:normal" %){ 442 - 443 -(% style="text-align:left" %) 444 -(% style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 462 +{ 463 + "id": "" , ~/~/ ID пользователя 445 445 "lastName": "" , ~/~/ Фамилия , 446 446 "firstName": "" , ~/~/ Имя 447 447 "position": "" , ~/~/ Должность ... ... @@ -458,11 +458,9 @@ 458 458 "kind": "" , ~/~/ тип аутентификации 459 459 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 460 460 "groups": (% style="color:#000000" %)["", ""] (% style="color:#000000; font-weight:normal" %), ~/~/ роли пользователя, перечислены названия групп пользователя 480 +} 461 461 462 -(% style="text-align:left" %) 463 -(% style="color:#000000; font-weight:normal" %)} 464 464 465 - 466 466 == (% style="color:#000000; font-size:16px" %)**Получение списка пользователей**(%%) == 467 467 468 468 (% class="box infomessage" %) ... ... @@ -482,19 +482,16 @@ 482 482 483 483 (% style="color:#000000" %)Параметры в теле запроса (JSON): 484 484 485 -(% style="color:#000000" %){ 486 - 502 +(% style="color:#000000" %){(%%) 487 487 "parentId": "375a1f06-c384-43f8-8562-1c3d79a32303", ~/~/ GUID агента, для которого надо получить данные, null - для текущего агента 488 488 "userId": "11111111-c384-43f8-8562-1c3d79a32303", ~/~/ ID пользователя, по которому фильтруется, null - неважно 489 489 "login": "qqqqqq", ~/~/ Логин пользователя, по которому фильтруется, null - неважно 490 490 "email": "eee", ~/~/ Email пользователя, по которому фильтруется, null - неважно 491 - 492 492 (% style="color:#000000" %)} 493 493 494 494 (% style="color:#000000" %)Ответ: 495 495 496 496 (% style="color:#000000" %){ (%%) 497 - 498 498 "id": "" , ~/~/ идентификатор пользователя 499 499 "lastName": "" , ~/~/ фамилия 500 500 "firstName": "" , ~/~/ имя ... ... @@ -508,7 +508,6 @@ 508 508 "sessionDuration":"", ~/~/ длительность сессии в минутах 509 509 "status": "1", ~/~/ статус пользователя 510 510 "lastLogged": "", ~/~/ дата/время последней авторизации 511 - 512 512 (% style="color:#000000" %)} 513 513 514 514 == (% style="color:#000000; font-size:16px" %)**Получение информации о пользователе**(%%) == ... ... @@ -582,10 +582,8 @@ 582 582 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)Параметры в теле запроса (JSON): 583 583 584 584 (% lang="en-US" style="text-align:left" %) 585 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 586 - 587 -(% lang="en-US" style="text-align:left" %) 588 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ ID пользователя 598 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 599 + "id": "" , ~/~/ ID пользователя 589 589 "lastName": "" , ~/~/ фамилия 590 590 "firstName": "" , ~/~/ имя 591 591 "position": "" , ~/~/ должность ... ... @@ -607,9 +607,7 @@ 607 607 "target": "string" ~/~/ Адрес электронной почты двухэтапной аутентификации 608 608 }, 609 609 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 610 - "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 611 - 612 -(% lang="en-US" style="text-align:left" %) 621 + "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя(%%) 613 613 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)__}__ 614 614 615 615 (% lang="en-US" style="text-align:left" %) ... ... @@ -616,10 +616,8 @@ 616 616 (% lang="ru-RU" style="color:#000000; font-weight:normal" %)//Ответ~:// 617 617 618 618 (% lang="en-US" style="text-align:left" %) 619 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 620 - 621 -(% lang="en-US" style="text-align:left" %) 622 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %) "id": "" , ~/~/ идентификатор пользователя 628 +(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 629 + "id": "" , ~/~/ идентификатор пользователя 623 623 "lastName": "" , ~/~/ фамилия 624 624 "firstName": "" , ~/~/ имя 625 625 "position": "" , ~/~/ должность ... ... @@ -640,10 +640,8 @@ 640 640 "isDisabledMobile": false, ~/~/ Запретить использовать мобильное приложение, true - включен, false - отключен 641 641 "target": "" , ~/~/ в случае аутентификации по email - email-адрес 642 642 "groups": "" , ~/~/ группы пользователя, «user» названия группы пользователя 650 +} 643 643 644 -(% lang="en-US" style="text-align:left" %) 645 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 646 - 647 647 == (% style="color:#000000; font-size:16px" %)**Изменение статуса пользователя**(%%) == 648 648 649 649 (% class="box warningmessage" %) ... ... @@ -663,12 +663,10 @@ 663 663 664 664 (% style="color:#000000" %)Параметры в теле запроса (JSON): 665 665 666 -(% style="color:#000000" %){ 667 - 671 +(% style="color:#000000" %){(%%) 668 668 "status": "" , ~/~/ статус пользователя (0 - новый, 1 - подтверждён, 2 - активен, 3 - уточнить, 4 - блокирован) 669 669 "description": "" , ~/~/ описание 670 670 "data": "" , ~/~/ данные, связанные со сменой статуса 671 - 672 672 (% style="color:#000000" %)} 673 673 674 674 (% style="text-align:left" %) ... ... @@ -690,7 +690,7 @@ 690 690 (% style="color:#000000" %)В теле запроса перечисляете массив id пользователей (JSON): 691 691 692 692 [ 693 - 696 + "8ed730d3-c61c-4c3a-ae4f-f41d9e710abc", 694 694 "415f9ea3-8bc0-4e87-8d78-0852b0c0a4f1" 695 695 ] 696 696 ... ... @@ -996,7 +996,7 @@ 996 996 997 997 Ответ: В случае успеха **Success 200** 998 998 999 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства**(%%) = 1002 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Транспортные средства (объекты)**(%%) = 1000 1000 1001 1001 == (% style="color:#000000; font-size:16px" %)**Получение информации об объекте**(%%) == 1002 1002 ... ... @@ -1025,6 +1025,17 @@ 1025 1025 1026 1026 ((( 1027 1027 { 1031 + 1032 +((( 1033 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1034 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства 1035 +))) 1036 + 1037 +((( 1038 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink 1039 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1040 +))) 1041 + 1028 1028 "vehicleId": "", ~/~/ ID объекта 1029 1029 "name": "", ~/~/ Имя объекта 1030 1030 "imei": "", ~/~/ IMEI объекта ... ... @@ -1032,19 +1032,15 @@ 1032 1032 "deviceTypeName": "", ~/~/ Название типа устройства 1033 1033 "sim1": "", ~/~/ Номер SIM1 1034 1034 "sim2": "", ~/~/ Номер SIM2 1035 - 1036 1036 "parentId": "", ~/~/ ID клиента-родителя 1037 1037 "parentName": "", ~/~/ Наименование клиента-родителя 1038 1038 "modelId": "", ~/~/ ID модели объекта 1039 1039 "modelName": "", ~/~/ Имя модели объекта 1040 - 1041 1041 "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1042 1042 "unitName": "string", ~/~/ Наименование подразделения 1043 1043 "status": 0, ~/~/ Статус объекта 1044 - 1045 1045 "createdAt": "", ~/~/ Дата создания объекта 1046 1046 }, 1047 - 1048 1048 "customFields": [ ~/~/ Произвольные поля 1049 1049 { 1050 1050 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID поля ... ... @@ -1067,8 +1067,7 @@ 1067 1067 "consumptionPerHourSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1068 1068 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1069 1069 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1070 - "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1071 - 1080 + "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1072 1072 "mileageCalcMethod": 0, ~/~/ Метод расчета пробега, 0 - gps, 1 - датчик зажигания 1073 1073 "mileageCoeff": 0, ~/~/ коэффициент пробега 1074 1074 "locationByCellId": true, ~/~/ определение местоположения по данным LBS, true - активна, false - не активна ... ... @@ -1098,7 +1098,6 @@ 1098 1098 "retries": 0 ~/~/ Количество попыток 1099 1099 } 1100 1100 ], 1101 - 1102 1102 "sensors": [ ~/~/ Датчики 1103 1103 { 1104 1104 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика ... ... @@ -1125,6 +1125,7 @@ 1125 1125 ], 1126 1126 "showInTooltip": true, ~/~/ Отображать в подсказке 1127 1127 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1136 + "color": "string", ~/~/ Код цвета датчиков 1128 1128 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1129 1129 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1130 1130 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1139,31 +1139,19 @@ 1139 1139 }, 1140 1140 1141 1141 ~/~/ Характерные для произвольного: 1142 - 1143 1143 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1144 - 1145 1145 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1146 - 1147 1147 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1148 - 1149 1149 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1150 - 1151 1151 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1152 - 1153 1153 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1154 - 1155 1155 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1156 - 1157 1157 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1158 - 1159 1159 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1160 - 1161 1161 ~/~/ "ValueOn": "Вкл.", 1162 - 1163 1163 ~/~/ "ValueOff": "Выкл." 1164 1164 "summaryMaxValue": 0 ~/~/ Макс. значение 1165 1165 } 1166 - 1167 1167 "drivers": [ ~/~/ Водители 1168 1168 { 1169 1169 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1172,7 +1172,6 @@ 1172 1172 "isDefault": true ~/~/ По умолчанию 1173 1173 } 1174 1174 ], 1175 - 1176 1176 "inspectionTasks": [ ~/~/ Задания на тех. обслуживание 1177 1177 { 1178 1178 "id": "", ~/~/ ID задания ... ... @@ -1189,19 +1189,27 @@ 1189 1189 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1190 1190 } 1191 1191 ], 1192 - 1193 - "statusHistory": [ ~/~/ История статусов 1188 +"statusHistory": [ ~/~/ История статусов 1194 1194 { 1195 1195 "status": 0, 1196 1196 "date": "2023-05-22T09:57:39.562Z", 1197 1197 "description": "string", 1198 1198 "additionalInfo": "string" 1199 - } 1200 - ] 1201 1201 1195 +((( 1202 1202 } 1197 + ], 1198 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1199 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1203 1203 ))) 1204 1204 1202 +((( 1203 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1204 +} 1205 + 1206 +))) 1207 +))) 1208 + 1205 1205 (% style="text-align:left" %) 1206 1206 Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже: 1207 1207 ... ... @@ -1208,6 +1208,75 @@ 1208 1208 (% style="text-align:left" %) 1209 1209 0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется». 1210 1210 1215 + 1216 +== **Отправить команду на терминал** == 1217 + 1218 +(% class="box successmessage" %) 1219 +((( 1220 +(% lang="en-US" %)**POST **(%%)**/api/v3/Vehicles/cmd/create** 1221 +))) 1222 + 1223 +Команда для отправки на тс. 1224 + 1225 +{ 1226 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId) 1227 +"command": "", ~/~/ Текст отправляемой команды 1228 +"retries": "", ~/~/ Количество попыток отправки на терминал 1229 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 1230 +} 1231 + 1232 +В ответ получаем cmdid 1233 + 1234 + 1235 +== **Получить ответ на отправленную на ТС команду** == 1236 + 1237 +(% class="box infomessage" %) 1238 +((( 1239 +(% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer** 1240 +))) 1241 + 1242 +Идентификатор команды: cmdId 1243 + 1244 +Запрос от терминала на ответ команды 1245 + 1246 +Пример ответ от терминала: 1247 + 1248 +ID= "" ~/~/ идентификатор объекта 1249 +Soft="" ~/~/ версия софта 1250 +GPS=4 ~/~/ тип трекера 1251 +Time=11:05:43 28.06.24 ~/~/ время запроса 1252 +Lat=45.056221 ~/~/ широта 1253 +Lon=39.035938 ~/~/ долгота 1254 +Speed=0.0 ~/~/ скорость 1255 +Course=181.4 ~/~/направление 1256 + 1257 +((( 1258 +== **Список отправленных объекту команд с ответами** == 1259 + 1260 +(% class="box infomessage" %) 1261 +((( 1262 +(% lang="en-US" %)**GET**(%%)**/api/v3/Vehicles/cmd/{vehicleId}/history** 1263 +))) 1264 + 1265 +Идентификатор ТС: vehicleId 1266 + 1267 +В ответе приходит список команд с их ID, временем отправки, количестве попыток отправки и ответами терминала. 1268 + 1269 +Пример ответа терминала 1270 + 1271 +[ 1272 +{ 1273 +"id": "", ~/~/ идентификатор пользователя 1274 +"commandText": "", ~/~/Текст команды. 1275 +"templateId": "", ~/~/Идентификатор шаблона 1276 +"updated": "", ~/~/ Время отправки 1277 +"tryCount": 0, ~/~/ Количество попыток отправки команды 1278 +"answer": "", ~/~/ Ответ терминала. 1279 +"status": "" ~/~/ Статус отправки 1280 +} 1281 +] 1282 +))) 1283 + 1211 1211 == (% style="color:#000000; font-size:16px" %)**Добавление объекта**(%%) == 1212 1212 1213 1213 (% class="box successmessage" %) ... ... @@ -1227,6 +1227,11 @@ 1227 1227 1228 1228 (% style="color:#000000" %){ 1229 1229 1303 + 1304 +((( 1305 + "vehicleId": 0, ~/~/ ID ТС 1306 +))) 1307 + 1230 1230 "parentId": "" , ~/~/ ID клиента 1231 1231 "name": "" , ~/~/ имя ТС 1232 1232 "imei": "" , ~/~/ IMEI ... ... @@ -1247,7 +1247,6 @@ 1247 1247 "consumptionPerHourSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1248 1248 "consumptionIdleSeasonalBegin": "" , ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1249 1249 "consumptionIdleSeasonalEnd": "" , ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1250 - 1251 1251 "mileageCalcMethod": 0, 1252 1252 "mileageCoeff": 0, 1253 1253 "locationByCellId": true, ... ... @@ -1280,7 +1280,6 @@ 1280 1280 "lastInspectionDate": "" , ~/~/ Дата последнего ТО (null - не указано) 1281 1281 "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1282 1282 } 1283 - 1284 1284 "drivers": [ ~/~/ Водители 1285 1285 { 1286 1286 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ... ... @@ -1295,8 +1295,7 @@ 1295 1295 "retries": 0 1296 1296 } 1297 1297 ], 1298 - 1299 - "sensors": [ ~/~/ Датчики 1374 +"sensors": [ ~/~/ Датчики 1300 1300 { 1301 1301 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1302 1302 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1322,6 +1322,7 @@ 1322 1322 ], 1323 1323 "showInTooltip": true, ~/~/ Отображать в подсказке 1324 1324 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1400 + "color": "string", ~/~/ код цвета датчиков 1325 1325 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1326 1326 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1327 1327 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1334,103 +1334,293 @@ 1334 1334 "additionalProp2": "string", 1335 1335 "additionalProp3": "string" 1336 1336 }, 1337 - 1338 1338 ~/~/ Характерные для произвольного: 1339 - 1340 1340 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1341 - 1342 1342 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1343 - 1344 1344 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1345 - 1346 1346 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1347 - 1348 1348 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1349 - 1350 1350 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1351 - 1352 1352 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1353 - 1354 1354 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1355 - 1356 1356 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1357 - 1358 1358 ~/~/ "ValueOn": "Вкл.", 1359 - 1360 1360 ~/~/ "ValueOff": "Выкл." 1361 - "summaryMaxValue": 0 ~/~/ Макс. значение 1425 + "summaryMaxValue": 0 ~/~/ Определяет максимальное значение датчика в режиме накопления. 1426 + 1427 +((( 1428 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1429 + { 1430 + "from": 0, ~/~/ С какого значения 1431 + "color": "string", ~/~/ Каким цветом 1432 + "text": "string" ~/~/ Текст подписи к этому интервалу 1433 + } 1434 + ] 1362 1362 } 1363 1363 ], 1437 +))) 1438 + 1439 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1440 + 1441 + 1364 1364 "customFields": [ ~/~/ Произвольные поля 1365 1365 { 1366 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1367 - "name": "string", 1368 - "value": "string", 1369 - "forClient": true, 1370 - "forTooltip": true, 1371 - "forReport": true 1372 - } 1373 - ] 1444 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1445 + "name": "string", ~/~/ Наименование произвольного поля 1446 + "value": "string", ~/~/ Значение произвольного поля 1447 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1448 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1449 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1450 + 1451 +((( 1452 + } 1453 + ], 1454 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 1455 +))) 1456 + 1457 +((( 1458 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1374 1374 } 1460 +))) 1375 1375 1462 + 1376 1376 (% style="color:#000000" %)Ответ: 1377 1377 1378 -(% style="color:#000000" %){ 1379 1379 1380 - "vehicleId": "", ~/~/ID ТС 1381 - "parentId": "", ~/~/Guid владельца ТС 1382 - "name": "", ~/~/Имя объекта 1383 - "imei": "", ~/~/IMEI 1384 - "deviceTypeId": "", ~/~/ID типа устройства 1385 - "modelId": "", ~/~/ID модели 1386 - "unitId": "", ~/~/ID подразделения 1387 - "sim1": "", ~/~/SIM1 1388 - "sim2": "", ~/~/SIM2 1389 - "consumptionPer100Km": "", ~/~/Расход топлива на 100 км 1390 - "consumptionIdle": "", ~/~/Расход топлива на холостом ходу 1391 - "counters": { ~/~/Счётчики 1392 - "mileageEnabled": true, 1393 - "motohoursEnabled": true, 1394 - "mileage": "", 1395 - "motohours": 345.0 1396 - }, 1397 - "cmsv6Parameters": { ~/~/Параметры CmsV6 1398 - "id": null, 1399 - "enabled": true, ~/~/флаг включения 1400 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1401 - "login": "", ~/~/ имя учетной записи 1402 - "password": "" ~/~/ пароль учетной записи 1403 - }, 1404 - "inspectionTasks": { ~/~/ задания на ТО 1405 - "id": "", ~/~/ ID задачи 1406 - "enabled": false, ~/~/ Признак включения 1407 - "name": "", ~/~/ Имя задания 1408 - "description": "", ~/~/ Описание задания 1409 - "mileageCondition": "", ~/~/ Условие по пробегу 1410 - "lastMileage": "", ~/~/ Пробег (в метрах) 1411 - "motohoursCondition": "", ~/~/ Условие по моточасам 1412 - "lastMotohours": "", ~/~/ Моточасы 1413 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1414 - "kind": "", ~/~/ Вид периодичности по времени 1415 - "maxQuantity": "" ~/~/ Сколько раз выполнить задание (null - однократно) 1466 +((( 1467 +((( 1468 +((( 1469 +{ 1470 + "vehicleId": 0, ~/~/ ID ТС 1471 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 1472 + "name": "string", ~/~/ Имя объекта 1473 + "imei": "string", ~/~/ IMEI 1474 + "deviceTypeId": 0, ~/~/ ID типа устройства 1475 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 1476 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 1477 + "sim1": "string", ~/~/ SIM1 1478 + "sim2": "string", ~/~/ SIM2 1479 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 1480 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 1481 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 1482 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 1483 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 1484 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 1485 + "consumptionPer100KmSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 1486 + "consumptionPer100KmSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 1487 + "consumptionPerHourSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 1488 + "consumptionPerHourSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 1489 + "consumptionIdleSeasonalBegin": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 1490 + "consumptionIdleSeasonalEnd": "2024-10-30T08:11:35.622Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 1491 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега (0 - ByGps, 1 - ByMileageSensor) 1492 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 1493 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 1494 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 1495 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 1496 + "counters": { ~/~/ Dto для состояний счётчиков 1497 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 1498 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 1499 + "mileage": 0, ~/~/ Пробег 1500 + "motohours": 0 ~/~/ Моточасы 1501 + }, 1502 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 1503 + "id": "string", ~/~/ CMSV6 Идентификатор 1504 + "enabled": true, ~/~/ Признак включения 1505 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 1506 + "login": "string", ~/~/ CMSV6 имя учетной записи 1507 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 1508 + }, 1509 + "inspectionTasks": [ ~/~/ Dto для описания задачи на ТО 1510 + { 1511 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 1512 + "enabled": true, ~/~/ Признак включения 1513 + "name": "string", ~/~/ Имя задания 1514 + "description": "string", ~/~/ Описание задания 1515 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 1516 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 1517 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 1518 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 1519 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 1520 + "kind": 0, ~/~/ Определяет вид периодичности ТО.( 0 - Дни, 1 - Месяцы , 2 - Годы) 1521 + "lastInspectionDate": "2024-10-30T08:11:35.622Z", ~/~/ Дата последнего ТО 1522 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 1416 1416 } 1524 + ], 1525 + "drivers": [ ~/~/ Список водителей. Определяет класс назначения водителя на объект. 1526 + { 1527 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1528 + "inputNumber": 0, ~/~/ № входа. 1529 + "createTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени создания назначения. 1530 + "comment": "string", ~/~/ Комментарий 1531 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1532 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1533 + "beginTime": "2024-10-30T08:11:35.622Z", ~/~/ Момент времени начала назначения. 1534 + "endTime": "2024-10-30T08:11:35.622Z" ~/~/ Момент времени окончания назначения. 1535 + } 1536 + ], 1537 + "commandTemplates": [ ~/~/ Список шаблонов команд 1538 + { 1539 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 1540 + "name": "string", ~/~/ Название шаблона команд 1541 + "command": "string", ~/~/ Команда на выполнение 1542 + "retries": 0 ~/~/ Лимит попыток отправки 1543 + } 1544 + ], 1545 + "sensors": [ ~/~/ Список датчиков 1546 + { 1547 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1548 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 1549 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 1550 + "name": "string", ~/~/ Имя датчика 1551 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 1552 + "inputNumber": 0, ~/~/ Номер входа 1553 + "pseudonym": "string", ~/~/ Псевдоним 1554 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 1555 + "isInverted": true, ~/~/ Признак инверсии 1556 + "disabled": true, ~/~/ Датчик не участвует в обработке 1557 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 1558 + "gradesTables": [ ~/~/ Тарировка 1559 + { 1560 + "grades": [ ~/~/ Таблицы тарировки 1561 + { 1562 + "input": 0, ~/~/ Вход 1563 + "output": 0 ~/~/ Выход 1564 + } 1565 + ], 1566 + "relevanceTime": "2024-10-30T08:11:35.622Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1567 + } 1568 + ], 1569 + "showInTooltip": true, ~/~/ Отображение в подсказке 1570 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1571 + "color": "string", ~/~/ код цвета датчиков 1572 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1573 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 1574 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 1575 + "expr": "string", ~/~/ Выражение 1576 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 1577 + "string" 1578 + ], 1579 + "customParams": { 1580 + "additionalProp1": "string", 1581 + "additionalProp2": "string", 1582 + "additionalProp3": "string" 1583 + }, 1584 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 1585 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1586 + { 1587 + "from": 0, ~/~/ С какого значения 1588 + "color": "string", ~/~/ Каким цветом 1589 +))) 1417 1417 1418 -(% style="text-align:left" %) 1419 -(% style="color:#000000" %)} 1591 +((( 1592 + "text": "string" ~/~/ Текст подписи к этому интервалу 1593 + } 1594 + ] 1595 + } 1596 + ], 1597 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 1598 + "customFields": [ ~/~/ Список произвольных полей 1599 + { 1600 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1601 + "name": "string", ~/~/ Наименование произвольного поля 1602 + "value": "string", ~/~/ Значение произвольного поля 1603 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 1604 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 1605 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1606 + } 1607 + ], 1608 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 1609 +} 1610 +))) 1611 +))) 1612 +))) 1420 1420 1614 + 1421 1421 **Валидация:** 1422 1422 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1423 1423 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; 1424 1424 - при задании сезонной нормы обязательны соответствующие даты начала/окончания. 1425 1425 1426 -== (% style="color:#000000; font-size:16px" %)**Получение параметров объектов**(%%) == 1427 1427 1621 +== **Импортировать историю ТС (Асинхронный запрос)** == 1622 + 1623 +(% class="box successmessage" %) 1624 +((( 1625 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} ** 1626 +))) 1627 + 1628 +Метод запроса: **POST** 1629 + 1630 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} ** 1631 + 1632 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства 1633 + 1634 + 1635 +Ответ: 1636 + 1637 +{ 1638 + 1639 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1640 + 1641 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса 1642 + 1643 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest) 1644 + 1645 + "Message": "string", ~/~/ Информация о выполнении запроса 1646 + 1647 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None) 1648 + 1649 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1650 + 1651 + "Data": "string" ~/~/ Данные 1652 + 1653 +} 1654 + 1655 + 1656 +== **Возвращает статус асинхронного запроса импорта истории ТС** == 1657 + 1428 1428 (% class="box infomessage" %) 1429 1429 ((( 1660 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}** 1661 +))) 1662 + 1663 +Метод запроса: **GET** 1664 + 1665 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}** 1666 + 1667 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса 1668 + 1669 + 1670 +Ответ: 1671 + 1672 +{ 1673 + 1674 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса 1675 + 1676 + "Status": 0, ~/~/ Перечисление состояний выполения запроса 1677 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest 1678 + 1679 + "Message": "string", ~/~/ Информация о выполнении запроса 1680 + 1681 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса 1682 + 1683 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None 1684 + 1685 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress 1686 + 1687 + "Data": "string" ~/~/ Данные 1688 + 1689 +} 1690 + 1691 + 1692 +== (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) == 1693 + 1694 +(% class="box infomessage" %) 1695 +((( 1430 1430 (% lang="en-US" %)**POST /api/v3/vehicles/find** 1431 1431 ))) 1432 1432 1433 -(% style="color:#000000" %)Метод позволяет получить основные параметр ы объектов: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель).1699 +(% style="color:#000000" %)Метод позволяет получить список доступных объектов мониторинга (транспортных средств) с их основными параметрами: наименование, IMEI, тип устройства, модель объекта, подразделение, номера телефонов и идентификатор клиента, к которому прикреплен объект (клиент-родитель). 1434 1434 1435 1435 (% style="color:#000000" %)Метод возвращает информацию об объектах с учетом настроек авторизованного пользователя, указанного в запросе: 1436 1436 ... ... @@ -1464,9 +1464,12 @@ 1464 1464 "imei": null, ~/~/ "710179307", ~/~/ IMEI (string, опционально) 1465 1465 "sim": null, ~/~/ "938112", ~/~/ Номер телефона (string, опционально) 1466 1466 "deviceTypeId": null, ~/~/ 5, ID типа устройства (short, опционально) 1467 - "parentId": null, ~/~/ ID клиента (Guid, опционально) 1468 - "unitId": null, ~/~/ "b33548c3-73c3-40e4-8b78-81470ae744ed", ID подразделения (Guid, опционально) 1469 - "customFields": null ~/~/ значение любого из произвольных полей ТС 1733 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ ID подразделения (опционально) 1734 + "unitName": "string", ~/~/ Название подразделения (опционально) 1735 + "customFields": "string", ~/~/ Поиск по содержимому произвольных полей ТС (опционально) 1736 + "vehicleGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID группы ТС (опционально) 1737 + "vehicleGroupName": "string", ~/~/ Название группы ТС (опционально) 1738 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор агента, для которого надо получить данные 1470 1470 } 1471 1471 1472 1472 (% style="color:#000000" %)Фильтрация осуществляется по точному совпадению значений параметров «__**vehicleId**__», «__**deviceTypeId**__», «__**parentId**__», «__**unitId**__», и по частичному - «__**name**__», «__**imei**__», «__**sim**__». Фильтрация по значению параметра «__**sim**__» осуществляется при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. ... ... @@ -1473,8 +1473,14 @@ 1473 1473 1474 1474 (% style="color:#000000" %)Ответ: 1475 1475 1476 -(% style="color:#000000" %){ 1745 +(% style="color:#000000" %)[ 1746 +{ 1477 1477 1748 +((( 1749 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC 1750 +))) 1751 + 1752 +((( 1478 1478 (% style="color:#000000" %) "vehicleId": "" ~/~/ идентификатор объекта 1479 1479 "name": "" ~/~/ наименование объекта 1480 1480 "imei": "" ~/~/ IMEI объекта ... ... @@ -1500,9 +1500,21 @@ 1500 1500 "forClient": true, ~/~/ право на отображение у клиента 1501 1501 "forTooltip": false, ~/~/ право на отображение в подсказке 1502 1502 "forReport": false ~/~/ право на отображение в отчетах 1503 - }(%%) 1504 -(% style="color:#000000" %)} 1778 +))) 1505 1505 1780 +((( 1781 + } 1782 + ], 1783 + "vehicleGroups": [ ~/~/ Группы ТС 1784 + { 1785 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 1786 + "name": "string" ~/~/ Наименование группы ТС 1787 + } 1788 + ] 1789 + } 1790 +] 1791 +))) 1792 + 1506 1506 (% style="color:#000000" %) Параметры «__**sim1**__» и «__**sim2**__» содержатся в ответе при наличии у авторизованного пользователя права **«__Просмотр номеров телефонов объектов__»**. Параметр «__**status**__» содержится в ответе при наличии у авторизованного пользователя права **«__Просмотр статуса объекта__»**. 1507 1507 1508 1508 == (% style="color:#000000; font-size:16px" %)**Изменение статуса объекта**(%%) == ... ... @@ -1534,13 +1534,11 @@ 1534 1534 "data": "", ~/~/ Данные 1535 1535 "overwrite": false, ~/~/ Флаг перезаписи 1536 1536 "stage": "", ~/~/ Состояние, может быть null 1537 - 1538 1538 (% style="color:#000000" %)} 1539 1539 1540 1540 (% style="color:#000000" %)Ответ: 1541 1541 1542 -(% style="color:#000000" %){ 1543 - 1828 +(% style="color:#000000" %){(%%) 1544 1544 "status": "", ~/~/ значение статуса 1545 1545 "date": "", ~/~/ Дата смены статуса 1546 1546 "description": "", ~/~/ Описание ... ... @@ -1547,10 +1547,10 @@ 1547 1547 "data": "", ~/~/ Данные 1548 1548 "overwrite": false, ~/~/ Флаг перезаписи 1549 1549 "stage": "", ~/~/ Состояние 1550 - 1551 -(% style="text-align:left" %) 1552 1552 (% style="color:#000000" %) } 1553 1553 1837 +== == 1838 + 1554 1554 == (% style="color:#000000; font-size:16px" %)**Редактирование объекта**(%%) == 1555 1555 1556 1556 (% class="box warningmessage" %) ... ... @@ -1626,9 +1626,19 @@ 1626 1626 1627 1627 "drivers": [ ~/~/ Водители 1628 1628 { 1629 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 1630 - "isDefault": true 1631 - } 1914 + 1915 +((( 1916 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 1917 + "inputNumber": 0, ~/~/ № входа. 1918 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения. 1919 + "comment": "string", ~/~/ Комментарий. 1920 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 1921 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 1922 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения. 1923 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения. 1924 +))) 1925 + 1926 + } 1632 1632 ], 1633 1633 "commandTemplates": [ ~/~/ Шаблон команды 1634 1634 { ... ... @@ -1638,8 +1638,7 @@ 1638 1638 "retries": 0 1639 1639 } 1640 1640 ], 1641 - 1642 - "sensors": [ ~/~/ Датчики 1936 +"sensors": [ ~/~/ Датчики 1643 1643 { 1644 1644 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 1645 1645 "kind": 0, ~/~/ Тип, Simple - простой, Composite - виртуальный ... ... @@ -1665,6 +1665,11 @@ 1665 1665 ], 1666 1666 "showInTooltip": true, ~/~/ Отображать в подсказке 1667 1667 "showLastValid": true, ~/~/ Отображать последнее валидное значение 1962 + 1963 +((( 1964 + "color": "string",** ~/~/ **Цвет датчика 1965 +))) 1966 + 1668 1668 "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 1669 1669 "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания 1670 1670 "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION ... ... @@ -1677,95 +1677,225 @@ 1677 1677 "additionalProp2": "string", 1678 1678 "additionalProp3": "string" 1679 1679 }, 1680 - 1681 1681 ~/~/ Характерные для произвольного: 1682 - 1683 1683 ~/~/ "EventsEnabled": "off", ~/~/ Фиксировать события работы: on, off 1684 - 1685 1685 ~/~/ "EventsTemplateName": "Работа Произвольный", ~/~/ Наименование события работы 1686 - 1687 1687 ~/~/ "EventsCountEnabled": "off", ~/~/ Фиксировать количество срабатываний: on, off 1688 - 1689 1689 ~/~/ "EventsCountTemplateName": "Количество срабатываний Произвольный", ~/~/Наименование ~/~/события количества срабатываний 1690 - 1691 1691 ~/~/ "MapDisplayEnabled": "off", ~/~/ Отображать на карте: on, off 1692 - 1693 1693 ~/~/ "ChartDisplayEnabled": "off", ~/~/ Отображать на графике объекта: on, off 1694 - 1695 1695 ~/~/ "PayloadChartDisplayEnabled": "off", ~/~/ Отображать на графике полезной нагрузки: on, off 1696 - 1697 1697 ~/~/ "DrawType": ~/~/ тип отрисовки line, bar (Линия, Область) 1698 - 1699 1699 ~/~/ Характерные для таблицы тарировки Вкл./Выкл.: 1700 - 1701 1701 ~/~/ "ValueOn": "Вкл.", 1702 - 1703 1703 ~/~/ "ValueOff": "Выкл." 1704 1704 "summaryMaxValue": 0 ~/~/ Макс. значение 1992 + 1993 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 1994 + { 1995 + "from": 0, ~/~/ С какого значения 1996 + "color": "string", ~/~/ Каким цветом 1997 + "text": "string" ~/~/ Текст подписи к этому интервалу 1998 + } 1999 + ] 1705 1705 } 1706 1706 ], 2002 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2003 + 1707 1707 "customFields": [ ~/~/ Произвольные поля 1708 - { 1709 - 1710 - "name": "string", 1711 - "value": "string", 1712 - "forClient": true, 1713 - "forTooltip": true, 1714 - "forReport": true 2005 + { 2006 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2007 + "name": "string", ~/~/ Наименование произвольного поля 2008 + "value": "string", ~/~/ Значение произвольного поля 2009 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2010 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2011 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 1715 1715 } 1716 - ] 2013 + 2014 +((( 2015 + ], 2016 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов 2017 +))) 2018 + 1717 1717 } 1718 1718 2021 + 1719 1719 (% style="color:#000000" %)Ответ: 1720 1720 1721 -(% lang="en-US" style="text-align:left" %) 1722 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %){ 2024 +((( 2025 +{ 2026 + "vehicleId": 0, ~/~/ ID ТС 2027 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid владельца ТС 2028 + "name": "string", ~/~/ Имя объекта 2029 + "imei": "string", ~/~/ IMEI 2030 + "deviceTypeId": 0, ~/~/ ID типа устройства 2031 + "modelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID модели 2032 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID подразделения 2033 + "sim1": "string", ~/~/ SIM1 2034 + "sim2": "string", ~/~/ SIM2 2035 + "consumptionPer100Km": 0, ~/~/ Расход топлива на 100 км 2036 + "consumptionPerHour": 0, ~/~/ Расход топлива на моточас 2037 + "consumptionIdle": 0, ~/~/ Расход топлива на холостом ходу 2038 + "consumptionPer100KmSeasonal": 0, ~/~/ Сезонный расход топлива на 100 км 2039 + "consumptionPerHourSeasonal": 0, ~/~/ Сезонный расход топлива на моточас 2040 + "consumptionIdleSeasonal": 0, ~/~/ Сезонный расход топлива на холостом ходу 2041 + "consumptionPer100KmSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на 100 км 2042 + "consumptionPer100KmSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на 100 км 2043 + "consumptionPerHourSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на моточас 2044 + "consumptionPerHourSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на моточас 2045 + "consumptionIdleSeasonalBegin": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц начала работы сезонной нормы расхода на х/х 2046 + "consumptionIdleSeasonalEnd": "2024-10-30T10:31:17.196Z", ~/~/ День/месяц окончания работы сезонной нормы расхода на х/х 2047 + "mileageCalcMethod": 0, ~/~/ Вид расчёта пробега. 0 - ByGps, 1 - ByMileageSensor 2048 + "mileageCoeff": 0, ~/~/ Коэффициент пробега при расчёте пробега по GPS (по умолчанию - 1) 2049 + "locationByCellId": true, ~/~/ Вычислять ли положение по базовым станциям, если координаты по GPS невалидны? 2050 + "dottedLineTrackWhenNoCoords": true, ~/~/ Обозначать пунктиром трек при отсутствии координат. 2051 + "showLineTrackWhenNoCoords": true, ~/~/ Обозначать трек при отсутствии координат. 2052 + "counters": { ~/~/ состояний счётчиков 2053 + "mileageEnabled": true, ~/~/ Флаг включения счётчика "Пробег" 2054 + "motohoursEnabled": true, ~/~/ Флаг включения счётчика "Моточасы" 2055 + "mileage": 0, ~/~/ Пробег 2056 + "motohours": 0 ~/~/ Моточасы 2057 + }, 2058 + "cmsv6Parameters": { ~/~/ Dto для CMSv6 2059 + "id": "string", ~/~/ CMSV6 Идентификатор 2060 + "enabled": true, ~/~/ Признак включения 2061 + "host": "string", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6. 2062 +))) 1723 1723 1724 -(% lang="en-US" style="text-align:left" %) 1725 - "vehicleId": "", ~/~/ ID ТС 1726 - "parentId": "", ~/~/ ID клиента 1727 - "name": "", ~/~/ имя ТС 1728 - "imei": "", ~/~/ IMEI 1729 - "deviceTypeId": "", ~/~/ типа устройства 1730 - "modelId": "", ~/~/ ID модели 1731 - "unitId": "", ~/~/ ID подразделения 1732 - "sim1": "", ~/~/ SIM 1 1733 - "sim2": "", ~/~/ SIM2 1734 - "consumptionPer100Km": "", ~/~/ Расход топлива на 100 км 1735 - "consumptionIdle": "", ~/~/ Расход топлива на холостом ходу 1736 - "counters": 1737 - { 1738 - "mileageEnabled": true, ~/~/ флаг активности счётчика «пробег» 1739 - "motohoursEnabled": true, ~/~/ флаг активности счётчика «моточасы» 1740 - "mileage": "", ~/~/ пробег 1741 - "motohours": "", ~/~/ моточасы 1742 - } 1743 - "cmsv6Parameters": ~/~/ параметры CMSv6 2064 + 2065 +((( 2066 +~/~/ Порт также можно указать. В случае использования безопасного соединения необходимо указать протокол. 2067 + "login": "string", ~/~/ CMSV6 имя учетной записи 2068 + "password": "string" ~/~/ CMSV6 — пароль учетной записи 2069 + }, 2070 + "inspectionTasks": [ ~/~/ Задания на ТО 2071 + { 2072 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID задачи 2073 + "enabled": true, ~/~/ Признак включения 2074 + "name": "string", ~/~/ Имя задания 2075 + "description": "string", ~/~/ Описание задания 2076 + "mileageCondition": 0, ~/~/ Условие по пробегу (в метрах) 2077 + "lastMileage": 0, ~/~/ Пробег (в метрах) на момент последнего ТО 2078 + "motohoursCondition": 0, ~/~/ Условие по моточасам (в секундах) 2079 + "lastMotohours": 0, ~/~/ Моточасы (в секундах) на момент последнего ТО 2080 + "periodicCondition": 0, ~/~/ Условие периодичности по времени 2081 + "kind": 0, ~/~/ Определяет вид периодичности ТО. 0 - Дни, 1 - Месяца, 2 - Годы 2082 + "lastInspectionDate": "2024-10-30T10:31:17.196Z", ~/~/ Дата последнего ТО 2083 + "maxQuantity": 0 ~/~/ Условие по количеству записей для деактивации 2084 + } 2085 + ], 2086 + "drivers": [ ~/~/ Список водителей 2087 + { 2088 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор объекта. 2089 + "inputNumber": 0, ~/~/ № входа. 2090 + "createTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени создания назначения. 2091 + "comment": "string", ~/~/ Комментарий. 2092 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения. 2093 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя. 2094 + "beginTime": "2024-10-30T10:31:17.196Z", ~/~/ Момент времени начала назначения. 2095 + "endTime": "2024-10-30T10:31:17.196Z" ~/~/ Момент времени окончания назначения. 2096 + } 2097 + ], 2098 + "commandTemplates": [ ~/~/ Список шаблонов команд 2099 + { 2100 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID шаблона 2101 + "name": "string", ~/~/ Название шаблона команд 2102 + "command": "string", ~/~/ Команда на выполнение 2103 + "retries": 0 ~/~/ Лимит попыток отправки 2104 + } 2105 + ], 2106 + "sensors": [ ~/~/ Список датчиков 2107 + { 2108 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID датчика 2109 + "kind": 0, ~/~/ Определяет виды датчиков. 0 - Simple, 1 - Composite 2110 + "type": 0, ~/~/ Определяет типы датчиков. 0 - None, 1 - FuelLvl, 2 - PowerLevel, 3 - Consumption, 4 - Ignition, 2111 +))) 2112 + 2113 +((( 2114 +~/~/ 5 - Crane, 6 - Greider, 8 - Power, 11 - Arrow, 14 - Otval, 15 - Sand, 17 - MixerLand, 18 - MixerMove, 20 - Temperature, 2115 +))) 2116 + 2117 +((( 2118 +~/~/ 21 - Warning, 22 - Metla, 23 - Kosilka, 24 - DriverRFID, 25 - ReFueller, 27 - GrainLvl, 28 - EngineRPM, 29 - BodyUp, 2119 +))) 2120 + 2121 +((( 2122 +~/~/ 31 - EngineTemperature, 32 - TrailerRFID, 33 - Tank, 34 - Unloading, 35 - Custom, 36 - GNSS, 37 - WeighingTerminal, 2123 +))) 2124 + 2125 +((( 2126 +~/~/ 38 - RelativeMotohours, 39 - MileageSensor, 40 - Motohours, 41 - BunkerLowLevel, 42 - BunkerHighLevel, 2127 +))) 2128 + 2129 +((( 2130 +~/~/ 43 - AppliedKg, 44 - TreatedHa, 45 - RateKgHa, 46 - FertilizerLevel, 47 - FactOfWork, 48 - ReapingAggregate, 49 - AverageRateKgHa, 50 - Speed 2131 + "name": "string", ~/~/ Имя датчика 2132 + "inputType": 0, ~/~/ Тип входа, на который подключается определенный тип датчика. 0 - Digital, 1 - Analog, 2 - Impulse, 2133 +))) 2134 + 2135 +((( 2136 +~/~/ 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Diagnosis, 7 - Wire, 8 - ImpulseFrequency, 9 - BLE, 255 - Virtual 2137 + "inputNumber": 0, ~/~/ Номер входа 2138 + "pseudonym": "string", ~/~/ Псевдоним 2139 + "medianDegree": 0, ~/~/ Степень медианной фильтрации 2140 + "isInverted": true, ~/~/ Признак инверсии 2141 + "disabled": true, ~/~/ Датчик не участвует в обработке 2142 + "gradeType": 0, ~/~/ Способ тарировки показаний датчика. 0 - Default, 1 - Digital, 2 - GradeTable, 3 - CounterSummary, 4 - CounterDiffs 2143 + "gradesTables": [ ~/~/ Тарировка 1744 1744 { 1745 - "id": ~/~/ идентификатор 1746 - "enabled": true, ~/~/ флаг включения 1747 - "host": "", ~/~/ IP-адрес или доменное имя из URL веб-сайта CMSV6 1748 - "login": "", ~/~/ имя учетной записи 1749 - "password": "", ~/~/ пароль учетной записи 1750 - } 1751 - "inspectionTasks": ~/~/ задания на ТО 1752 - { 1753 - "id": "", ~/~/ ID задания 1754 - "enabled": false, ~/~/ Признак включения 1755 - "name": "", ~/~/ Имя задания 1756 - "description": "", ~/~/ Описание задания 1757 - "mileageCondition": "", ~/~/ Условие по пробегу 1758 - "lastMileage": "", ~/~/ Пробег (в метрах) на момент последнего ТО 1759 - "motohoursCondition": "", ~/~/ Условие по моточасам 1760 - "lastMotohours": "", ~/~/ Моточасы 1761 - "periodicCondition": "", ~/~/ Условие периодичности по времени 1762 - "kind": "", ~/~/ Вид периодичности по времени 1763 - "maxQuantity": "", ~/~/ Сколько раз выполнить задание 2145 + "grades": [ ~/~/ Таблицы тарировки 2146 + { 2147 + "input": 0, ~/~/ Вход 2148 + "output": 0 ~/~/ Выход 2149 + } 2150 + ], 2151 + "relevanceTime": "2024-10-30T10:31:17.196Z" ~/~/ Время, с которого наступает актуальность таблицы тарировки 1764 1764 } 2153 + ], 2154 + "showInTooltip": true, ~/~/ Отображение в подсказке 2155 + "showLastValid": true, ~/~/ Отображать последнее валидное значение 1765 1765 1766 -(% lang="en-US" style="text-align:left" %) 1767 -(% lang="ru-RU" style="color:#000000; font-weight:normal" %)} 2157 +((( 2158 + "color": "string", ~/~/ цвет уведомлений 2159 +))) 1768 1768 2161 + "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива 2162 + "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания 2163 + "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 2164 + "expr": "string", ~/~/ Выражение 2165 + "children": [ ~/~/ Cписок добавленных в агрегацию физ. датчиков 2166 + "string" 2167 + ], 2168 + "customParams": { ~/~/ Дополнительные настройки 2169 + "additionalProp1": "string", 2170 + "additionalProp2": "string", 2171 + "additionalProp3": "string" 2172 + }, 2173 + "summaryMaxValue": 0, ~/~/ Определяет максимальное значение датчика в режиме накопления. 2174 + "valueIntervals": [ ~/~/ Интервалы значений для подсветки в мониторинге 2175 + { 2176 + "from": 0, ~/~/ С какого значения 2177 + "color": "string", ~/~/ Каким цветом 2178 + "text": "string" ~/~/ Текст подписи к этому интервалу 2179 + } 2180 + ] 2181 + } 2182 + ], 2183 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах 2184 + "customFields": [ ~/~/ Список произвольных полей 2185 + { 2186 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ System.Guid идентификатор элемента сущности 2187 + "name": "string", ~/~/ Наименование произвольного поля 2188 + "value": "string", ~/~/ Значение произвольного поля 2189 + "forClient": true, ~/~/ Отобразить произвольное поле у клиента 2190 + "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте) 2191 + "forReport": true ~/~/ Отобразить произвольное поле в отчете 2192 + } 2193 + ], 2194 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor 2195 +} 2196 +))) 2197 + 1769 1769 **Валидация:** 1770 1770 - сезонный параметр может быть задан только если задана соответствующая обычная норма; 1771 1771 - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма; ... ... @@ -1804,18 +1804,15 @@ 1804 1804 1805 1805 (% style="color:#000000" %)Метод запроса: **GET** 1806 1806 1807 -(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/ users/api/v3/devices/types>>url:https://hosting.glonasssoft.ru/api/v3/users/api/v3/devices/types]]2236 +(% style="color:#000000" %)URL запроса: (%%)[[https:~~/~~/hosting.glonasssoft.ru/api/v3/devices/types>>https://hosting.glonasssoft.ru/api/v3/devices/types]] 1808 1808 1809 1809 (% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 1810 1810 1811 1811 (% style="color:#000000" %)Ответ: 1812 1812 1813 -(% style="color:#000000" %){ 1814 - 2242 +(% style="color:#000000" %){(%%) 1815 1815 "deviceTypeId" : "", ~/~/ ID типа устройства 1816 1816 "deviceTypeName" : "" ~/~/ Название типа устройства 1817 - 1818 -(% style="text-align:left" %) 1819 1819 (% style="color:#000000" %)} 1820 1820 1821 1821 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Датчики**(%%) = ... ... @@ -1837,13 +1837,10 @@ 1837 1837 1838 1838 (% style="color:#000000" %)Ответ: 1839 1839 1840 -(% style="color:#000000" %){ 1841 - 2266 +(% style="color:#000000" %){(%%) 1842 1842 "id": "", ~/~/ ID типа датчика 1843 1843 "name": "", ~/~/ Название 1844 1844 "description": "", ~/~/ Описание 1845 - 1846 -(% style="text-align:left" %) 1847 1847 (% style="color:#000000" %)} 1848 1848 1849 1849 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Сообщения**(%%) = ... ... @@ -1887,6 +1887,56 @@ 1887 1887 } 1888 1888 ] 1889 1889 2313 +== (% style="color:#000000; font-size:16px" %)**Получить тип и номер входа сырого параметра **(%%) == 2314 + 2315 +(% class="box infomessage" style="text-align: left;" %) 2316 +((( 2317 +**POST /api/v3/terminalMessages/mapping** 2318 +))) 2319 + 2320 +Запрос позволяет узнать тип и номер входа для сырого параметра, приходящего по указанному протоколу. 2321 + 2322 +(% style="color:#000000" %)URL запроса: (%%)https:~/~/hosting.glonasssoft.ru/api/v3/terminalMessages/mapping 2323 + 2324 +(% style="color:#000000" %)В заголовках запроса: X-Auth: Токен авторизации 2325 + 2326 +{ 2327 + "protocolType": 0, 2328 + "params": ["string"] 2329 +} 2330 + 2331 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2332 +|protocolType|ID типа протокола 2333 +|params|((( 2334 +Массив наименований параметров в сообщении 2335 +))) 2336 + 2337 +Ответ: 2338 + 2339 +{ 2340 + "protocolType": 0, 2341 + "mapping": { 2342 + "additionalProp1": { 2343 + "inputType": 0, 2344 + "inputNumber": 0 2345 + }, 2346 + "additionalProp2": { 2347 + "inputType": 0, 2348 + "inputNumber": 0 2349 + } 2350 + } 2351 +} 2352 + 2353 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2354 +|protocolType|Тип протокола 2355 +|inputType|Тип входа, 0 - Цифровой, 1 - Аналоговый, 2 - Импульсный, 3 - Rs232, 4 - Rs485, 5 - FMS, 6 - Диагностический, 7 - 1-Wire, 8 - Частотный, 9 - BLE, 255 - Виртуальный 2356 +|inputNumber|((( 2357 +Номер входа 2358 +))) 2359 + 2360 +(% class="wikigeneratedid" %) 2361 +Перечень ID протоколов в статье - [[ID протоколов для получения типов и номеров входа сырого параметра.>>https://wiki.glonasssoft.ru/bin/view/API/ID%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D1%8B%20%D0%B4%D0%BB%D1%8F%20%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%20%D1%82%D0%B8%D0%BF%D0%B0%20%D0%B8%20%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%D0%B0%20%D0%B2%D1%85%D0%BE%D0%B4%D0%B0%20%D1%81%D1%8B%D1%80%D0%BE%D0%B3%D0%BE%20%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0/]] 2362 + 1890 1890 == (% style="color:#000000; font-size:16px" %)**Запрос списка сообщений**(%%) == 1891 1891 1892 1892 (% class="box infomessage" %) ... ... @@ -1911,6 +1911,11 @@ 1911 1911 "to": "2023-03-29T09:14:46.107Z" ~/~/ конец периода запроса 1912 1912 } 1913 1913 2387 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2388 +|vehicleId|ID объекта 2389 +|from|Дата и время начала периода запроса 2390 +|to|Дата и время окончания периода запроса 2391 + 1914 1914 Ответ: 1915 1915 1916 1916 [ ... ... @@ -1917,25 +1917,43 @@ 1917 1917 { 1918 1918 "messages": [ 1919 1919 { 1920 - "deviceTime": "2023-03-29T09:14:46.125Z", ~/~/ Время устройства 1921 - "serverTime": "2023-03-29T09:14:46.125Z", ~/~/ Время сервера 1922 - "speed": 0, ~/~/ Скорость, км/ч 1923 - "altitude": 0, ~/~/ Высота, м 1924 - "latitude": 0, ~/~/ Широта [-90°;90°] 1925 - "longitude": 0, ~/~/ Долгота [-180°;180°] 1926 - "satellites": 0, ~/~/ Кол-во спутников 1927 - "voltage": 0, ~/~/ Напряжение 1928 - "parameters": { ~/~/ список параметров датчиков передаваемых терминалом 2398 + "deviceTime": "2023-11-29T07:40:44.052Z", 2399 + "serverTime": "2023-11-29T07:40:44.052Z", 2400 + "speed": 0, 2401 + "altitude": 0, 2402 + "latitude": 0, 2403 + "longitude": 0, 2404 + "satellites": 0, 2405 + "course": 0, 2406 + "voltage": 0, 2407 + "parameters": { 1929 1929 "additionalProp1": "string", 1930 1930 "additionalProp2": "string", 1931 1931 "additionalProp3": "string" 1932 1932 }, 1933 - "photoCount": 0 ~/~/ Кол-во фото 2412 + "photoCount": 0, 2413 + "lbsCorrectedCoords": true, 2414 + "protocolType": 0 1934 1934 } 1935 1935 ] 1936 1936 } 1937 1937 ] 1938 1938 2420 +|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 2421 +|deviceTime|Время сообщения терминала 2422 +|serverTime|Время когда сообщение поступило на сервер 2423 +|speed|Скорость 2424 +|altitude|Высота над уровнем моря 2425 +|latitude|Широта 2426 +|longitude|Долгота 2427 +|satellites|Кол-во спутников 2428 +|course|Курс 2429 +|voltage|Бортовое напряжение 2430 +|parameters|Список параметров и их значений 2431 +|photoCount|Количество фото 2432 +|lbsCorrectedCoords|Признак того, что координаты были скорректированы по LBS, true - скорректированы, false - не скорректированы 2433 +|protocolType|ID типа протокола 2434 + 1939 1939 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос данных об объекте за период**(%%) = 1940 1940 1941 1941 == (% style="color:#000000; font-size:16px" %)**Получение данных о пробеге и моточасах транспортного средства**(%%) == ... ... @@ -1972,10 +1972,14 @@ 1972 1972 { 1973 1973 "start": "2023-08-09T14:23:14.574Z", ~/~/ Начало 1974 1974 "end": "2023-08-09T14:23:14.574Z", ~/~/ Окончание 1975 - "mileageBegin": 0, ~/~/ Пробег на начало периода 1976 - "mileageEnd": 0, ~/~/ Пробег на окончание периода 1977 - "motohoursBegin": 0, ~/~/ Моточасы на начало периода 1978 - "motohoursEnd": 0 ~/~/ Моточасы на окончание периода 2471 + "mileage": 0, ~/~/ Пробег за период, километры 2472 + "mileageBegin": 0, ~/~/ Пробег на начало периода, километры 2473 + "mileageEnd": 0, ~/~/ Пробег на окончание периода, километры 2474 + "motohours": 0, ~/~/ Моточасы за период, секунды 2475 + "motohoursBegin": 0, ~/~/ Моточасы на начало периода, секунды 2476 + "motohoursEnd": 0 ~/~/ Моточасы на окончание периода, секунды 2477 + "idlingTime": 0 ~/~/ Холостой ход за период, секунд 2478 + 1979 1979 } 1980 1980 ] 1981 1981 } ... ... @@ -2024,6 +2024,12 @@ 2024 2024 } 2025 2025 ] 2026 2026 2527 +(% class="box warningmessage" %) 2528 +((( 2529 +Максимальное допустимое количество периодов в ответе - 1440. При превышении этого значения будет получена ошибка ""ApiCode":204,"ApiMessage":"Прислана неправильная модель","Message":"Задан слишком маленький период дискретизации"". 2530 +\\При большом количестве периодов существенно растет нагрузка, синхронный запрос может выдать ошибку по таймауту. Рекомендуем не занижать необходимое значение параметра "sampling". 2531 +))) 2532 + 2027 2027 == (% style="color:#000000; font-size:16px" %)**Получение данных о заправках и сливах транспортного средства**(%%) == 2028 2028 2029 2029 (% class="box infomessage" %) ... ... @@ -2069,6 +2069,96 @@ 2069 2069 } 2070 2070 ] 2071 2071 2578 + 2579 +== (% style="color:#000000; font-size:16px" %)**Получение данных по событиям движения и стоянок у объектов**(%%) == 2580 + 2581 +(% class="box infomessage" %) 2582 +((( 2583 +**POST /api/v3/vehicles/moveStop** 2584 +))) 2585 + 2586 +Метод запроса: **POST** 2587 + 2588 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/moveStop 2589 + 2590 +В заголовках запроса: X-Auth: Токен авторизации 2591 + 2592 + 2593 +Тело запроса: 2594 + 2595 +{ 2596 + "vehicleIds": [ ], ~/~/ Список ID объектов 2597 + "from": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время начало запроса 2598 + "to": "2024-01-30T10:12:19.125Z", ~/~/ Дата и время окончания запроса 2599 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 2600 +} 2601 + 2602 +Ответ: 2603 + 2604 +[ 2605 + { 2606 + "vehicleId": 0, ~/~/ ID объекта 2607 + "vehicleName": "string", ~/~/ Имя объекта 2608 + "moves": [ ~/~/ Событие движения 2609 + { 2610 + "mileage": 0, ~/~/ Пробег, км 2611 + "eventId": 0, ~/~/ Идентификатор события 2612 + "eventName": "string", ~/~/ Название события 2613 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2614 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2615 + "duration": 0 ~/~/ Продолжительность события, секунд 2616 + } 2617 + ], 2618 + "stops": [ ~/~/ События стоянок 2619 + { 2620 + "address": "[Street] [House] [City] [State] [Country] [Coordinates]", ~/~/ Адрес события Улица, Дом, Город, Регион, Страна, Координаты 2621 + "eventId": 0, ~/~/ Идентификатор события 2622 + "eventName": "string", ~/~/ Название события 2623 + "start": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время начало события 2624 + "end": "2024-01-30T10:17:13.789Z", ~/~/ Дата и время окончания события 2625 + "duration": 0 ~/~/ Продолжительность события, секунд 2626 + } 2627 + ] 2628 + } 2629 +] 2630 + 2631 + 2632 +== (% style="color:#000000; font-size:16px" %)**Получение последних данных объекта**(%%) == 2633 + 2634 +(% class="box infomessage" %) 2635 +((( 2636 +**POST /api/v3/vehicles/getlastdata** 2637 +))) 2638 + 2639 +Метод запроса: **POST** 2640 + 2641 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/vehicles/getlastdata 2642 + 2643 +В заголовках запроса: X-Auth: Токен авторизации 2644 + 2645 + 2646 +В теле запроса перечисляете массив id объектов, в квадратных скобках через запятую. 2647 + 2648 +Ответ: 2649 + { 2650 + "vehicleId": 0, ~/~/Идентификатор объекта. 2651 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",~/~/Идентификатор объекта. 2652 + "vehicleNumber": "string",~/~/Номер объекта. 2653 + "receiveTime": "2024-02-27T14:11:00.315Z",~/~/Время получения записи на сервере, т.е. время срабатывания + время передачи от устройства на сервер 2654 + "recordTime": "2024-02-27T14:11:00.315Z",~/~/Время записи от устройства, т.е. время фактического события на транспортном средстве. 2655 + "state": 0,~/~/Определяет состояния объекта в мониторинге: нет данных - 0; отключена - 1; остановка - 2; стоянка - 3; в движении - 4. 2656 + "speed": 0,~/~/Скорость объекта. 2657 + "course": 0,~/~/Курс движения [0;360] 2658 + "latitude": 0,~/~/Широта [-90°;90°]. 2659 + "longitude": 0,~/~/Долгота [-180°;180°]. 2660 + "address": "string",~/~/Адрес. 2661 + "geozones": [ ~/~/Сведения по геозонам. 2662 + { 2663 + "id": 0, 2664 + "name": "string" 2665 + } 2666 + 2667 + 2072 2072 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Запрос посещений геообъектов**(%%) = 2073 2073 2074 2074 == (% style="color:#000000; font-size:16px" %)**Получение списка всех геообъектов**(%%) == ... ... @@ -2376,6 +2376,32 @@ 2376 2376 2377 2377 Success 2378 2378 2975 + 2976 +== (% style="color:#000000; font-size:16px" %)**Автоматическое продление уведомлений **(%%) == 2977 + 2978 +(% class="box warningmessage" %) 2979 +((( 2980 +**PUT** /api/v3/notifications/prolongation 2981 +))) 2982 + 2983 +Метод позволяет продлить уведомления. 2984 + 2985 +Метод запроса **PUT** 2986 + 2987 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/notifications/prolongation 2988 + 2989 +В заголовках запроса: X-Auth: Токен авторизации. 2990 + 2991 +Тело запроса: 2992 + 2993 +[ 2994 + 2995 +0 2996 + 2997 +] 2998 + 2999 +где 0 идентификатор ids. 3000 + 2379 2379 == (% style="color:#000000; font-size:16px" %)**Удаление уведомления**(%%) == 2380 2380 2381 2381 (% class="box errormessage" %) ... ... @@ -3566,7 +3566,7 @@ 3566 3566 **POST /api/v3/vehicles/import/{agentId}** 3567 3567 ))) 3568 3568 3569 -Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml** или **wlp. **Также они могут находится в** zip-архиве.** 4191 +Запрос позволяет загрузить объекты в систему из файла. Импортируемый файл может быть в формате **xml (расширение *.xls)** или **wlp. **Также они могут находится в** zip-архиве (один файл - один архив).** 3570 3570 3571 3571 В пути указывается **agentId** - id клиента. 3572 3572 ... ... @@ -3578,7 +3578,7 @@ 3578 3578 3579 3579 |=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3580 3580 |withNoData|Параметр **Объекты без данных**. Определяет способ загрузки объекта, у которого отсутствует имя или модель объекта. true - загружать, false - пропускать. 3581 -|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: 1- Замена,2- Слияние,3- Добавление4203 +|importMethod|Параметр **Метода импорта датчиков**. Определяет метод добавления датчиков импортируемых из файла. Значение: Replace - Замена, Merge - Слияние, Add - Добавление 3582 3582 3583 3583 В теле использовать тип **form-data,** тип значения** file** 3584 3584 ... ... @@ -3745,7 +3745,7 @@ 3745 3745 3746 3746 = (% style="color:#000000; font-size:18.6667px" %)Раздел: **Экодрайвинг**(%%) = 3747 3747 3748 -== (% style="color:#000000; font-size:16px" %)**Запрос рейтин ша качества вождения**(%%) ==4370 +== (% style="color:#000000; font-size:16px" %)**Запрос рейтинга качества вождения**(%%) == 3749 3749 3750 3750 (% class="box infomessage" %) 3751 3751 ((( ... ... @@ -3757,64 +3757,67 @@ 3757 3757 Тело запроса: 3758 3758 3759 3759 { 3760 - "vehicleIds": [vehicleId], 3761 - "from": "2023-11-22T09:29:48.051Z", 3762 - "to": "2023-11-22T09:29:48.051Z" 4382 + "vehicleIds": [vehicleId], ~/~/Массив ID объектов 4383 + "from": "2023-11-22T09:29:48.051Z", ~/~/ Дата начала запроса 4384 + "to": "2023-11-22T09:29:48.051Z" ~/~/ Дата окончания запроса 3763 3763 } 3764 3764 3765 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3766 -|vehicleIds|Массив ID объектов 3767 -|from|Дата начала запроса 3768 -|to|Дата окончания запроса 3769 - 3770 3770 Ответ: 3771 3771 3772 3772 { 3773 - "items": [ 4390 + "items": [ ~/~/ Список в разрезе ТС 3774 3774 { 3775 - "from": "2023-11-22T09:29:48.052Z", 3776 - "to": "2023-11-22T09:29:48.052Z", 3777 - "vehicleId": 0, 3778 - "vehicleName": "string", 3779 - "vehicleModel": "string", 3780 - "penalty": 0, 3781 - "score": 0, 3782 - "totalViolations": 0, 3783 - "violationsByType": { 3784 - "overspeedingViolations": 0, 3785 - "accelerationViolations": 0, 3786 - "brakingViolations": 0, 3787 - "turningViolations": 0, 3788 - "dangerousDrivingViolations": 0, 3789 - "sensorViolations": 0 4392 + "from": "2023-11-22T09:29:48.052Z", ~/~/ Дата начала периода 4393 + "to": "2023-11-22T09:29:48.052Z", ~/~/ Дата окончания периода 4394 + "vehicleId": 0, ~/~/ ID ТС 4395 + "vehicleName": "string", ~/~/ Название ТС 4396 + "vehicleModel": "string", ~/~/ Модель ТС 4397 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов в разрезе ТС 4398 + "score": 0, ~/~/ Рассчитанная оценка вождения в разрезе ТС 4399 + "totalViolations": 0, ~/~/ Нарушений всего 4400 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4401 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4402 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4403 + "brakingViolations": 0, ~/~/ Нарушений торможения 4404 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4405 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4406 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3790 3790 }, 3791 - "moveTime": 0, 3792 - "mileage": 0, 3793 - "tripsCount": 0, 3794 - "trips": [ 4408 + 4409 +((( 4410 + 4411 +))) 4412 + 4413 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4414 + "mileage": 0, ~/~/ Пробег, м 4415 + "tripsCount": 0, ~/~/ Кол-во рейсов 4416 + "trips": [ ~/~/ Информация по рейсу 3795 3795 { 3796 - "penalty": 0, 3797 - "score": 0, 3798 - "violationsCount": 0, 3799 - "violationsByType": { 3800 - "overspeedingViolations": 0, 3801 - "accelerationViolations": 0, 3802 - "brakingViolations": 0, 3803 - "turningViolations": 0, 3804 - "dangerousDrivingViolations": 0, 3805 - "sensorViolations": 0 4418 + "penalty": 0, ~/~/ Кол-во рассчитанных штрафных баллов за рейс 4419 + "score": 0, ~/~/ Рассчитанная оценка вождения за рейс 4420 + "violationsCount": 0, ~/~/ Всего нарушений 4421 + "violationsByType": { ~/~/ Информация о нарушениях по типу 4422 + "overspeedingViolations": 0, ~/~/ Нарушений превышения скорости 4423 + "accelerationViolations": 0, ~/~/ Нарушений ускорения 4424 + "brakingViolations": 0, ~/~/ Нарушений торможения 4425 + "turningViolations": 0, ~/~/ Нарушений опасного поворота 4426 + "dangerousDrivingViolations": 0, ~/~/ Нарушений резкого вождения 4427 + "sensorViolations": 0 ~/~/ Нарушений по датчику 3806 3806 }, 3807 - "moveTime": 0, 3808 - "mileage": 0, 3809 - "motohours": 0, 3810 - "maxSpeed": 0, 3811 - "startAddress": "string", 3812 - "endAddress": "string", 3813 - "drivers": [ 4429 + 4430 + "startDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата начала поездки 4431 + "endDate": "2024-11-18T13:23:38.516Z", ~/~/ Дата окончания поездки 4432 + "moveTime": 0, ~/~/ Продолжительность движения, сек 4433 + "mileage": 0, ~/~/ Пробег, м 4434 + "motohours": 0, ~/~/ Моточасы, секунды 4435 + "maxSpeed": 0, ~/~/ Максимальная скорость за рейс 4436 + "startAddress": "string", ~/~/ Адрес начала рейса 4437 + "endAddress": "string", ~/~/ Адрес конца рейса 4438 + "drivers": [ ~/~/ Список водителей 3814 3814 { 3815 - "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 3816 - "driverName": "string", 3817 - "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" 4440 + "driverGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/GUID водителя 4441 + "driverName": "string", ~/~/ФИО водителя 4442 + "driverRfid": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/GUID радиометки 3818 3818 } 3819 3819 ] 3820 3820 } ... ... @@ -3823,34 +3823,1495 @@ 3823 3823 ] 3824 3824 } 3825 3825 3826 -|=(% style="width: 215px; background-color: rgb(230, 230, 230);" %)**Параметр**|=(% style="width: 861px; background-color: rgb(230, 230, 230);" %)**Описание** 3827 -|from|Дата начала запроса 3828 -|to|Дата окончания 3829 -|vehicleId|ID объекта 3830 -|vehicleName|Имя объекта 3831 -|vehicleModel|Модель объекта 3832 -|penalty|Сумма штрафных баллов 3833 -|score|Оценка 3834 -|totalViolations|Суммарное количество нарушений 3835 -|violationsByType|Список типов нарушений и количество нарушений для каждого типа 3836 -|overspeedingViolations|Превышение скорости 3837 -|accelerationViolations|Ускорение 3838 -|brakingViolations|Торможение 3839 -|turningViolations|Резкий поворот 3840 -|dangerousDrivingViolations|Резкое вождение 3841 -|sensorViolations|Нарушение по датчику 3842 -|moveTime|Время в движении 3843 -|mileage|Пробег 3844 -|tripsCount|Количество рейсов 3845 -|motohours|Моточасы 3846 -|maxSpeed|Максимальная скорость 3847 -|startAddress|Адрес начала рейса 3848 -|endAddress|Адрес окончания рейса 3849 -|drivers|Список водителей, которые были на объекте в течениии рейса 3850 -|driverGuid|Guid водителя 3851 -|driverName|Имя водителя 3852 -|driverRfid|Номер Карты-метки 4451 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Топливные карты**(%%) = 3853 3853 4453 +== (% style="color:#000000; font-size:16px" %)**Запрос транзакций по топливным картам**(%%) == 4454 + 4455 +Транзакции по топливным картам можно получить при наличии права «Транзакции ТК». Метод позволяет получить транзакции по нескольким топливным картам. 4456 + 4457 +(% class="box infomessage" %) 4458 +((( 4459 +**POST /api/v3/fuelcards/transactions** 4460 +))) 4461 + 4462 +Метод запроса: POST 4463 + 4464 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards/transactions 4465 +\\В заголовках запроса: X-Auth: Токен авторизации 4466 + 4467 +Параметры в теле запроса (JSON): 4468 + 4469 +{ 4470 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода 4471 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода 4472 + "ids": [ 4473 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт 4474 + ], 4475 + "timezone": 0 ~/~/ Часовой пояс 4476 +} 4477 + 4478 + 4479 +Ответ: 4480 + { 4481 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции 4482 + "driver": "string", ~/~/ Водители, привязанные к ТК 4483 + "object": "string", ~/~/ Наименование ТС 4484 + "amount": 0, ~/~/ Количество топлива 4485 + "amountDut": 0, ~/~/ Количество по ДУТ 4486 + "amountDiff": 0, ~/~/ Разница, л 4487 + "amountDiffPerc": 0, ~/~/ Разница, % 4488 + "summa": 0, ~/~/ Стоимость, руб 4489 + "serviceName": "string", ~/~/ Тип топлива 4490 + "price": 0, ~/~/ Цена за литр, руб 4491 + "cardName": "string", ~/~/ Наименование ТК 4492 + "cardNum": "string", ~/~/ Номер ТК 4493 + "operator": "string", ~/~/ Оператор ТК 4494 + "address": "string" ~/~/ Адрес АЗС 4495 + } 4496 + 4497 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) == 4498 + 4499 +(% class="box infomessage" %) 4500 +((( 4501 +**GET /api/v3/fuelcards** 4502 +))) 4503 + 4504 +Метод запроса: GET 4505 + 4506 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards?ownerId=ID_клиента ~/~/ ID клиента у которого нужно запросить список 4507 + 4508 +Ответ: 4509 + 4510 +[ 4511 + { 4512 + "Name": "string", ~/~/ Определяет наименование карты. 4513 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора. 4514 + "Number": "string", ~/~/ Определяет № карты. 4515 + "Enabled": true, ~/~/ Определяет признак активности карты. 4516 + "Description": "string", ~/~/ Определяет описание карты. 4517 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты 4518 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 4519 + "deleted": true ~/~/ Признак удаления 4520 + } 4521 +] 4522 + 4523 += (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** = 4524 + 4525 + 4526 +== **Получение полных данных о ретрансляторе** == 4527 + 4528 +(% class="box infomessage" %) 4529 +((( 4530 +**GET ** **/api/v3/retranslations/{id}** 4531 +))) 4532 + 4533 +id - Идентификатор ретранслятора 4534 + 4535 + 4536 +Пример ответа: 4537 + 4538 +{ 4539 +"description": "", ~/~/ Поле описания ретранслятора 4540 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4541 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4542 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен 4543 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4544 +"objects": [ ~/~/ Объекты для ретрансляции 4545 +{ 4546 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4547 +"name": "", ~/~/ Наименование объекта ретрансляции 4548 +"imei": "", ~/~/ IMEI объекта ретрансляции 4549 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4550 +} 4551 + ], 4552 +"id": "", ~/~/ Идентификатор ретранслятора 4553 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4554 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен 4555 +} 4556 + 4557 + 4558 +== **Удаление данных ретранслятора** == 4559 + 4560 +(% class="box infomessage" %) 4561 +((( 4562 +**DELETE** **/api/v3/retranslations/{id}** 4563 +))) 4564 + 4565 +id - Идентификатор ретранслятора 4566 + 4567 + 4568 +== **Создание ретранслятора** == 4569 + 4570 +(% class="box infomessage" %) 4571 +((( 4572 +**POST ** **/api/v3/retranslations/{id}** 4573 +))) 4574 + 4575 +Запрос: 4576 + 4577 +{ 4578 +"description": "", ~/~/ Поле описания ретранслятора 4579 +"subscriberId": "", ~/~/ Идентификатор подписчика 4580 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4581 +"address": "", ~/~/ Адрес и порт принимающего сервера 4582 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен 4583 +"objects": [ ~/~/Объекты для ретрансляции 4584 +{ 4585 +"id": "", ~/~/ Идентификатор ретранслятора 4586 +"imei": "", ~/~/ IMEI объекта ретрансляции 4587 +"isEnabled": "" ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4588 +} 4589 + ] 4590 +} 4591 + 4592 + 4593 +Ответ: 4594 + 4595 +{ 4596 +"description": "", ~/~/ Поле описания ретранслятора 4597 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4598 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4599 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4600 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4601 +"objects": [ ~/~/ Объекты для ретрансляции 4602 +{ 4603 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4604 +"name": "string", ~/~/ Наименование объекта ретрансляции 4605 +"imei": "", ~/~/ IMEI объекта ретрансляции 4606 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4607 +} 4608 + ], 4609 +"id": "", ~/~/ Идентификатор ретранслятора 4610 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4611 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4612 +} 4613 + 4614 + 4615 +== **Редактирование ретранслятора** == 4616 + 4617 +(% class="box infomessage" %) 4618 +((( 4619 +**PUT** **/api/v3/retranslations** 4620 +))) 4621 + 4622 +Пример запроса: 4623 + 4624 +{ 4625 +"id": "", ~/~/ Идентификатор ретранслятора 4626 +"description": "string", ~/~/ Поле описания ретранслятора 4627 +"subscriberId": "", ~/~/ Идентификатор подписчика 4628 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4629 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4630 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4631 +"objects": ~/~/ Объекты для ретрансляции 4632 +[ 4633 +{ 4634 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4635 +"imei": "", ~/~/ IMEI объекта ретрансляции 4636 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4637 +} 4638 + ] 4639 +} 4640 + 4641 + 4642 +Пример ответа: 4643 + 4644 +{ 4645 +"description": "", ~/~/ Поле описания ретранслятора 4646 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4647 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4648 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4649 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4650 +"objects": [ ~/~/ Объекты для ретрансляции 4651 +{ 4652 +"id": "", ~/~/ Идентификатор объекта ретрансляции 4653 +"name": "string", ~/~/ Наименование объекта ретрансляции 4654 +"imei": "", ~/~/ IMEI объекта ретрансляции 4655 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен 4656 +} 4657 + ], 4658 +"id": "", ~/~/ Идентификатор ретранслятора 4659 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4660 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4661 +} 4662 + 4663 + 4664 +== **Получение списка ретранслятора клиента** == 4665 + 4666 +(% class="box infomessage" %) 4667 +((( 4668 +**POST /api/v3/retranslations/find** 4669 +))) 4670 + 4671 +Пример запроса: 4672 + 4673 +{ 4674 +"id": "", ~/~/ Идентификатор ретранслятора 4675 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу 4676 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр). 4677 +} 4678 + 4679 +Ответ: 4680 + 4681 +[ 4682 +{ 4683 +"description": "", ~/~/ Поле описания ретранслятора 4684 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться) 4685 +"protocolType": 0, ~/~/ Тип протокола ретрансляции 4686 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен 4687 +"address": "string", ~/~/ Адрес и порт принимающего сервера 4688 +"id": "", ~/~/ Идентификатор ретранслятора 4689 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента) 4690 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален 4691 +} 4692 +] 4693 + 4694 + 4695 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Отчеты**(%%) = 4696 + 4697 +== **API для отчета по выгрузке комбайнов** == 4698 + 4699 +(% class="box infomessage" %) 4700 +((( 4701 +**POST /api/v3/Reports/harvesterUnloading** 4702 +))) 4703 + 4704 +Пример запроса: 4705 + 4706 +{ 4707 + "byTime": 0, ~/~/ Объединение событий по времени 4708 + "byDist": 0, ~/~/ Объединение событий по расстоянию 4709 + "filterByTime": 0, ~/~/ Фильтрация событий по времени нахождения 4710 + "filterByHalfPerimeter": true, ~/~/ Фильтрация событий по пробегу половины периметра 4711 + "showNearestObjects": true, ~/~/Показывать объекты рядом? 4712 + "vehicleIds": [ ~/~/ Список id объектов для анализа 4713 + 0 4714 + ], 4715 + "from": "", ~/~/ Дата и время начало запроса 4716 + "to": "", ~/~/ Дата и время окончания запроса 4717 + "timezone": 0 ~/~/ Временная зона. Если не указана, то по умолчанию UTC+3 4718 +} 4719 + 4720 +Пример ответа: 4721 + 4722 +[ 4723 + { 4724 + "harvesterName": "", ~/~/Комбайн, номер 4725 + "harvesterId": 0, ~/~/Комбайн, id 4726 +"harvesterModel": "", ~/~/ Модель комбайна 4727 +"hopperCapacity": 0, ~/~/ Объем бункера м3 4728 + "hopperDischargeSpeed": 0, ~/~/ Скорость выгрузки из бункера, л/сек 4729 + "events": [ ~/~/Список событий в разрезе комбайна 4730 + { 4731 + "driverId": "", ~/~/Идентификатор водителя 4732 + "driverName": "", ~/~/Водитель комбайна, ФИО 4733 + "RFID": "", ~/~/ идентификатор карты-метки 4734 + "rfidName": "", ~/~/Водитель комбайна, имя метки 4735 + "vehicleId": 0, ~/~/идентификатор объекта 4736 + "vehicleName": "string", ~/~/ Имя объекта 4737 + "modelName": "string", ~/~/ Имя модели объекта 4738 + "nearestVehicles": [ ~/~/Объекты рядом 4739 + { 4740 + "vehicleId": 0, ~/~/идентификатор объекта 4741 + "vehicleName": "string" ~/~/ Имя объекта 4742 + } 4743 + ], 4744 + "fields": [ ~/~/Поля, где происходила выгрузка 4745 + { 4746 + "id": 0, ~/~/ идентификатор пользователя 4747 + "name": "string" ~/~/ имя пользователя 4748 + } 4749 + ], 4750 + "event": "string", ~/~/Событие 4751 + "start": "2024-07-19T06:41:57.821Z", ~/~/ Начало периода 4752 + "end": "2024-07-19T06:41:57.821Z", ~/~/ Окончание периода 4753 + "durationSeconds": 0, ~/~/Продолжительность события, в секундах 4754 + "cultureName": "string", ~/~/ название культуры 4755 + "bunkerLowLevelStart": 0, ~/~/Бункер, нижний уровень (на начало события) 4756 + "bunkerLowLevelEnd": 0, ~/~/ Бункер, нижний уровень (на конец события) 4757 + "bunkerHighLevelStart": 0, ~/~/Бункер, верхний уровень (на начало события) 4758 + "bunkerHighLevelEnd": 0, ~/~/Бункер, верхний уровень (на конец события) 4759 + "reapingAggregateValueStart": 0, ~/~/Жатка (на начало события) 4760 + "reapingAggregateValueEnd": 0, ~/~/Жатка (на конец события) 4761 + "issued": 0, ~/~/Выдано, бункеров 4762 + "issuedByBunkerSensors": 0, ~/~/Отдано бункеров (расчет по датчикам бункера) 4763 + "latitude": 0, ~/~/Широта 4764 + "longitude": 0, ~/~/ Долгота 4765 + "litresAway": 0, ~/~/Отдано, л 4766 + "m3Away": 0 ~/~/Отдано, м3 4767 + } 4768 + ] 4769 + } 4770 +] 4771 + 4772 + 4773 +== **Отчет трек-датчики** == 4774 + 4775 +(% class="box infomessage" %) 4776 +((( 4777 +**POST /api/v3/Reports/sensorsWorks** 4778 +))) 4779 + 4780 +**Пример запроса:** 4781 + 4782 +{ 4783 + "vehicleIds": [ ~/~/ Список ID объектов 4784 + 0 4785 + ], 4786 + "from": "2025-02-20T06:39:23.888Z", ~/~/ Начало периода (локальное время клиента) 4787 + "to": "2025-02-20T06:39:23.888Z", ~/~/ Конец периода (локальное время клиента) 4788 + "timezone": 0 ~/~/ Таймзона клиента, в часах (double). Если не передана - то считается как +3, MSK 4789 +} 4790 + 4791 +**Пример ответа:** 4792 + 4793 +((( 4794 +{ 4795 + "vehicleSensorWorks": [ ~/~/ Интервалы работы оборудования для конкретного ТС 4796 + { 4797 + "vehicleId": 0, ~/~/ Идентификатор ТС 4798 + "sensorWorks": [ ~/~/ Интервалы работы оборудования. 4799 + { 4800 + "start": "2025-02-20T06:39:23.979Z", ~/~/ Начало интервала работы оборудования. 4801 + "end": "2025-02-20T06:39:23.979Z", ~/~/ Конец интервала работы оборудования. 4802 + "duration": 0, ~/~/ Продолжительность интервала в секундах. 4803 + "name": "string", ~/~/ Наименование оборудования. 4804 + "mileage": 0, ~/~/ Пробег за время работы оборудования. 4805 + "totalMileage": 0, ~/~/ Общий пробег. 4806 + "avgSpeed": 0 ~/~/ Средняя скорость. 4807 + } 4808 + ] 4809 + } 4810 + ] 4811 +} 4812 +))) 4813 + 4814 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) = 4815 + 4816 + 4817 +== **Запрос списка полей** == 4818 + 4819 +(% class="box successmessage" %) 4820 +((( 4821 +**POST /api/v3/agroLands/find** 4822 +))) 4823 + 4824 +Пример запроса: 4825 + 4826 +((( 4827 +((( 4828 +((( 4829 +{ 4830 + "year": 0, ~/~/ Фильтр по году 4831 + "name": "string", ~/~/ Фильтр по названию 4832 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению 4833 +} 4834 +))) 4835 +))) 4836 + 4837 + 4838 +))) 4839 + 4840 +Пример ответа: 4841 + 4842 +((( 4843 +[ 4844 + { 4845 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4846 + "year": 0, ~/~/ Год поля 4847 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая 4848 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая 4849 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 4850 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4851 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4852 + "counts": { ~/~/ Счётчики с/х поля 4853 + "fieldOperations": 0, ~/~/ Количество операций на поле 4854 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4855 + "facts": 0 ~/~/ Счётчик факта 4856 + }, 4857 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4858 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4859 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4860 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 4861 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4862 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4863 + "planComment": "string", ~/~/ Комментарий к полю 4864 + "productivity": 0, ~/~/ Урожайность. 4865 + "id": 0, ~/~/ Идентификатор объекта геозоны 4866 + "name": "string", ~/~/ Название объекта геозоны 4867 + "type": 0, ~/~/ Тип объекта геозоны 4868 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4869 + "fname": "string", ~/~/ Имя файла 4870 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 4871 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны 4872 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны 4873 + "description": "string", ~/~/ Описание объекта геозоны 4874 + "area": 0, ~/~/ Площадь, м2 4875 + "perimetr": 0, ~/~/ Периметр, м 4876 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд 4877 + } 4878 +] 4879 + 4880 + 4881 +== **Создание нового поля ** == 4882 + 4883 +(% class="box successmessage" %) 4884 +((( 4885 +**POST /api/v3/agroLands** 4886 +))) 4887 + 4888 +Если необходимо указывать конкретного клиента, в котором нужно создать поле, то в заголовке надо прописать 4889 +X-agent - ID клиента 4890 + 4891 +Пример запроса: 4892 + 4893 +((( 4894 +{ 4895 + "extId": "string", 4896 + "shape": "{\"type\":\"Polygon\",\"coordinates\":~[~[[50.299112,54.769317],[50.299369,54.76691],[50.303702,54.767878],[50.299112,54.769317]]]}", ~/~/ Форма поля 4897 + "shapeFormat": "geojson", ~/~/ Формат, в котором представлена форма поля 4898 + "display": "string", ~/~/ Настройки отображения 4899 + "year": 0, ~/~/ Год поля 4900 + "name": "string", ~/~/ Наименование 4901 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 4902 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая 4903 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая 4904 + "planComment": "string", ~/~/ Комментарий к полю 4905 + "cropRotations": [ ~/~/ Данные по севообороту 4906 + { 4907 + "landId": 0, ~/~/ ID поля 4908 + "landName": "string", ~/~/ Название поля 4909 + "year": 0, ~/~/ Год урожая 4910 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4911 + "cultureName": "string", ~/~/ Название культуры 4912 + "productivity": 0, ~/~/ Урожайность 4913 + "area": 0, ~/~/ Площадь поля, Га 4914 + "total": 0, ~/~/ Валовый сбор 4915 + "productivityFact": 0, ~/~/ Фактическая урожайность 4916 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4917 + "totalFact": 0, ~/~/ Фактический валовый сбор 4918 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ 4919 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева 4920 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая 4921 + "isyearplan": true, ~/~/ Годовой план 4922 + "comment": "string" ~/~/ Комментарий 4923 + } 4924 + ] 4925 +} 4926 +))) 4927 + 4928 +((( 4929 + 4930 +))) 4931 + 4932 +Пример ответа: 4933 + 4934 +((( 4935 +((( 4936 +{ 4937 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 4938 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 4939 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 4940 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 4941 + "cropRotations": [ ~/~/ Данные по севообороту 4942 + { 4943 + "landId": 0, ~/~/ ID поля 4944 + "landName": "string", ~/~/ Название поля 4945 + "year": 0, ~/~/ Год урожая 4946 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 4947 + "cultureName": "string", ~/~/ Название культуры 4948 + "productivity": 0, ~/~/ Урожайность 4949 + "area": 0, ~/~/ Площадь поля, Га. 4950 + "total": 0, ~/~/ Валовый сбор 4951 + "productivityFact": 0, ~/~/ Фактическая урожайность 4952 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 4953 + "totalFact": 0, ~/~/ Фактический валовый сбор 4954 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ 4955 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева 4956 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая 4957 + "isyearplan": true, ~/~/ годовой план 4958 + "comment": "string" ~/~/ Комментарий 4959 + } 4960 + ], 4961 + "cropVegetation": [ ~/~/ История вегетации поля 4962 + { 4963 + "values": [ ~/~/ Данные вегетации и состояния посева 4964 + { 4965 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4966 + "ndvi": 0 ~/~/ Индекс вегетации 4967 + } 4968 + ], 4969 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 4970 + { 4971 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4972 + "type": "string", ~/~/ Тип 4973 + "pictureid": "string" ~/~/ Идентификатор ресурса 4974 + } 4975 + ], 4976 + "states": [ ~/~/ Ключевые даты развития поля 4977 + { 4978 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата 4979 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 4980 + } 4981 + ] 4982 + } 4983 + ], 4984 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая 4985 + "counts": { 4986 + "fieldOperations": 0, ~/~/ Количество операций на поле 4987 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 4988 + "facts": 0 ~/~/ Счётчик факта 4989 + }, 4990 + "planComment": "string", ~/~/ Комментарий к полю 4991 +))) 4992 + 4993 +((( 4994 + "productivity": 0, ~/~/ Урожайность. 4995 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 4996 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая 4997 + "year": 0, ~/~/ Год поля 4998 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 4999 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5000 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5001 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5002 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто 5003 + "id": 0, ~/~/ Идентификатор объекта геозоны 5004 + "name": "string", ~/~/ Название объекта геозоны 5005 + "type": 0, ~/~/ Тип объекта геозоны 5006 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5007 + "fname": "string", ~/~/ Имя файла 5008 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5009 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны 5010 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны 5011 + "description": "string", ~/~/ Описание объекта геозоны 5012 + "area": 0, ~/~/ Площадь, м2 5013 + "perimetr": 0, ~/~/ Периметр, м 5014 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд 5015 +} 5016 + 5017 + 5018 +))) 5019 +))) 5020 +))) 5021 + 5022 +== **Получение поля по id** == 5023 + 5024 +(% class="box infomessage" %) 5025 +((( 5026 +**GET /api/v3/agroLands/{id}** 5027 +))) 5028 + 5029 +Пример запроса: 5030 +id ~/~/ Идентификатор поля 5031 + 5032 +Пример ответа: 5033 + 5034 +((( 5035 +{ 5036 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5037 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5038 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5039 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5040 + "cropRotations": [ ~/~/ Данные по севообороту 5041 + { 5042 + "landId": 0, ~/~/ ID поля 5043 + "landName": "string", ~/~/ Название поля 5044 + "year": 0, ~/~/ Год урожая 5045 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5046 + "cultureName": "string", ~/~/ Название культуры 5047 + "productivity": 0, ~/~/ Урожайность 5048 + "area": 0, ~/~/ Площадь поля, Га 5049 + "total": 0, ~/~/ Валовый сбор 5050 + "productivityFact": 0, ~/~/ Фактическая урожайность 5051 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5052 + "totalFact": 0, ~/~/ Фактический валовый сбор 5053 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ 5054 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева 5055 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая 5056 + "isyearplan": true, ~/~/ План года 5057 + "comment": "string" ~/~/ Комментарий 5058 + } 5059 + ], 5060 + "cropVegetation": [ ~/~/ История вегетации поля 5061 + { 5062 + "values": [ ~/~/ Данные вегетации и состояния посева 5063 + { 5064 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5065 + "ndvi": 0 ~/~/ Индекс вегетации 5066 + } 5067 + ], 5068 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5069 + { 5070 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5071 + "type": "string", ~/~/ Тип 5072 + "pictureid": "string" ~/~/ Идентификатор ресурса 5073 + } 5074 + ], 5075 + "states": [ ~/~/ Ключевые даты развития поля 5076 + { 5077 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 5078 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая 5079 + } 5080 + ] 5081 + } 5082 + ], 5083 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая 5084 + "counts": { 5085 + "fieldOperations": 0, ~/~/ Количество операций на поле 5086 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5087 + "facts": 0 ~/~/ Счётчик факта 5088 + }, 5089 + "planComment": "string", ~/~/ Комментарий к полю 5090 + "productivity": 0, ~/~/ Урожайность. 5091 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5092 +))) 5093 + 5094 +((( 5095 +((( 5096 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая 5097 + "year": 0, ~/~/ Год поля 5098 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5099 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5100 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5101 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5102 + "status": 0, ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 5103 + "id": 0, ~/~/ Идентификатор объекта геозоны 5104 + "name": "string", ~/~/ Название объекта геозоны 5105 + "type": 0, ~/~/ Тип объекта геозоны 5106 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5107 + "fname": "string", ~/~/ Имя файла 5108 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5109 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны 5110 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны 5111 + "description": "string", ~/~/ Описание объекта геозоны 5112 + "area": 0, ~/~/ Площадь, м2 5113 + "perimetr": 0, ~/~/ Периметр, м 5114 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд 5115 +} 5116 +))) 5117 + 5118 + 5119 +== **Удаление существующего поля** == 5120 + 5121 +(% class="box errormessage" %) 5122 +((( 5123 +**DELETE /api/v3/agroLands/{id}** 5124 +))) 5125 + 5126 +Пример запроса: 5127 +id ~/~/ Идентификатор поля 5128 + 5129 +Пример ответа: 5130 + 5131 +((( 5132 +200 ~/~/ Успех 5133 +))) 5134 + 5135 +((( 5136 + 5137 +))) 5138 + 5139 +((( 5140 +((( 5141 +((( 5142 + 5143 +))) 5144 + 5145 +((( 5146 +== **Изменение поля** == 5147 + 5148 +(% class="box infomessage" %) 5149 +((( 5150 +**PUT /api/v3/agroLands** 5151 +))) 5152 + 5153 +Пример запроса: 5154 + 5155 +((( 5156 +((( 5157 +{ 5158 + "id": 0, ~/~/ Идентификатор поля 5159 + "extId": "string", ~/~/ ExtId 5160 + "shape": "string", ~/~/ Форма поля 5161 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля 5162 + "display": "string", ~/~/ Настройки отображения 5163 + "year": 0, ~/~/ Год поля 5164 + "name": "string", ~/~/ Наименование 5165 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5166 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая 5167 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая 5168 + "planComment": "string", ~/~/Комментарий к полю 5169 + "cropRotations": [ ~/~/ Данные по севообороту 5170 + { 5171 + "landId": 0, ~/~/ ID поля 5172 + "landName": "string", ~/~/ Название поля 5173 + "year": 0, ~/~/ Год урожая 5174 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5175 + "cultureName": "string", ~/~/ Название культуры 5176 + "productivity": 0, ~/~/ Урожайность 5177 + "area": 0, ~/~/ Площадь поля, Га. 5178 + "total": 0, ~/~/ Валовый сбор 5179 + "productivityFact": 0, ~/~/ Фактическая урожайность 5180 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5181 + "totalFact": 0, ~/~/ Фактический валовый сбор 5182 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ 5183 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева 5184 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая 5185 + "isyearplan": true, 5186 + "comment": "string" ~/~/ Комментарий 5187 + } 5188 + ], 5189 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику 5190 +} 5191 +))) 5192 +))) 5193 + 5194 +((( 5195 + 5196 +))) 5197 + 5198 +Пример ответа: 5199 + 5200 +((( 5201 +((( 5202 +((( 5203 +{ 5204 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5205 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5206 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5207 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5208 + "cropRotations": [ ~/~/ Данные по севообороту 5209 + { 5210 + "landId": 0, ~/~/ ID поля 5211 + "landName": "string", ~/~/ Название поля 5212 + "year": 0, ~/~/ Год урожая 5213 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5214 + "cultureName": "string", ~/~/ Название культуры 5215 + "productivity": 0, ~/~/ Урожайность 5216 + "area": 0, ~/~/ Площадь поля, Га 5217 + "total": 0, ~/~/ Валовый сбор 5218 + "productivityFact": 0, ~/~/ Фактическая урожайность 5219 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5220 + "totalFact": 0, ~/~/ Фактический валовый сбор 5221 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ 5222 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева 5223 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая 5224 + "isyearplan": true, ~/~/ 5225 + "comment": "string" ~/~/ Комментарий 5226 + } 5227 + ], 5228 + "cropVegetation": [ ~/~/ История вегетации поля 5229 + { 5230 + "values": [ ~/~/ Данные вегетации и состояния посева 5231 + { 5232 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5233 + "ndvi": 0 ~/~/ Индекс вегетации 5234 + } 5235 + ], 5236 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5237 + { 5238 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5239 + "type": "string", ~/~/ Тип 5240 + "pictureid": "string" ~/~/ Идентификатор ресурса 5241 + } 5242 + ], 5243 + "states": [ ~/~/ Ключевые даты развития поля 5244 + { 5245 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата 5246 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5247 + } 5248 + ] 5249 + } 5250 + ], 5251 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая 5252 + "counts": { 5253 + "fieldOperations": 0, ~/~/ Количество операций на поле 5254 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5255 + "facts": 0 ~/~/ Счётчик факта 5256 + }, 5257 + "planComment": "string", ~/~/ Комментарий к полю 5258 + "productivity": 0, ~/~/ Урожайность. 5259 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5260 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая 5261 + "year": 0, ~/~/ Год поля 5262 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5263 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5264 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5265 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой 5266 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5267 + "id": 0, ~/~/ Идентификатор объекта геозоны 5268 + "name": "string", ~/~/ Название объекта геозоны 5269 + "type": 0, ~/~/ Тип объекта геозоны 5270 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5271 + "fname": "string", ~/~/ Имя файла 5272 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5273 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны 5274 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны 5275 + "description": "string", ~/~/ Описание объекта геозоны 5276 + "area": 0, ~/~/ Площадь, м2 5277 + "perimetr": 0, ~/~/ Периметр, м 5278 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд 5279 +} 5280 +))) 5281 +))) 5282 +))) 5283 +))) 5284 +))) 5285 + 5286 + 5287 +== **Редактирование года урожая ** == 5288 + 5289 +(% class="box successmessage" %) 5290 +((( 5291 +**POST /api/v3/agroLands/updateOpenCloseYear** 5292 +))) 5293 + 5294 +Пример запроса: 5295 + 5296 +((( 5297 +((( 5298 +{ 5299 + "agroLandIds": [ ~/~/ Идентификаторы полей для которых меняется год урожая 5300 + 0 5301 + ], 5302 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая 5303 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая 5304 +} 5305 +))) 5306 + 5307 + 5308 +))) 5309 + 5310 +Пример ответа: 5311 + 5312 +((( 5313 +((( 5314 +{ 5315 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры 5316 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии 5317 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле 5318 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года 5319 + "cropRotations": [ ~/~/ Данные по севообороту 5320 + { 5321 + "landId": 0, ~/~/ ID поля 5322 + "landName": "string", ~/~/ Название поля 5323 + "year": 0, ~/~/ Год урожая 5324 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры 5325 + "cultureName": "string", ~/~/ Название культуры 5326 + "productivity": 0, ~/~/ Урожайность 5327 + "area": 0, ~/~/ Площадь поля, Га. 5328 + "total": 0, ~/~/ Валовый сбор 5329 + "productivityFact": 0, ~/~/ Фактическая урожайность 5330 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га. 5331 + "totalFact": 0, ~/~/ Фактический валовый сбор 5332 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ 5333 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева 5334 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая 5335 + "isyearplan": true, ~/~/ 5336 + "comment": "string" ~/~/ Комментарий 5337 + } 5338 + ], 5339 + "cropVegetation": [ ~/~/ История вегетации поля 5340 + { 5341 + "values": [ ~/~/ Данные вегетации и состояния посева 5342 + { 5343 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5344 + "ndvi": 0 ~/~/ Индекс вегетации 5345 + } 5346 + ], 5347 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI 5348 + { 5349 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5350 + "type": "string", ~/~/ Тип 5351 + "pictureid": "string" ~/~/ Идентификатор ресурса 5352 + } 5353 + ], 5354 + "states": [ ~/~/ Ключевые даты развития поля 5355 + { 5356 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 5357 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая 5358 + } 5359 + ] 5360 + } 5361 + ], 5362 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая 5363 + "counts": { 5364 + "fieldOperations": 0, ~/~/ Количество операций на поле 5365 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле 5366 + "facts": 0 ~/~/ Счётчик факта 5367 + }, 5368 + "planComment": "string", ~/~/ Комментарий к полю 5369 + "productivity": 0, ~/~/ Урожайность. 5370 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га. 5371 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая 5372 + "year": 0, ~/~/ Год поля 5373 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5374 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5375 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5376 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой 5377 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 5378 + "id": 0, ~/~/ Идентификатор объекта геозоны 5379 + "name": "string", ~/~/ Название объекта геозоны 5380 + "type": 0, ~/~/ Тип объекта геозоны 5381 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение 5382 + "fname": "string", ~/~/ Имя файла 5383 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента 5384 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны 5385 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны 5386 + "description": "string", ~/~/ Описание объекта геозоны 5387 + "area": 0, ~/~/ Площадь, м2 5388 + "perimetr": 0, ~/~/ ериметр, м 5389 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд 5390 +} 5391 +))) 5392 + 5393 + 5394 += (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) = 5395 +))) 5396 +))) 5397 +))) 5398 + 5399 +== (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) == 5400 + 5401 + 5402 +(% class="box infomessage" %) 5403 +((( 5404 +**GET api/v3/Vehicles/recyclebin/all** 5405 +))) 5406 + 5407 +Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту 5408 + 5409 +Параметр запроса: {parentId} - идентификатор агента 5410 + 5411 +В заголовках запроса: X-Auth: Токен авторизации 5412 + 5413 +Ответ: 5414 + 5415 +[ 5416 + { 5417 + "recordTime": "", ~/~/Время записи 5418 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5419 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5420 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5421 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5422 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5423 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5424 + "items": [ ~/~/ 5425 +nullable: true ~/~/Детали 5426 + { 5427 + "name": "string", ~/~/наименование столбца 5428 + "value": "string" ~/~/содержание столбца 5429 + } 5430 + ] 5431 + }, 5432 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5433 + "string" 5434 + ] 5435 + } 5436 +] 5437 + 5438 + 5439 +== (% style="color:#000000; font-size:16px" %)**Запрос на удаление объектов из корзины**(%%) == 5440 + 5441 +(% class="box infomessage" %) 5442 +((( 5443 +**POST api/v3/Vehicles/recyclebin/erase** 5444 +))) 5445 + 5446 +В заголовках запроса: X-Auth: Токен авторизации 5447 + 5448 +Пример запроса: 5449 + 5450 +[ 5451 +0 5452 +] 5453 + 5454 + 5455 +Пример ответа: 5456 + 5457 +[ 5458 +{ 5459 + "recordTime": "", ~/~/Время записи 5460 + "userId": "", ~/~/Guid пользователя, добавившего объект в корзину 5461 + "parentId": "", ~/~/Guid агента объекта, помещённого в корзину 5462 + "objectId": 0, ~/~/ID объекта, помещённого в корзин 5463 + "objectGuid": "", ~/~/Guid объекта, помещённого в корзину 5464 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5465 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5466 + "items": [ ~/~/Детали 5467 + { 5468 + "name": "", ~/~/Имя свойства 5469 + "value": "" ~/~/Значение свойства 5470 + } 5471 + ] 5472 + }, 5473 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5474 + "" 5475 + ] 5476 + } 5477 +] 5478 + 5479 +Ответ: В случае успешного выполнения запроса вернется HTTP ответ «200». 5480 + 5481 +== (% style="color:#000000; font-size:16px" %)**Запрос на восстановление объектов из корзины**(%%) == 5482 + 5483 +(% class="box infomessage" %) 5484 +((( 5485 +**POST api/v3/Vehicles/recyclebin/restore** 5486 +))) 5487 + 5488 +В заголовках запроса: X-Auth: Токен авторизации 5489 + 5490 +Параметры в теле запроса (JSON): 5491 + 5492 +Восстанавливает объекты из корзины. Возвращает те объекты которые не получилось восстановить. 5493 + 5494 +В заголовках запроса: X-Auth: Токен авторизации 5495 + 5496 + 5497 +Пример запроса: 5498 + 5499 +((( 5500 +[ 5501 +))) 5502 + 5503 +((( 5504 + 0 5505 +))) 5506 + 5507 +((( 5508 +] 5509 +))) 5510 + 5511 + 5512 +Пример ответа: 5513 + 5514 +[ 5515 +{ 5516 + "recordTime": "2024-07-19T07:58:19.305Z", ~/~/Время записи 5517 + "userId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid пользователя, добавившего объект в корзину 5518 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid агента объекта, помещённого в корзину 5519 + "objectId": 0, ~/~/ID объекта, помещённого в корзину 5520 + "objectGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/Guid объекта, помещённого в корзину 5521 + "objectType": 1, ~/~/Тип объекта, помещённого в корзину 5522 + "details": { ~/~/Список деталей объекта, помещённого в корзину 5523 + "items": [ ~/~/Детали 5524 + { 5525 + "name": "string", ~/~/Имя свойства 5526 + "value": "string" ~/~/Значение свойства 5527 + } 5528 + ] 5529 + }, 5530 + "errors": [ ~/~/Список ошибок удаления/восстановления объекта 5531 + "string" 5532 + ] 5533 + } 5534 +] 5535 + 5536 + 5537 += **Раздел: Журнал заданий ** = 5538 + 5539 + 5540 +== **Создание задания в Журнале заданий** == 5541 + 5542 +(% class="box infomessage" %) 5543 +((( 5544 +**POST /api/v3/vehicletasks** 5545 +))) 5546 + 5547 +Пример запроса: 5548 + 5549 +((( 5550 +{ 5551 + "vehicleId": 0, ~/~/ Идентификатор ТС 5552 + "description": "string", ~/~/ Описание 5553 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5554 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5555 + "startDate": "2025-02-25T12:11:04.874Z", ~/~/ Начало работы 5556 + "endDate": "2025-02-25T12:11:04.874Z", ~/~/ Окончание работы 5557 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5558 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5559 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5560 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5561 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5562 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5563 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5564 + "cost": { 5565 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5566 + "Name": "string", ~/~/ Наименование 5567 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection ) 5568 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5569 + "Norm": 0 ~/~/ Норма внесения 5570 + }, 5571 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Id 5572 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5573 + "created": "2025-02-25T12:11:04.874Z", ~/~/ Дата создания 5574 + "updated": "2025-02-25T12:11:04.874Z", ~/~/ Дата обновления 5575 + "deleted": true, ~/~/ Признак удаления 5576 + "extId": "string", 5577 + "GeoIds": [ ~/~/ Cвязанные поля 5578 + 0 5579 + ] 5580 +} 5581 +))) 5582 + 5583 + 5584 +Пример ответа: 5585 + 5586 +{ 5587 + "vehicleId": 0, ~/~/ Идентификатор ТС 5588 + "description": "string", ~/~/ Описание 5589 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5590 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5591 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5592 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5593 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5594 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5595 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5596 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5597 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5598 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5599 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5600 + "cost": { 5601 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5602 + "Name": "string", ~/~/ Наименование 5603 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5604 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5605 + "Norm": 0 ~/~/ Норма внесения 5606 + }, 5607 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5608 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5609 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5610 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5611 + "deleted": true, ~/~/ Признак удаления 5612 + "extId": "string", ~/~/ ExtId 5613 + "GeoIds": [ ~/~/ Связанные поля 5614 + 0 5615 + ] 5616 +} 5617 + 5618 + 5619 +== **Редактирование задания в Журнале заданий** == 5620 + 5621 +(% class="box successmessage" %) 5622 +((( 5623 +**PUT /api/v3/vehicletasks** 5624 +))) 5625 + 5626 +Пример запроса: 5627 + 5628 +((( 5629 +{ 5630 + "vehicleId": 0, ~/~/ Идентификатор ТС 5631 + "description": "string", ~/~/ Описание 5632 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5633 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5634 + "startDate": "2025-02-25T12:25:51.090Z", ~/~/ Начало работы 5635 + "endDate": "2025-02-25T12:25:51.090Z", ~/~/ Окончание работы 5636 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5637 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5638 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5639 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5640 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5641 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5642 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5643 + "cost": { 5644 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5645 + "Name": "string", ~/~/ Наименование 5646 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5647 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5648 + "Norm": 0 ~/~/ Норма внесения 5649 + }, 5650 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5651 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5652 + "created": "2025-02-25T12:25:51.090Z", ~/~/ Дата создания 5653 + "updated": "2025-02-25T12:25:51.090Z", ~/~/ Дата обновления 5654 + "deleted": true, ~/~/ Признак удаления 5655 + "extId": "string", ~/~/ ExtId 5656 + "GeoIds": [ ~/~/ Связанные поля 5657 + 0 5658 + ] 5659 +} 5660 +))) 5661 + 5662 + 5663 +Пример ответа: 5664 + 5665 +{ 5666 + "vehicleId": 0, ~/~/ Идентификатор ТС 5667 + "description": "string", ~/~/ Описание 5668 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5669 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5670 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5671 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5672 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5673 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5674 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5675 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5676 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5677 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5678 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5679 + "cost": { 5680 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5681 + "Name": "string", ~/~/ Наименование 5682 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5683 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5684 + "Norm": 0 ~/~/ Норма внесения 5685 + }, 5686 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5687 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5688 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5689 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5690 + "deleted": true, ~/~/ Признак удаления 5691 + "extId": "string", ~/~/ ExtId 5692 + "GeoIds": [ ~/~/ Связанные поля 5693 + 0 5694 + ] 5695 +} 5696 + 5697 + 5698 +== **Удаление задания в Журнале заданий** == 5699 + 5700 +(% class="box warningmessage" %) 5701 +((( 5702 +**DELETE /api/v3/vehicletasks** 5703 +))) 5704 + 5705 +Пример запроса: 5706 + 5707 +((( 5708 +[ 5709 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор 5710 +] 5711 +))) 5712 + 5713 +((( 5714 + 5715 +))) 5716 + 5717 +Пример ответа: 5718 + 5719 +{ 5720 + "vehicleId": 0, ~/~/ Идентификатор ТС 5721 + "description": "string", ~/~/ Описание 5722 + "trailerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агрегата 5723 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя 5724 + "startDate": "2025-02-25T12:11:04.964Z", ~/~/ Начало работы 5725 + "endDate": "2025-02-25T12:11:04.964Z", ~/~/ Окончание работы 5726 + "techOperationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Вид работ 5727 + "techOperationDataId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Тех. операция 5728 + "trailerModelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Модель агрегата 5729 + "minWidth": 0, ~/~/ Минимальная ширина агрегата, м 5730 + "maxWidth": 0, ~/~/ Максимальная ширина агрегата, м 5731 + "minSpeed": 0, ~/~/ Минимальная скорость, км/ч 5732 + "maxSpeed": 0, ~/~/ Максимальная скорость, км/ч 5733 + "cost": { 5734 + "Guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор 5735 + "Name": "string", ~/~/ Наименование 5736 + "Type": 0, ~/~/ Тим ТМЦ (0 - Seed, 1 - Crop, 2 - Fertilizer, 3 - PlantProtection) 5737 + "MeasureType": 0, ~/~/ Единицы измерения (0 - Кг, 1 - Тонн, 2 - Центнеры, 3 - Литры) 5738 + "Norm": 0 ~/~/ Норма внесения 5739 + }, 5740 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID 5741 + "owner": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя 5742 + "created": "2025-02-25T12:11:04.964Z", ~/~/ Дата создания 5743 + "updated": "2025-02-25T12:11:04.964Z", ~/~/ Дата обновления 5744 + "deleted": true, ~/~/ Признак удаления 5745 + "extId": "string", ~/~/ ExtId 5746 + "GeoIds": [ ~/~/ Связанные поля 5747 + 0 5748 + ] 5749 +} 5750 + 5751 + 5752 +== **Получение списка Журнала заданий** == 5753 + 5754 +(% class="box infomessage" %) 5755 +((( 5756 +**POST /api/v3/vehicletasks/getbyperiod** 5757 +))) 5758 + 5759 +Пример запроса: 5760 + 5761 +((( 5762 +{ 5763 + "Start": "2025-02-25T12:35:31.107Z", ~/~/ Начало периода. 5764 + "End": "2025-02-25T12:35:31.107Z", ~/~/ Окончание периода. 5765 + "TimeZone": 0, ~/~/ Часовой пояс. 5766 + "OperationsIds": [ ~/~/ Идентификаторы видов работ для фильтрации журнала 5767 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 5768 + ], 5769 + "GeoIds": [ ~/~/ Идентификаторы полей для фильтрации журнала 5770 + 0 5771 + ], 5772 + "VehiclesIds": [ ~/~/ Идентификаторы ТС для фильтрации журнала 5773 + 0 5774 + ], 5775 + "Offset": 0, ~/~/ Смещение от начала результата. Количество записей журнала для пропуска. 5776 + "Limit": 0 ~/~/ Размер страницы (количество записей на странице) 5777 +} 5778 +))) 5779 + 5780 + 5781 +Пример ответа: 5782 + 5783 +((( 5784 +{ 5785 + "total": 0, ~/~/ Общее количество записей 5786 + "pages": 0, ~/~/ Общее количество страниц 5787 + "currentPage": 0, ~/~/ Текущая страница 5788 + "items": [ ~/~/ Записи 5789 + { 5790 + "taskId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5791 + "isGroup": true, ~/~/ Вид задания (true - групповое, иначе - одиночное). 5792 + "name": "string", ~/~/ Название задания. 5793 + "startDate": "2025-02-25T12:35:31.110Z", ~/~/ Начало, utc 5794 + "endDate": "2025-02-25T12:35:31.110Z", ~/~/ Окончание, utc 5795 + "workKind": "string", ~/~/ Вид работ 5796 + "techOp": "string", ~/~/ Тех. операция 5797 + "trailerModel": "string", ~/~/ Модель агрегата 5798 + "width": "string", ~/~/ Ширина, м 5799 + "speed": "string", ~/~/ Тех. скорость 5800 + "fields": "string", ~/~/ Поля 5801 + "fieldsInfo": "string", ~/~/ Количество полей (суммарная площадь га) 5802 + "vehicles": "string", ~/~/ Объект-модель 5803 + "vehiclesCount": 0, ~/~/ Объектов (суммарное количество объектов) 5804 + "drivers": "string", ~/~/ Водители 5805 + "tmc": "string", ~/~/ ТМЦ 5806 + "client": "string", ~/~/ Клиент 5807 + "clientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор задания 5808 + "dep": "string", ~/~/ Подразделение 5809 + "geoIds": [ ~/~/ Связанные поля 5810 + 0 5811 + ] 5812 + } 5813 + ] 5814 +} 5815 +))) 5816 + 5817 + 5818 += **Раздел: Локатор ** = 5819 + 5820 + 5821 +== **Получение списка локаторов, доступных пользователю ** == 5822 + 5823 +(% class="box infomessage" %) 5824 +((( 5825 +**GET /api/v3/locators** 5826 +))) 5827 + 5828 +В заголовках запроса: X-Auth: Токен авторизации 5829 + 5830 + 5831 +Пример ответа: 5832 + 5833 +((( 5834 +[ 5835 + { 5836 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора. 5837 + "agentGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента. 5838 + "agentName": "string", ~/~/ Наименование агента. 5839 + "isEnabled": true, ~/~/ Активен 5840 + "created": "2025-03-12T06:48:41.254Z", ~/~/ Дата создания 5841 + "updated": "2025-03-12T06:48:41.254Z", ~/~/ Дата обновления 5842 + "name": "string", ~/~/ Наименование 5843 + "status": 0, ~/~/ 5844 + "activationMode": 0, ~/~/ Определяет статус пользователя локатора (0 - Активный, 1 - Запланированный, 2 - Неактивный) 5845 + "activationTime": "2025-03-12T06:48:41.254Z", ~/~/ Определяет вид активации локаторов. ( 0 - сейчас, 1 - время активации) 5846 + "validity": 0, ~/~/ Срок действия в днях (1-90). 5847 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5848 + "creatorUserId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID пользователя, создавшего локатор. 5849 + "creatorUserName": "string", ~/~/ Имя пользователя, создавшего локатор. 5850 + "url": "string", ~/~/ Ссылка 5851 + "language": 0, ~/~/ Язык. 5852 + "vehiclesCount": 0, ~/~/ Количество объектов. 5853 + "geozonesCount": 0, ~/~/ Количество геозон. 5854 + "fieldsCount": 0 ~/~/ Количество полей. 5855 + } 5856 +] 5857 +))) 5858 + 5859 + 5860 + 5861 +== **Создание локатора** == 5862 + 5863 +(% class="box successmessage" %) 5864 +((( 5865 +**POST /api/v3/locators** 5866 +))) 5867 + 5868 +Пример запроса: 5869 + 5870 +((( 5871 +{ 5872 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5873 + "isEnabled": true, ~/~/ Активность 5874 + "name": "string", ~/~/ Наименование локатора 5875 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - Сейчас, 1 - Запустить ко времени) 5876 + "activationTime": "2025-03-12T07:00:08.272Z", ~/~/ Время активации 5877 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5878 + "autoProlongation": true, ~/~/ Автопродление срока действия. 5879 + "url": "string", ~/~/ Ссылка 5880 + "language": 0 ~/~/ Язык 5881 +} 5882 +))) 5883 + 5884 + 5885 +Пример ответа: 5886 + 5887 +((( 5888 +3fa85f64-5717-4562-b3fc-2c963f66afa6 ~/~/ Идентификатор локатора 5889 +))) 5890 + 5891 + 5892 + 5893 +== **Изменение локатора** == 5894 + 5895 +(% class="box infomessage" %) 5896 +((( 5897 +**PUT /api/v3/locators** 5898 +))) 5899 + 5900 +Пример запроса: 5901 + 5902 +((( 5903 +{ 5904 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор локатора 5905 + "isEnabled": true, ~/~/ Активность 5906 + "name": "string", ~/~/ Наименование 5907 + "activationMode": 0, ~/~/ Определяет вид активации локаторов (0 - сейчас, 1 - Запустить ко времени ) 5908 + "activationTime": "2025-03-12T07:07:53.002Z", ~/~/ Время активации 5909 + "validity": 0, ~/~/ Срок действия в днях (1-90) 5910 + "autoProlongation": true, ~/~/ Автопродление срока действия 5911 + "url": "string", ~/~/ Ссылка 5912 + "language": 0 ~/~/ Язык 5913 +} 5914 +))) 5915 + 5916 + 5917 +Пример ответа: 5918 + 5919 +200 ~/~/ Success 5920 + 5921 + 5922 +== **Удалить локатор** == 5923 + 5924 +(% class="box warningmessage" %) 5925 +((( 5926 +**DELETE /api/v3/locators** 5927 +))) 5928 + 5929 +Пример запроса: 5930 + 5931 +((( 5932 +[ 5933 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификатор локатора 5934 +] 5935 +))) 5936 + 5937 + 5938 + 5939 + 3854 3854 (% class="box" lang="en-US" style="text-align: center;" %) 3855 3855 ((( 3856 3856 (% lang="ru-RU" style="color:#000000; font-family:Liberation Serif,serif; font-size:14pt; font-style:normal; font-variant:normal" %)**По вопросам работы PUBLIC API 3.0 можно обращаться**(% lang="ru-RU" style="color:#000000; font-size:14pt" %)** на [[support@glonasssoft.ru>>mailto:support@glonasssoft.ru]] **