@startuml scale 1200*1200 mainframe Получение свободных остатков actor Пользователь as user participant ARM as ARM participant OMS as OMS collections Cache as cache participant Shcat as Shcat participant Susanin as Susanin autonumber user -> ARM: Нажимает на остатки товара\nв товарной строке заказа ARM -> OMS: API GET /quantity-list-by-office activate OMS OMS -> OMS: валидирует запрос OMS -> cache: Забрать все офисы из кэша activate cache return answer OMS -> Shcat: POST method rests.get activate Shcat return answer API POST OMS -> Susanin: POST method get_logistic_chains_with_priority activate Susanin return answer API POST OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады return answer API GET ARM --> user: Рендерит данные в модальном окне @enduml