<
From version < 184.1 >
edited by Андрей Калиновский
on 2024/11/22 13:26
To version < 206.1 >
edited by Андрей Калиновский
on 2025/01/27 14:08
>
Change comment: There is no comment for this version

Summary

Details

Icon Page properties
Content
... ... @@ -1,9 +1,23 @@
1 1  (% class="western" id="H41E43F43844143043D43843541341B41E41D410421421SoftPublicAPI" %)
2 2  (((
3 -**Содержание страницы:**\
3 +(% class="box warningmessage" %)
4 +(((
5 +(% class="mark" %)##Для обеспечения бесперебойной работы команд и серверного оборудования ГЛОНАССSoft убедительно
6 +просим вас соблюдать несколько простых правил при использовании API-команд:##
4 4  )))
5 5  
9 +* Формировать не более 3 отчётов одновременно.
10 +* Ограничить количество активных сессий одного пользователя с одного IP-адреса до 50.
6 6  
12 +В случае нарушения этих правил, ГЛОНАССSoft оставляет за собой право принудительно остановить выполнение запросов с определенных IP адресов.
13 +
14 +
15 +**Содержание страницы:**
16 +)))
17 +
18 +{{toc/}}
19 +
20 +
7 7  = (% style="color:#000000; font-size:16px" %)**Действующие ограничения**(%%) =
8 8  
9 9  (% style="color:#000000" %)−(%%) **Между запросами должна быть пауза в 1 секунду** (превышение отвергается системой с уведомлением о превышении частоты запросов).
... ... @@ -1007,6 +1007,17 @@
1007 1007  
1008 1008  (((
1009 1009  {
1024 +
1025 +(((
1026 + "showLineTrackWhenNoCoords": true,  ~/~/ Обозначать трек при отсутствии координат.
1027 + "IsSackEnabled": true, ~/~/ Определяет, должен ли внутренний сервер отвечать устройству сообщением SACK при получении сообщения от устройства
1028 +)))
1029 +
1030 +(((
1031 + ~/~/Используется только на ТС с типом устройства quecklink gv56, quecklink gv58, quecklink
1032 + "vehicleGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid TC
1033 +)))
1034 +
1010 1010   "vehicleId": "", ~/~/ ID объекта
1011 1011   "name": "", ~/~/ Имя объекта
1012 1012   "imei": "", ~/~/ IMEI объекта
... ... @@ -1101,6 +1101,7 @@
1101 1101   ],
1102 1102   "showInTooltip": true, ~/~/ Отображать в подсказке
1103 1103   "showLastValid": true, ~/~/ Отображать последнее валидное значение
1129 + "color": "string", ~/~/ Код цвета датчиков
1104 1104   "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива
1105 1105   "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания
1106 1106   "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION
... ... @@ -1158,11 +1158,21 @@
1158 1158   "date": "2023-05-22T09:57:39.562Z",
1159 1159   "description": "string",
1160 1160   "additionalInfo": "string"
1161 - }
1162 - ]
1187 +
1188 +(((
1163 1163  }
1190 + ],
1191 + "highlightSensorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Guid датчика, выбранного для подсветки его значения в различных интервалах
1192 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов.
1164 1164  )))
1165 1165  
1195 +(((
1196 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов
1197 +}
1198 +
1199 +)))
1200 +)))
1201 +
1166 1166  (% style="text-align:left" %)
1167 1167  Параметр «status» содержит id статуса объекта в системе, соответствие id и текстовое названия статуса приведены ниже:
1168 1168  
... ... @@ -1170,77 +1170,6 @@
1170 1170  0 - «Блокировка» 1 - «Активен», 2 - «Отменен», 3 - «Оборудован», 4 - «Диагностика», 5 - «Сервис», 6 - «Демонтаж», 7 - «Монтаж», 8 - «Дозаказ», 9 - «Обслужен», 10 - «Списан», 11 - «Неисправен», 12 - «Проверен», 13 - «Не эксплуатируется».
1171 1171  
1172 1172  
1173 -== **Импортировать историю ТС (Асинхронный запрос)** ==
1174 -
1175 -(% class="box successmessage" %)
1176 -(((
1177 -**POST /api/v3/Vehicles/importAsync/history/{vehicleId} **
1178 -)))
1179 -
1180 -(% style="color:#000000" %)Метод запроса: **POST**
1181 -
1182 -(% style="color:#000000" %)URL запроса: (%%)**https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} **
1183 -
1184 -(% style="color:#000000" %)Параметр запроса: {__**vehicleid}**__ - идентификатор транспортного средства
1185 -
1186 -
1187 -Ответ:
1188 -
1189 -{
1190 -
1191 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
1192 -
1193 - "Status": 0, ~/~/ Перечисление состояний выполнения запроса
1194 -
1195 -~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest)
1196 -
1197 - "Message": "string", ~/~/ Информация о выполнении запроса
1198 -
1199 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None)
1200 -
1201 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
1202 -
1203 - "Data": "string" ~/~/ Данные
1204 -
1205 -}
1206 -
1207 -
1208 -== **Возвращает статус асинхронного запроса импорта истории ТС** ==
1209 -
1210 -(% class="box infomessage" %)
1211 -(((
1212 -**GET /api/v3/Vehicles/importAsync/history/state/{requestId}**
1213 -)))
1214 -
1215 -(% style="color:#000000" %)Метод запроса: **GET**
1216 -
1217 -(% style="color:#000000" %)URL запроса: (%%)https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}**
1218 -
1219 -(% style="color:#000000" %)Параметр запроса: {(%%)**requestId(% style="color:#000000" %)__}__(%%)**(% style="color:#000000" %) - (%%)Уникальный идентификатор запроса
1220 -
1221 -
1222 -Ответ:
1223 -
1224 -{
1225 -
1226 - "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
1227 -
1228 - "Status": 0, ~/~/ Перечисление состояний выполения запроса
1229 -~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest
1230 -
1231 - "Message": "string", ~/~/ Информация о выполнении запроса
1232 -
1233 - "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса
1234 -
1235 -~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None
1236 -
1237 - "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
1238 -
1239 - "Data": "string" ~/~/ Данные
1240 -
1241 -}
1242 -
1243 -
1244 1244  == **Отправить команду на терминал** ==
1245 1245  
1246 1246  (% class="box successmessage" %)
... ... @@ -1251,13 +1251,15 @@
1251 1251  Команда для отправки на тс.
1252 1252  
1253 1253  {  
1254 -"id": "", ~/~/идентификатор произвольного поля
1255 -"command": "", ~/~/ Текст команды
1256 -"retries": "", ~/~/ Количество попыток
1257 -"idTemplate": "" ~/~/ ID шаблона команды
1219 +"id": "", ~/~/идентификатор объекта (он же идентификатор ТС: vehicleId)
1220 +"command": "", ~/~/ Текст отправляемой команды
1221 +"retries": "", ~/~/ Количество попыток отправки на терминал
1222 +"idTemplate": "" ~/~/ ID шаблона команды (при использовании ранее созданных шаблонов). 
1258 1258  }
1259 1259  
1225 +В ответ получаем cmdid
1260 1260  
1227 +
1261 1261  == **Получить ответ на отправленную на ТС команду** ==
1262 1262  
1263 1263  (% class="box infomessage" %)
... ... @@ -1265,13 +1265,13 @@
1265 1265  (% lang="en-US" %)**GET **(%%)**/api/v3/Vehicles/cmd/{cmdId}/answer**
1266 1266  )))
1267 1267  
1268 -Идентификатор команды: cmdid
1235 +Идентификатор команды: cmdId
1269 1269  
1270 1270  Запрос от терминала на ответ команды
1271 1271  
1272 1272  Пример ответ от терминала:
1273 1273  
1274 -ID= "" ~/~/ идентификатор произвольного поля
1241 +ID= "" ~/~/ идентификатор объекта
1275 1275  Soft="" ~/~/ версия софта
1276 1276  GPS=4 ~/~/ тип трекера
1277 1277  Time=11:05:43 28.06.24 ~/~/ время запроса
... ... @@ -1324,7 +1324,13 @@
1324 1324  
1325 1325  (% style="color:#000000" %)Параметры в теле запроса (JSON): //Обязательные параметры наименование и модель объекта //В теле запроса - объект JSON
1326 1326  
1327 -(% style="color:#000000" %){(%%)
1294 +(% style="color:#000000" %){
1295 +
1296 +
1297 +(((
1298 + "vehicleId": 0, ~/~/ ID ТС
1299 +)))
1300 +
1328 1328   "parentId": "" , ~/~/ ID клиента
1329 1329   "name": "" , ~/~/ имя ТС
1330 1330   "imei": "" , ~/~/ IMEI
... ... @@ -1417,6 +1417,7 @@
1417 1417   ],
1418 1418   "showInTooltip": true, ~/~/ Отображать в подсказке
1419 1419   "showLastValid": true, ~/~/ Отображать последнее валидное значение
1393 + "color": "string", ~/~/ код цвета датчиков
1420 1420   "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива
1421 1421   "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания
1422 1422   "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION
... ... @@ -1466,10 +1466,19 @@
1466 1466   "forClient": true, ~/~/ Отобразить произвольное поле у клиента
1467 1467   "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте)
1468 1468   "forReport": true ~/~/ Отобразить произвольное поле в отчете
1469 - }
1470 - ]
1443 +
1444 +(((
1445 + }
1446 + ],
1447 + "motohoursCalcMethod": 0 ~/~/  Вид расчета моточасов.
1448 +)))
1449 +
1450 +(((
1451 + ~/~/ 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов
1471 1471  }
1453 +)))
1472 1472  
1455 +
1473 1473  (% style="color:#000000" %)Ответ:
1474 1474  
1475 1475  
... ... @@ -1578,6 +1578,7 @@
1578 1578   ],
1579 1579   "showInTooltip": true, ~/~/ Отображение в подсказке
1580 1580   "showLastValid": true, ~/~/ Отображать последнее валидное значение
1564 + "color": "string", ~/~/ код цвета датчиков
1581 1581   "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива
1582 1582   "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания
1583 1583   "agrFunction": 0,  ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION
... ... @@ -1614,7 +1614,7 @@
1614 1614   "forReport": true ~/~/ Отобразить произвольное поле в отчете
1615 1615   }
1616 1616   ],
1617 - "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - ByIgnitionSensor, 1 - ByMotohoursSensor, 2 - ByRelativeMotohoursSensor
1601 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов
1618 1618  }
1619 1619  )))
1620 1620  )))
... ... @@ -1626,6 +1626,78 @@
1626 1626  - сезонные начало и окончание могут быть заданы только если задана соответствующая сезонная норма;
1627 1627  - при задании сезонной нормы обязательны соответствующие даты начала/окончания.
1628 1628  
1613 +
1614 +== **Импортировать историю ТС (Асинхронный запрос)** ==
1615 +
1616 +(% class="box successmessage" %)
1617 +(((
1618 +**POST /api/v3/Vehicles/importAsync/history/{vehicleId} **
1619 +)))
1620 +
1621 +Метод запроса: **POST**
1622 +
1623 +URL запроса: **https:~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/{vehicleId} **
1624 +
1625 +Параметр запроса: {**__vehicleid}__** - идентификатор транспортного средства
1626 +
1627 +
1628 +Ответ:
1629 +
1630 +{
1631 +
1632 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
1633 +
1634 + "Status": 0, ~/~/ Перечисление состояний выполнения запроса
1635 +
1636 +~/~/ ( 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest)
1637 +
1638 + "Message": "string", ~/~/ Информация о выполнении запроса
1639 +
1640 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса (1 - Intermediate, 2 - ProgressProcent, 255 - None)
1641 +
1642 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
1643 +
1644 + "Data": "string" ~/~/ Данные
1645 +
1646 +}
1647 +
1648 +
1649 +== **Возвращает статус асинхронного запроса импорта истории ТС** ==
1650 +
1651 +(% class="box infomessage" %)
1652 +(((
1653 +**GET /api/v3/Vehicles/importAsync/history/state/{requestId}**
1654 +)))
1655 +
1656 +Метод запроса: **GET**
1657 +
1658 +URL запроса: https:**~/~/hosting.glonasssoft.ru/api/v3/Vehicles/importAsync/history/state/{requestId}**
1659 +
1660 +Параметр запроса: {**requestId__}__** - Уникальный идентификатор запроса
1661 +
1662 +
1663 +Ответ:
1664 +
1665 +{
1666 +
1667 + "RequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Уникальный идентификатор запроса
1668 +
1669 + "Status": 0, ~/~/ Перечисление состояний выполения запроса
1670 +~/~/ 0 - Success, 1 - InPorgress, 2 - Canceled, 10 - Error, 20 - ErrorRequestValidation, 50 - ErrorExceedMaximumActiveRequest
1671 +
1672 + "Message": "string", ~/~/ Информация о выполнении запроса
1673 +
1674 + "ProgressState": 1, ~/~/ Тип информирования о ходе выполнении запроса
1675 +
1676 +~/~/ 1 - Intermediate, 2 - ProgressProcent, 255 - None
1677 +
1678 + "ProgressValue": 0, ~/~/ Прогресс выполнения запроса. Актуально, только если ProgressState=InProgress
1679 +
1680 + "Data": "string" ~/~/ Данные
1681 +
1682 +}
1683 +
1684 +
1629 1629  == (% style="color:#000000; font-size:16px" %)**Получение списка объектов с основными параметрами**(%%) ==
1630 1630  
1631 1631  (% class="box infomessage" %)
... ... @@ -1848,9 +1848,19 @@
1848 1848  
1849 1849  "drivers": [ ~/~/ Водители
1850 1850   {
1851 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1852 - "isDefault": true
1853 - }
1907 +
1908 +(((
1909 + "vehicleId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор объекта.
1910 + "inputNumber": 0, ~/~/ № входа.
1911 + "createTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени создания назначения.
1912 + "comment": "string", ~/~/ Комментарий.
1913 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор назначения.
1914 + "driverId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор водителя.
1915 + "beginTime": "2024-12-23T10:45:04.961Z", ~/~/ Момент времени начала назначения.
1916 + "endTime": "2024-12-23T10:45:04.961Z" ~/~/ Момент времени окончания назначения.
1917 +)))
1918 +
1919 + } 
1854 1854   ],
1855 1855   "commandTemplates": [ ~/~/ Шаблон команды
1856 1856   {
... ... @@ -1886,6 +1886,11 @@
1886 1886   ],
1887 1887   "showInTooltip": true, ~/~/ Отображать в подсказке
1888 1888   "showLastValid": true, ~/~/ Отображать последнее валидное значение
1955 +
1956 +(((
1957 + "color": "string",** ~/~/ **Цвет датчика
1958 +)))
1959 +
1889 1889   "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива
1890 1890   "showWithoutIgn": true, ~/~/ Отображать трек без включенного зажигания
1891 1891   "agrFunction": 0, ~/~/ Функция, SUM, AVG, EXPRESSION
... ... @@ -1932,7 +1932,12 @@
1932 1932   "forTooltip": true, ~/~/ Отобразить произвольное поле в подсказке (при наведении на ТС на карте)
1933 1933   "forReport": true ~/~/ Отобразить произвольное поле в отчете
1934 1934   }
1935 - ]
2006 +
2007 +(((
2008 + ],
2009 + "motohoursCalcMethod": 0 ~/~/ Вид расчета моточасов. 0 - По датчику зажигания, 1 - По датчику Моточасов, 2 - По датчику относительных Моточасов
2010 +)))
2011 +
1936 1936  }
1937 1937  
1938 1938  
... ... @@ -2070,6 +2070,11 @@
2070 2070   ],
2071 2071   "showInTooltip": true, ~/~/ Отображение в подсказке
2072 2072   "showLastValid": true, ~/~/ Отображать последнее валидное значение
2149 +
2150 +(((
2151 + "color": "string", ~/~/ цвет уведомлений
2152 +)))
2153 +
2073 2073   "showAsDutOnGraph": true, ~/~/ Отображать на графике как датчик уровня топлива
2074 2074   "showWithoutIgn": true, ~/~/ Отображать без включенного зажигания
2075 2075   "agrFunction": 0, ~/~/ Агрегирующая функция. 0 - SUM, 1 - AVG, 2 - EXPRESSION 
... ... @@ -4366,7 +4366,7 @@
4366 4366  
4367 4367  (% class="box infomessage" %)
4368 4368  (((
4369 -POST /api/v3/fuelcards/transactions
4450 +**POST /api/v3/fuelcards/transactions**
4370 4370  )))
4371 4371  
4372 4372  Метод запроса: POST
... ... @@ -4377,34 +4377,60 @@
4377 4377  Параметры в теле запроса (JSON):
4378 4378  
4379 4379  {
4380 - "startDate": "2024-04-11T10:32:02.395Z", ~/~/Начало периода
4381 - "endDate": "2024-04-11T10:32:02.395Z", ~/~/Конец периода
4461 + "startDate": "2024-04-11T10:32:02.395Z", ~/~/ Начало периода
4462 + "endDate": "2024-04-11T10:32:02.395Z", ~/~/ Конец периода
4382 4382   "ids": [ 
4383 - "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/гуиды топливных карт
4464 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Идентификаторы топливных карт
4384 4384   ],
4385 - "timezone": 0 ~/~/Таймзона
4466 + "timezone": 0 ~/~/ Часовой пояс
4386 4386  }
4387 4387  
4388 4388  
4389 4389  Ответ:
4390 4390   {
4391 - "date": "2024-04-11T10:41:02.265Z", ~/~/Дата и время транзакции
4392 - "driver": "string", ~/~/Водители, привязанные к ТК
4393 - "object": "string", ~/~/Наименование ТС
4394 - "amount": 0, ~/~/Количество топлива
4395 - "amountDut": 0, ~/~/Количество по ДУТ
4396 - "amountDiff": 0, ~/~/Разница, л
4397 - "amountDiffPerc": 0, ~/~/Разница, %
4398 - "summa": 0, ~/~/Стоимость, руб
4399 - "serviceName": "string", ~/~/Тип топлива
4400 - "price": 0, ~/~/Цена за литр, руб
4401 - "cardName": "string", ~/~/Наименование ТК
4402 - "cardNum": "string", ~/~/Номер ТК
4403 - "operator": "string", ~/~/Оператор ТК
4404 - "address": "string" ~/~/Адрес АЗС
4472 + "date": "2024-04-11T10:41:02.265Z", ~/~/ Дата и время транзакции
4473 + "driver": "string", ~/~/ Водители, привязанные к ТК
4474 + "object": "string", ~/~/ Наименование ТС
4475 + "amount": 0, ~/~/ Количество топлива
4476 + "amountDut": 0, ~/~/ Количество по ДУТ
4477 + "amountDiff": 0, ~/~/ Разница, л
4478 + "amountDiffPerc": 0, ~/~/ Разница, %
4479 + "summa": 0, ~/~/ Стоимость, руб
4480 + "serviceName": "string", ~/~/ Тип топлива
4481 + "price": 0, ~/~/ Цена за литр, руб
4482 + "cardName": "string", ~/~/ Наименование ТК
4483 + "cardNum": "string", ~/~/ Номер ТК
4484 + "operator": "string", ~/~/ Оператор ТК
4485 + "address": "string" ~/~/ Адрес АЗС
4405 4405   }
4406 4406  
4488 +== (% style="color:#000000; font-size:16px" %)**Получение списка топливных карт**(%%) ==
4407 4407  
4490 +(% class="box infomessage" %)
4491 +(((
4492 +**GET /api/v3/fuelcards**
4493 +)))
4494 +
4495 +Метод запроса: GET
4496 +
4497 +URL запроса: https:~/~/hosting.glonasssoft.ru/api/v3/fuelcards
4498 +
4499 +
4500 +Ответ:
4501 +
4502 +[
4503 + {
4504 + "Name": "string", ~/~/ Определяет наименование карты.
4505 + "OperatorGuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Определяет идентификатор оператора.
4506 + "Number": "string", ~/~/ Определяет № карты.
4507 + "Enabled": true, ~/~/ Определяет признак активности карты.
4508 + "Description": "string", ~/~/ Определяет описание карты.
4509 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID карты
4510 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Guid родителя
4511 + "deleted": true ~/~/ Признак удаления
4512 + }
4513 +]
4514 +
4408 4408  = (% style="color:#000000; font-size:18.6667px" %)Раздел: (%%)**Методы публичного API для ретрансляторов** =
4409 4409  
4410 4410  
... ... @@ -4415,28 +4415,28 @@
4415 4415  **GET ** **/api/v3/retranslations/{id}**
4416 4416  )))
4417 4417  
4418 -Идентификатор запроса: ID
4525 +id - Идентификатор ретранслятора
4419 4419  
4420 4420  
4421 4421  Пример ответа:
4422 4422  
4423 4423  {  
4424 -"description": "", ~/~/ Определяет описание
4425 -"subscriberId": "", ~/~/ Подписчик
4426 -"protocolType": 0, ~/~/ Тип протокола
4427 -"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен
4428 -"address": "string", ~/~/ Адрес события
4429 -"objects": [ ~/~/Объекты для ретрансляции
4531 +"description": "", ~/~/ Поле описания ретранслятора
4532 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4533 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4534 +"isEnabled": true, ~/~/ Признак включения ретранслятора, Включен, true - включен, false - отключен
4535 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4536 +"objects": [ ~/~/ Объекты для ретрансляции
4430 4430  {      
4431 4431  "id": "",  ~/~/ Идентификатор объекта ретрансляции
4432 4432  "name": "", ~/~/ Наименование объекта ретрансляции
4433 -"imei": "", ~/~/ IMEI объекта  
4434 -"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен
4540 +"imei": "", ~/~/ IMEI объекта  ретрансляции
4541 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен
4435 4435  }
4436 4436   ],  
4437 -"id": "", ~/~/ идентификатор пользователя   
4438 -"parentId": "", ~/~/Guid родителя
4439 -"deleted": "" ~/~/ Признак удаления, Включен, true - включен, false - отключен
4544 +"id": "", ~/~/ Идентификатор ретранслятора 
4545 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4546 +"deleted": "" ~/~/ Признак удаления ретранслятора: true - включен, false - отключен
4440 4440  }
4441 4441  
4442 4442  
... ... @@ -4447,7 +4447,7 @@
4447 4447  **DELETE** **/api/v3/retranslations/{id}**
4448 4448  )))
4449 4449  
4450 -Параметр запроса: ID
4557 +id - Идентификатор ретранслятора
4451 4451  
4452 4452  
4453 4453  == **Создание ретранслятора** ==
... ... @@ -4460,16 +4460,16 @@
4460 4460  Запрос:
4461 4461  
4462 4462  {  
4463 -"description": "", ~/~/ Описание
4464 -"subscriberId": "", ~/~/ Подписчик
4465 -"protocolType": 0, ~/~/ Тип протокола
4466 -"address": "", ~/~/ Адрес ретрансляции
4467 -"isEnabled": "", ~/~/ признак включения, Включен, true - включен, false - отключен
4570 +"description": "", ~/~/ Поле описания ретранслятора
4571 +"subscriberId": "", ~/~/ Идентификатор подписчика
4572 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4573 +"address": "", ~/~/ Адрес и порт принимающего сервера
4574 +"isEnabled": "", ~/~/ Признак включения ретранслятора, true - включен, false - отключен
4468 4468  "objects": [ ~/~/Объекты для ретрансляции
4469 4469  {      
4470 -"id": "", ~/~/ идентификатор пользователя     
4471 -"imei": "", ~/~/IMEI объекта
4472 -"isEnabled": ""  ~/~/ признак включения, Включен, true - включен, false - отключен  
4577 +"id": "", ~/~/ Идентификатор ретранслятора 
4578 +"imei": "", ~/~/ IMEI объекта ретрансляции
4579 +"isEnabled": ""  ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен
4473 4473  }
4474 4474   ]
4475 4475  }
... ... @@ -4478,22 +4478,22 @@
4478 4478  Ответ:
4479 4479  
4480 4480  {  
4481 -"description": "string", ~/~/ Определяет описание
4482 -"subscriberId": "", ~/~/ идентификатор запроса
4483 -"protocolType": 0, ~/~/ Тип протокола
4484 -"isEnabled": "", ~/~/ признак включения, Включен, true - включен, false - отключен
4485 -"address": "", ~/~/ Адрес события
4486 -"objects": [ ~/~/Объекты для ретрансляции
4588 +"description": "", ~/~/ Поле описания ретранслятора
4589 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4590 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4591 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4592 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4593 +"objects": [ ~/~/ Объекты для ретрансляции
4487 4487  {      
4488 -"id": "", ~/~/ идентификатор пользователя    
4489 -"name": "string", ~/~/ Название уведомления
4490 -"imei": "string", ~/~/IMEI объекта  
4491 -"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен  
4595 +"id": "", ~/~/ Идентификатор объекта ретрансляции     
4596 +"name": "string", ~/~/ Наименование объекта ретрансляции    
4597 +"imei": "", ~/~/ IMEI объекта ретрансляции
4598 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен  
4492 4492  }
4493 - ],  
4494 -"id": "", ~/~/ идентификатор пользователя  
4495 -"parentId": "", ~/~/ Guid идентификатор родителя
4496 -"deleted": true ~/~/ Признак удаления
4600 + ],
4601 +"id": "", ~/~/ Идентификатор ретранслятора   
4602 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4603 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален
4497 4497  }
4498 4498  
4499 4499  
... ... @@ -4507,18 +4507,18 @@
4507 4507  Пример запроса:
4508 4508  
4509 4509  {  
4510 -"id": "", ~/~/ идентификатор пользователя   
4511 -"description": "string", ~/~/ Определяет описание
4512 -"subscriberId": "", ~/~/ идентификатор запроса
4513 -"protocolType": 0, ~/~/ Тип протокола
4514 -"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен  
4515 -"address": "string", ~/~/ Адрес события
4516 -"objects": ~/~/Объекты для ретрансляции
4617 +"id": "", ~/~/ Идентификатор ретранслятора   
4618 +"description": "string", ~/~/ Поле описания ретранслятора
4619 +"subscriberId": "", ~/~/ Идентификатор подписчика
4620 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4621 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4622 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4623 +"objects": ~/~/ Объекты для ретрансляции
4517 4517  [    
4518 4518  {      
4519 -"id": "",  ~/~/ идентификатор пользователя         
4520 -"imei": "", ~/~/IMEI объекта
4521 -"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен  
4626 +"id": "",  ~/~/ Идентификатор объекта ретрансляции 
4627 +"imei": "", ~/~/ IMEI объекта ретрансляции
4628 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен
4522 4522  }
4523 4523   ]
4524 4524  }
... ... @@ -4527,22 +4527,22 @@
4527 4527  Пример ответа:
4528 4528  
4529 4529  {  
4530 -"description": "", ~/~/ Определяет описание
4531 -"subscriberId": "", ~/~/ идентификатор запроса
4532 -"protocolType": 0, ~/~/ Тип протокола
4533 -"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен  
4534 -"address": "string", ~/~/ Адрес события
4535 -"objects": [ ~/~/Объекты для ретрансляции
4637 +"description": "", ~/~/ Поле описания ретранслятора
4638 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4639 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4640 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4641 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4642 +"objects": [ ~/~/ Объекты для ретрансляции
4536 4536  {      
4537 -"id": "", ~/~/ идентификатор пользователя     
4538 -"name": "string", ~/~/ Название уведомления    
4539 -"imei": "", ~/~/IMEI объекта
4540 -"isEnabled": true ~/~/ признак включения, Включен, true - включен, false - отключен  
4644 +"id": "", ~/~/ Идентификатор объекта ретрансляции     
4645 +"name": "string", ~/~/ Наименование объекта ретрансляции    
4646 +"imei": "", ~/~/ IMEI объекта ретрансляции
4647 +"isEnabled": true ~/~/ Признак включения объекта ретрансляции: true - включен, false - отключен  
4541 4541  }
4542 4542   ],
4543 -"id": "", ~/~/ идентификатор пользователя   
4544 -"parentId": "", ~/~/ Guid идентификатор родителя
4545 -"deleted": true ~/~/ Признак удаления
4650 +"id": "", ~/~/ Идентификатор ретранслятора   
4651 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4652 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален
4546 4546  }
4547 4547  
4548 4548  
... ... @@ -4556,9 +4556,9 @@
4556 4556  Пример запроса:
4557 4557  
4558 4558  {  
4559 -"id": "", ~/~/ идентификатор пользователя   
4560 -"search": "string", ~/~/Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу
4561 -"parentId": "" ~/~/ Идентификатор агента, для которого надо получить данные.
4666 +"id": "", ~/~/ Идентификатор ретранслятора   
4667 +"search": "string", ~/~/ Строка поиска. Поиск производится по имени подписчика, описанию, типу протокола и адресу
4668 +"parentId": "" ~/~/ Идентификатор родительского агента, для которого надо получить данные (обязательный параметр).
4562 4562  }
4563 4563  
4564 4564  Ответ:
... ... @@ -4565,14 +4565,14 @@
4565 4565  
4566 4566  [ 
4567 4567  {    
4568 -"description": "", ~/~/ Определяет описание
4569 -"subscriberId": "", ~/~/ идентификатор запроса
4570 -"protocolType": 0, ~/~/ Тип протокола
4571 -"isEnabled": true, ~/~/ признак включения, Включен, true - включен, false - отключен  
4572 -"address": "string", ~/~/ Адрес события
4573 -"id": "", ~/~/ идентификатор пользователя   
4574 -"parentId": "", ~/~/ Guid идентификатор родителя
4575 -"deleted": true ~/~/ Признак удаления
4675 +"description": "", ~/~/ Поле описания ретранслятора
4676 +"subscriberId": "", ~/~/ Идентификатор подписчика (клиента, чьи объекты будут ретранслироваться)
4677 +"protocolType": 0, ~/~/ Тип протокола ретрансляции
4678 +"isEnabled": true, ~/~/ Признак включения ретранслятора: true - включен, false - отключен
4679 +"address": "string", ~/~/ Адрес и порт принимающего сервера
4680 +"id": "", ~/~/ Идентификатор ретранслятора   
4681 +"parentId": "", ~/~/ Идентификатор родителя (вышестоящего клиента)
4682 +"deleted": true ~/~/ Признак удаления ретранслятора: true - удален, false - не удален
4576 4576  }
4577 4577  ]
4578 4578  
... ... @@ -4583,7 +4583,7 @@
4583 4583  
4584 4584  (% class="box infomessage" %)
4585 4585  (((
4586 -POST **/api/v3/Reports/harvesterUnloading**
4693 +**POST /api/v3/Reports/harvesterUnloading**
4587 4587  )))
4588 4588  
4589 4589  Пример запроса:
... ... @@ -4655,14 +4655,594 @@
4655 4655  ]
4656 4656  
4657 4657  
4658 -= (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) =
4765 += (% style="color:#000000; font-size:18.6667px" %)**Раздел: Сельскохозяйственные поля **(%%) =
4659 4659  
4767 +
4768 +== **Запрос списка полей** ==
4769 +
4770 +(% class="box successmessage" %)
4771 +(((
4772 +**POST /api/v3/agroLands/find**
4773 +)))
4774 +
4775 +Пример запроса:
4776 +
4777 +(((
4778 +(((
4779 +(((
4780 +{
4781 + "year": 0, ~/~/ Фильтр по году
4782 + "name": "string", ~/~/ Фильтр по названию
4783 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6" ~/~/ Фильтр по подразделению
4784 +}
4785 +)))
4786 +)))
4787 +
4788 +
4789 +)))
4790 +
4791 +Пример ответа:
4792 +
4793 +(((
4794 +[
4795 + {
4796 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
4797 + "year": 0, ~/~/ Год поля
4798 + "startDate": "2024-12-20T12:27:07.523Z", ~/~/ Начало года урожая
4799 + "endDate": "2024-12-20T12:27:07.523Z", ~/~/ Конец года урожая
4800 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто
4801 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры
4802 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
4803 + "counts": { ~/~/ Счётчики с/х поля 
4804 + "fieldOperations": 0, ~/~/ Количество операций на поле
4805 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
4806 + "facts": 0 ~/~/ Счётчик факта
4807 + },
4808 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
4809 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
4810 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
4811 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
4812 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
4813 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
4814 + "planComment": "string", ~/~/ Комментарий к полю
4815 + "productivity": 0, ~/~/ Урожайность.
4816 + "id": 0, ~/~/ Идентификатор объекта геозоны
4817 + "name": "string", ~/~/ Название объекта геозоны
4818 + "type": 0, ~/~/ Тип объекта геозоны
4819 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
4820 + "fname": "string", ~/~/ Имя файла
4821 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
4822 + "beginCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата начала расчетов для геозоны
4823 + "endCalc": "2024-12-20T12:27:07.523Z", ~/~/ Дата окончания расчетов для геозоны
4824 + "description": "string", ~/~/ Описание объекта геозоны
4825 + "area": 0, ~/~/ Площадь, м2
4826 + "perimetr": 0, ~/~/ Периметр, м
4827 + "createDate": "2024-12-20T12:27:07.523Z" ~/~/ Дата создания в бд
4828 + }
4829 +]
4830 +
4831 +
4832 +== **Создание нового поля ** ==
4833 +
4834 +(% class="box successmessage" %)
4835 +(((
4836 +**POST /api/v3/agroLands**
4837 +)))
4838 +
4839 +Пример запроса:
4840 +
4841 +(((
4842 +{
4843 + "extId": "string", 
4844 + "shape": "string", ~/~/ Форма поля
4845 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля
4846 + "display": "string", ~/~/ Настройки отображения
4847 + "year": 0, ~/~/ Год поля
4848 + "name": "string", ~/~/ Наименование
4849 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
4850 + "startDate": "2024-12-20T08:19:59.635Z", ~/~/ Начало года урожая
4851 + "endDate": "2024-12-20T08:19:59.635Z", ~/~/ Конец года урожая
4852 + "planComment": "string", ~/~/ Комментарий к полю
4853 + "cropRotations": [ ~/~/ Данные по севообороту
4854 + {
4855 + "landId": 0, ~/~/ ID поля
4856 + "landName": "string", ~/~/ Название поля
4857 + "year": 0, ~/~/ Год урожая
4858 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
4859 + "cultureName": "string", ~/~/ Название культуры
4860 + "productivity": 0, ~/~/ Урожайность
4861 + "area": 0, ~/~/ Площадь поля, Га
4862 + "total": 0, ~/~/ Валовый сбор
4863 + "productivityFact": 0, ~/~/ Фактическая урожайность
4864 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
4865 + "totalFact": 0, ~/~/ Фактический валовый сбор
4866 + "start": "2024-12-20T08:19:59.635Z", ~/~/ Дата начала работ
4867 + "sowing": "2024-12-20T08:19:59.635Z", ~/~/ Дата сева
4868 + "harvesting": "2024-12-20T08:19:59.635Z", ~/~/ Дата уборки урожая
4869 + "isyearplan": true, ~/~/ Годовой план 
4870 + "comment": "string" ~/~/ Комментарий
4871 + }
4872 + ]
4873 +}
4874 +)))
4875 +
4876 +(((
4877 +
4878 +)))
4879 +
4880 +Пример ответа:
4881 +
4882 +(((
4883 +(((
4884 +{
4885 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор культуры
4886 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
4887 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
4888 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
4889 + "cropRotations": [ ~/~/ Данные по севообороту
4890 + {
4891 + "landId": 0, ~/~/ ID поля
4892 + "landName": "string", ~/~/ Название поля
4893 + "year": 0, ~/~/ Год урожая 
4894 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
4895 + "cultureName": "string", ~/~/ Название культуры
4896 + "productivity": 0, ~/~/ Урожайность
4897 + "area": 0, ~/~/ Площадь поля, Га.
4898 + "total": 0, ~/~/ Валовый сбор
4899 + "productivityFact": 0, ~/~/ Фактическая урожайность
4900 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
4901 + "totalFact": 0, ~/~/ Фактический валовый сбор
4902 + "start": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала работ
4903 + "sowing": "2024-12-20T08:19:59.743Z", ~/~/ Дата сева
4904 + "harvesting": "2024-12-20T08:19:59.743Z", ~/~/ Дата уборки урожая
4905 + "isyearplan": true, ~/~/ годовой план 
4906 + "comment": "string" ~/~/ Комментарий
4907 + }
4908 + ],
4909 + "cropVegetation": [ ~/~/ История вегетации поля
4910 + {
4911 + "values": [  ~/~/ Данные вегетации и состояния посева
4912 + {
4913 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата
4914 + "ndvi": 0 ~/~/ Индекс вегетации
4915 + }
4916 + ],
4917 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI
4918 + {
4919 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата
4920 + "type": "string", ~/~/ Тип
4921 + "pictureid": "string" ~/~/ Идентификатор ресурса
4922 + }
4923 + ],
4924 + "states": [ ~/~/ Ключевые даты развития поля
4925 + {
4926 + "date": "2024-12-20T08:19:59.743Z", ~/~/ Дата
4927 + "state": 0 ~/~/ Статус  0 - Всходы, 1 - Вершина, 2 - Сбор урожая
4928 + }
4929 + ]
4930 + }
4931 + ],
4932 + "endDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата закрытия года урожая
4933 + "counts": {
4934 + "fieldOperations": 0, ~/~/ Количество операций на поле
4935 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
4936 + "facts": 0 ~/~/ Счётчик факта
4937 + },
4938 + "planComment": "string", ~/~/ Комментарий к полю
4939 +)))
4940 +
4941 +(((
4942 + "productivity": 0, ~/~/ Урожайность.
4943 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
4944 + "startDate": "2024-12-20T08:19:59.743Z", ~/~/ Дата открытия года урожая
4945 + "year": 0, ~/~/ Год поля
4946 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
4947 + "actualPlanState": 0, ~/~/ Актуальный статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
4948 + "factState": 0, ~/~/ Фактический статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
4949 + "taskState": 0, ~/~/ Статус задачи годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
4950 + "status": 0, ~/~/ Статус с/х поля 0 - Нет, 1 - Открыто, 2 - Закрыто
4951 + "id": 0, ~/~/ Идентификатор объекта геозоны
4952 + "name": "string", ~/~/ Название объекта геозоны
4953 + "type": 0, ~/~/ Тип объекта геозоны
4954 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
4955 + "fname": "string", ~/~/ Имя файла
4956 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
4957 + "beginCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата начала расчетов для геозоны
4958 + "endCalc": "2024-12-20T08:19:59.743Z", ~/~/ Дата окончания расчетов для геозоны
4959 + "description": "string", ~/~/ Описание объекта геозоны
4960 + "area": 0, ~/~/ Площадь, м2
4961 + "perimetr": 0, ~/~/ Периметр, м
4962 + "createDate": "2024-12-20T08:19:59.743Z" ~/~/ Дата создания в бд
4963 +}
4964 +
4965 +
4966 +)))
4967 +)))
4968 +)))
4969 +
4970 +== **Получение поля по id** ==
4971 +
4972 +(% class="box infomessage" %)
4973 +(((
4974 +**GET /api/v3/agroLands/{id}**
4975 +)))
4976 +
4977 +Пример запроса:
4978 +id  ~/~/ Идентификатор поля
4979 +
4980 +Пример ответа:
4981 +
4982 +(((
4983 +{
4984 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  ~/~/ Идентификатор культуры
4985 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
4986 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
4987 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
4988 + "cropRotations": [ ~/~/ Данные по севообороту
4989 + {
4990 + "landId": 0, ~/~/ ID поля
4991 + "landName": "string", ~/~/ Название поля
4992 + "year": 0, ~/~/ Год урожая
4993 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
4994 + "cultureName": "string", ~/~/ Название культуры
4995 + "productivity": 0, ~/~/ Урожайность
4996 + "area": 0, ~/~/ Площадь поля, Га
4997 + "total": 0, ~/~/ Валовый сбор
4998 + "productivityFact": 0, ~/~/ Фактическая урожайность
4999 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5000 + "totalFact": 0, ~/~/ Фактический валовый сбор
5001 + "start": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала работ
5002 + "sowing": "2024-12-20T07:45:52.611Z", ~/~/ Дата сева
5003 + "harvesting": "2024-12-20T07:45:52.611Z", ~/~/ Дата уборки урожая
5004 + "isyearplan": true, ~/~/ План года 
5005 + "comment": "string" ~/~/ Комментарий
5006 + }
5007 + ],
5008 + "cropVegetation": [ ~/~/ История вегетации поля
5009 + {
5010 + "values": [ ~/~/ Данные вегетации и состояния посева
5011 + {
5012 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата
5013 + "ndvi": 0 ~/~/ Индекс вегетации
5014 + }
5015 + ],
5016 + "resources": [  ~/~/ Данные о снимках для каждого значения NDVI
5017 + {
5018 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата
5019 + "type": "string", ~/~/ Тип 
5020 + "pictureid": "string" ~/~/ Идентификатор ресурса
5021 + }
5022 + ],
5023 + "states": [ ~/~/ Ключевые даты развития поля
5024 + {
5025 + "date": "2024-12-20T07:45:52.611Z", ~/~/ Дата 
5026 + "state": 0 ~/~/ Статус 0 - Посев, 1 - Всходы, 2 - Сбор урожая
5027 + }
5028 + ]
5029 + }
5030 + ],
5031 + "endDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата закрытия года урожая
5032 + "counts": {
5033 + "fieldOperations": 0, ~/~/ Количество операций на поле
5034 + "actualFieldOperations": 0,  ~/~/ Кол-во актуальных операций на поле
5035 + "facts": 0 ~/~/ Счётчик факта
5036 + },
5037 + "planComment": "string", ~/~/ Комментарий к полю
5038 + "productivity": 0, ~/~/ Урожайность.
5039 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5040 +)))
5041 +
5042 +(((
5043 +(((
5044 + "startDate": "2024-12-20T07:45:52.611Z", ~/~/ Дата открытия года урожая
5045 + "year": 0, ~/~/ Год поля
5046 + "planState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой) 
5047 + "actualPlanState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5048 + "factState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5049 + "taskState": 0, ~/~/ Статус годового планирования участка (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5050 + "status": 0,  ~/~/ Статус с/х поля (0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой)
5051 + "id": 0, ~/~/ Идентификатор объекта геозоны
5052 + "name": "string", ~/~/ Название объекта геозоны
5053 + "type": 0, ~/~/ Тип объекта геозоны 
5054 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5055 + "fname": "string", ~/~/ Имя файла
5056 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5057 + "beginCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата начала расчетов для геозоны
5058 + "endCalc": "2024-12-20T07:45:52.611Z", ~/~/ Дата окончания расчетов для геозоны
5059 + "description": "string", ~/~/ Описание объекта геозоны
5060 + "area": 0, ~/~/ Площадь, м2
5061 + "perimetr": 0, ~/~/ Периметр, м
5062 + "createDate": "2024-12-20T07:45:52.611Z" ~/~/ Дата создания в бд
5063 +}
5064 +)))
5065 +
5066 +
5067 +== **Удаление существующего поля** ==
5068 +
5069 +(% class="box errormessage" %)
5070 +(((
5071 +**DELETE /api/v3/agroLands/{id}**
5072 +)))
5073 +
5074 +Пример запроса:
5075 +id  ~/~/ Идентификатор поля
5076 +
5077 +Пример ответа:
5078 +
5079 +(((
5080 +200 ~/~/ Успех
5081 +)))
5082 +
5083 +(((
5084 +
5085 +)))
5086 +
5087 +(((
5088 +(((
5089 +(((
5090 +
5091 +)))
5092 +
5093 +(((
5094 +== **Изменение поля** ==
5095 +
5096 +(% class="box infomessage" %)
5097 +(((
5098 +**PUT /api/v3/agroLands**
5099 +)))
5100 +
5101 +Пример запроса:
5102 +
5103 +(((
5104 +(((
5105 +{
5106 + "id": 0, ~/~/ Идентификатор поля
5107 + "extId": "string", ~/~/ ExtId
5108 + "shape": "string", ~/~/ Форма поля
5109 + "shapeFormat": "string", ~/~/ Формат, в котором представлена форма поля
5110 + "display": "string", ~/~/ Настройки отображения
5111 + "year": 0, ~/~/ Год поля
5112 + "name": "string", ~/~/ Наименование
5113 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5114 + "startDate": "2024-12-20T10:11:59.425Z", ~/~/ Начало года урожая
5115 + "endDate": "2024-12-20T10:11:59.425Z", ~/~/ Конец года урожая
5116 + "planComment": "string", ~/~/Комментарий к полю
5117 + "cropRotations": [  ~/~/ Данные по севообороту
5118 + {
5119 + "landId": 0, ~/~/ ID поля
5120 + "landName": "string", ~/~/ Название поля
5121 + "year": 0, ~/~/ Год урожая
5122 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5123 + "cultureName": "string", ~/~/ Название культуры
5124 + "productivity": 0, ~/~/ Урожайность
5125 + "area": 0, ~/~/ Площадь поля, Га.
5126 + "total": 0, ~/~/ Валовый сбор
5127 + "productivityFact": 0, ~/~/ Фактическая урожайность
5128 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5129 + "totalFact": 0, ~/~/ Фактический валовый сбор
5130 + "start": "2024-12-20T10:11:59.425Z", ~/~/ Дата начала работ
5131 + "sowing": "2024-12-20T10:11:59.425Z", ~/~/ Дата сева
5132 + "harvesting": "2024-12-20T10:11:59.425Z", ~/~/ Дата уборки урожая
5133 + "isyearplan": true, 
5134 + "comment": "string" ~/~/ Комментарий
5135 + }
5136 + ],
5137 + "deleteStatistic": true ~/~/ Нужно ли удалять статистику
5138 +}
5139 +)))
5140 +)))
5141 +
5142 +(((
5143 +
5144 +)))
5145 +
5146 +Пример ответа:
5147 +
5148 +(((
5149 +(((
5150 +(((
5151 +{
5152 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры
5153 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5154 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5155 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5156 + "cropRotations": [ ~/~/ Данные по севообороту
5157 + {
5158 + "landId": 0, ~/~/ ID поля
5159 + "landName": "string", ~/~/ Название поля
5160 + "year": 0, ~/~/  Год урожая
5161 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5162 + "cultureName": "string", ~/~/ Название культуры
5163 + "productivity": 0, ~/~/ Урожайность
5164 + "area": 0, ~/~/ Площадь поля, Га
5165 + "total": 0, ~/~/ Валовый сбор
5166 + "productivityFact": 0, ~/~/ Фактическая урожайность
5167 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5168 + "totalFact": 0, ~/~/ Фактический валовый сбор
5169 + "start": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала работ
5170 + "sowing": "2024-12-20T10:11:59.533Z", ~/~/ Дата сева
5171 + "harvesting": "2024-12-20T10:11:59.533Z", ~/~/ Дата уборки урожая
5172 + "isyearplan": true, ~/~/ 
5173 + "comment": "string" ~/~/ Комментарий
5174 + }
5175 + ],
5176 + "cropVegetation": [ ~/~/ История вегетации поля
5177 + {
5178 + "values": [ ~/~/ Данные вегетации и состояния посева
5179 + {
5180 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата
5181 + "ndvi": 0 ~/~/ Индекс вегетации
5182 + }
5183 + ],
5184 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI
5185 + {
5186 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата
5187 + "type": "string", ~/~/ Тип
5188 + "pictureid": "string" ~/~/ Идентификатор ресурса
5189 + }
5190 + ],
5191 + "states": [ ~/~/ Ключевые даты развития поля 
5192 + {
5193 + "date": "2024-12-20T10:11:59.533Z", ~/~/ Дата
5194 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая
5195 + }
5196 + ]
5197 + }
5198 + ],
5199 + "endDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата закрытия года урожая
5200 + "counts": { 
5201 + "fieldOperations": 0, ~/~/ Количество операций на поле
5202 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
5203 + "facts": 0 ~/~/ Счётчик факта
5204 + },
5205 + "planComment": "string", ~/~/ Комментарий к полю
5206 + "productivity": 0, ~/~/ Урожайность.
5207 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5208 + "startDate": "2024-12-20T10:11:59.533Z", ~/~/ Дата открытия года урожая
5209 + "year": 0, ~/~/ Год поля
5210 + "planState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5211 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5212 + "factState": 0,  ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5213 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто Частично С ошибкой
5214 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто 
5215 + "id": 0, ~/~/ Идентификатор объекта геозоны
5216 + "name": "string", ~/~/ Название объекта геозоны
5217 + "type": 0, ~/~/ Тип объекта геозоны
5218 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5219 + "fname": "string", ~/~/ Имя файла
5220 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5221 + "beginCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата начала расчетов для геозоны
5222 + "endCalc": "2024-12-20T10:11:59.533Z", ~/~/ Дата окончания расчетов для геозоны
5223 + "description": "string", ~/~/ Описание объекта геозоны
5224 + "area": 0, ~/~/ Площадь, м2
5225 + "perimetr": 0, ~/~/ Периметр, м
5226 + "createDate": "2024-12-20T10:11:59.533Z" ~/~/ Дата создания в бд
5227 +}
5228 +)))
5229 +)))
5230 +)))
5231 +)))
5232 +)))
5233 +
5234 +
5235 +== **Редактирование года урожая ** ==
5236 +
5237 +(% class="box successmessage" %)
5238 +(((
5239 +**POST /api/v3/agroLands/updateOpenCloseYear**
5240 +)))
5241 +
5242 +Пример запроса:
5243 +
5244 +(((
5245 +(((
5246 +{
5247 + "agroLandIds": [  ~/~/ Идентификаторы полей для которых меняется год урожая
5248 + 0
5249 + ],
5250 + "newStartDate": "2024-12-20T11:43:43.921Z", ~/~/ Новая дата начала урожая
5251 + "newEndDate": "2024-12-20T11:43:43.921Z" ~/~/ Новая дата закрытия урожая
5252 +}
5253 +)))
5254 +
5255 +
5256 +)))
5257 +
5258 +Пример ответа:
5259 +
5260 +(((
5261 +(((
5262 +{
5263 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор культуры
5264 + "cultureTechnologyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор технологии
5265 + "fieldId": 0, ~/~/ Ссылка на группирующее с/х поле
5266 + "sourceId": 0, ~/~/ Ссылка на участок прошлого года
5267 + "cropRotations": [ ~/~/ Данные по севообороту
5268 + {
5269 + "landId": 0, ~/~/ ID поля
5270 + "landName": "string", ~/~/ Название поля
5271 + "year": 0, ~/~/ Год урожая
5272 + "cultureId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ ID культуры
5273 + "cultureName": "string", ~/~/ Название культуры
5274 + "productivity": 0, ~/~/ Урожайность
5275 + "area": 0, ~/~/ Площадь поля, Га.
5276 + "total": 0, ~/~/ Валовый сбор
5277 + "productivityFact": 0, ~/~/ Фактическая урожайность
5278 + "areaFact": 0, ~/~/ Фактическая площадь поля, Га.
5279 + "totalFact": 0, ~/~/ Фактический валовый сбор
5280 + "start": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала работ
5281 + "sowing": "2024-12-20T11:43:44.091Z", ~/~/ Дата сева
5282 + "harvesting": "2024-12-20T11:43:44.091Z", ~/~/ Дата уборки урожая
5283 + "isyearplan": true, ~/~/ 
5284 + "comment": "string" ~/~/ Комментарий
5285 + }
5286 + ],
5287 + "cropVegetation": [ ~/~/ История вегетации поля
5288 + {
5289 + "values": [ ~/~/ Данные вегетации и состояния посева
5290 + {
5291 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата
5292 + "ndvi": 0 ~/~/ Индекс вегетации
5293 + }
5294 + ],
5295 + "resources": [ ~/~/ Данные о снимках для каждого значения NDVI
5296 + {
5297 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата
5298 + "type": "string", ~/~/ Тип
5299 + "pictureid": "string" ~/~/ Идентификатор ресурса
5300 + }
5301 + ],
5302 + "states": [ ~/~/ Ключевые даты развития поля
5303 + {
5304 + "date": "2024-12-20T11:43:44.091Z", ~/~/ Дата 
5305 + "state": 0 ~/~/ Статус 0 - Всходы, 1 - Вершина, 2 - Сбор урожая
5306 + }
5307 + ]
5308 + }
5309 + ],
5310 + "endDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата закрытия года урожая
5311 + "counts": { 
5312 + "fieldOperations": 0, ~/~/ Количество операций на поле
5313 + "actualFieldOperations": 0, ~/~/ Кол-во актуальных операций на поле
5314 + "facts": 0 ~/~/ Счётчик факта
5315 + },
5316 + "planComment": "string", ~/~/ Комментарий к полю
5317 + "productivity": 0, ~/~/ Урожайность.
5318 + "sqPlan": 0, ~/~/ Определяет площадь поля, Га.
5319 + "startDate": "2024-12-20T11:43:44.091Z", ~/~/ Дата открытия года урожая
5320 + "year": 0, ~/~/ Год поля
5321 + "planState": 0,  ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5322 + "actualPlanState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5323 + "factState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5324 + "taskState": 0, ~/~/ Статус годового планирования участка 0 - Нет, 1 - Запланированная, 2 - Запланированная ошибка, 3 - Ошибка закрытия, 4 - Закрыто, 5 - Отменено, 6 - Закрыто частично, 7 - Закрыто частично с ошибкой
5325 + "status": 0, ~/~/ Статус с/х поля 0 - нет, 1 - открыто, 2 - закрыто
5326 + "id": 0, ~/~/ Идентификатор объекта геозоны
5327 + "name": "string", ~/~/ Название объекта геозоны
5328 + "type": 0, ~/~/ Тип объекта геозоны
5329 + "unitId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Подразделение
5330 + "fname": "string", ~/~/ Имя файла
5331 + "parentId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", ~/~/ Идентификатор агента
5332 + "beginCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата начала расчетов для геозоны
5333 + "endCalc": "2024-12-20T11:43:44.091Z", ~/~/ Дата окончания расчетов для геозоны
5334 + "description": "string", ~/~/ Описание объекта геозоны
5335 + "area": 0, ~/~/ Площадь, м2
5336 + "perimetr": 0, ~/~/ ериметр, м
5337 + "createDate": "2024-12-20T11:43:44.091Z" ~/~/ Дата создания в бд
5338 +}
5339 +)))
5340 +
5341 +
5342 +== (% style="color:#000000; font-size:18.6667px" %)Раздел: **Корзина**(%%) ==
5343 +)))
5344 +)))
5345 +)))
5346 +
4660 4660  == (% style="color:#000000; font-size:16px" %)**Запрос на получение списка всех объектов в корзине**(%%) ==
4661 4661  
4662 4662  
4663 4663  (% class="box infomessage" %)
4664 4664  (((
4665 -GET api/v3/Vehicles/recyclebin/all
5352 +**GET api/v3/Vehicles/recyclebin/all**
4666 4666  )))
4667 4667  
4668 4668  Метод возвращает полную информацию о списках всех объектов в корзине по пользователям, доступным агенту
... ... @@ -4701,7 +4701,7 @@
4701 4701  
4702 4702  (% class="box infomessage" %)
4703 4703  (((
4704 -POST/api/v3/Vehicles/recyclebin/erase
5391 +**POST api/v3/Vehicles/recyclebin/erase**
4705 4705  )))
4706 4706  
4707 4707  В заголовках запроса: X-Auth: Токен авторизации
... ... @@ -4743,7 +4743,7 @@
4743 4743  
4744 4744  (% class="box infomessage" %)
4745 4745  (((
4746 -POST/api/v3/Vehicles/recyclebin/restore
5433 +**POST api/v3/Vehicles/recyclebin/restore**
4747 4747  )))
4748 4748  
4749 4749  В заголовках запроса: X-Auth: Токен авторизации

Меню

ГЛОНАССSoft wiki - 2024 г.