@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