Метод endSession. Завершить смену сборщика
Метод завершает смену сборщика, записывая в строку учёта фактическое время завершения смены. Для завершения смены сборщик не должен иметь назначенных заказов со статусом «В сборке». Создаёт телеграмм- уведомление сборщику и магазину.
Алгоритм:
- находит магазин и сборщика,
- открывает транзакцию,
- находит открытую смену по сборщику, анализируя документы управления сменами за последние 3 дня,
- блокирует от изменения соответствующий документ управления сменами,
- проверяет Сборщика по Заказам СМ по Магазину в статусе «В сборке» за последние 3 дня,
- в строке смены заполняет текущей датой поле Фактическая дата окончания смены,
- записывает в очередь телеграмм-уведомлений сообщения «Сборщик ХХ завершил смену в магазине ММ в hh:nn, отработанное время hh:mm» для сборщика и магазина,
- если любой из перечисленных выше шагов завершился с ошибкой, то выполняет откат транзакции
- фиксирует транзакцию
- возвращает код завершения и сообщение об ошибке (если ошибка)
Параметры
requestData : {
storeId : <Идентификатор магазина СМ, обязательный, string>,
collector : <Сборщик, обязательный, string>
}
Радел responceData в возвращаемом ответе отсутствует. Возвращается только стандартный заголовок с кодом и сообщением об ошибке.
Нет комментариев