запрос lock/unlock
Данный запрос был создан для поддержания функциональности автоматического допланирования заказов, начиная с версии Максоптры 5.2.
Для фиксации/расфиксации рейсов в системе API использует структуру application/xml и стандартный HTTP-method POST.
URL: /rest/2/distribution-api/schedules/lock
/rest/2/distribution-api/schedules/unlock
Входные данные для запроса lock/unlock
Список всех поддерживаемых атрибутов и их описание представлены ниже
# | Название атрибута | Тип | Стиль | Обязательность | Описание |
1 | sessionID | Текст | Да | Идентификатор сессии, полученный от сервера после запроса авторизации. | |
2 | date | Дата | Query | Да | Date when the run is scheduled. Depends on the configuration for particular account localization. Example of English format is “DD/MM/YYYY”. Example of Russian format is “DD.MM.YYYY” |
3 | vehicleID | Целое число | Query | Да | Идентификатор машины Примечание Вместо атрибута vehicleID (идентификатор машины в Максоптре) можно также использовать атрибут vehicle (идентификатор машины во внешней системе) |
4 | aocID | Целое число | Query | Да | Идентификатор распределительного центра в Максоптре |
5 | runNumber | Целое число | Query | Нет | Идентификатор поездки указанной машины |
Возможны следующие комбинации атрибутов для фиксации/расфиксации расписаний:
- Фиксация по номеру рейса: vehicleID + date + runNumber
- Фиксация по номеру машин(ы): vehicleID + date
- Фиксация по номеру РЦ: aocID + date
Примечание
- Расфиксация возможна только в том случае, если детали заказа не были отправлены водителю. При попытке расфиксации начатого рейса - ошибка 1314 (см. ниже).
- Если в запросе помимо vehicleID (vehicle) указать атрибут aocID, то будут зафиксированы все неначатые рейсы по всем машинам этого РЦ.
- В одном запросе можно указывать несколько дат и машин.
Пример запроса lock/unlock
URL: /rest/2/distribution-api/schedules/{lock|unlock}?date=18.10.2018&{vehicleID=123|aocID=123}&(runNumber=1)
Метод: POST
Ответ lock/unlock
Фиксация рейса
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <apiResponse> <runs> <run> <number>1</number> <status>LOCKED</status> <date>1531612800000</date> <vehicleId>986</vehicleId> <stops /> </run> <run> <number>1</number> <status>LOCKED</status> <date>1531612800000</date> <vehicleId>9870</vehicleId> <stops /> </run> </runs> </apiResponse>
Расфиксация рейса
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <apiResponse> <runs> <run> <number>1</number> <status>UNLOCKED</status> <date>1531612800000</date> <vehicleId>986</vehicleId> <stops /> </run> <run> <number>1</number> <status>UNLOCKED</status> <date>1531612800000</date> <vehicleId>9870</vehicleId> <stops /> </run> </runs> </apiResponse>
Возможные ошибки
Ошибка | Описание |
---|---|
1014 | Ожидаемый параметр |
1015 | Внутренняя ошибка |
1019 | Пользователь не имеет прав доступа для работы с данным распределительным центром или распределительны центр не существует |
1314 | Не удалось зафиксировать/расфиксировать рейс |