Files
plantUML/oms/interface-arm/order/history.puml
2025-12-19 12:45:15 +03:00

143 lines
7.3 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@startuml
scale 800*800
mainframe Взаимодействие с историей изменения заказ
actor Пользователь as user
participant ARM as ARM
participant OMS as OMS
participant History as History
autonumber
user -> ARM: Нажимает кнопку "История изменений"
ARM -> OMS: REST GET /order-history
OMS -> History: REST GET api/v1/order_history_short/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Рендерит страницу "История изменений"
user -> ARM: Нажимает кнопку "Подробнее" в корректировке
ARM -> OMS: REST GET /order-history-event
OMS -> History: REST GET api/v1/event_changed/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает полную информацию о корректировке
user -> ARM: Выбирает фильтр по дате или по типу корректировки
ARM -> OMS: REST GET /order-history-filters
OMS -> History: REST GET api/v1/events_from_entity/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает корректировки по заданным условиям
user -> ARM: Вводит идентификатор корректировки и нажимает Enter
ARM -> OMS: REST GET /order-history-event
OMS -> History: REST GET api/v1/event_changed/
History --> OMS: answer
OMS --> ARM: answer
ARM --> user: Отображает корректировки по заданным условиям
@enduml
@startuml
scale 1000*1000
mainframe Взаимодействие с историей изменения заказа
actor Пользователь as user
participant ARM as ARM
participant Gateway as Gateway
participant History as History
participant Bifrost as Bifrost
autonumber
user -> ARM: Нажимает кнопку "История изменений"
ARM -> Gateway: REST GET /history/v1/order/{orderID}
Gateway -> History: gRPC GetChangesByOrderIDAndParameters()
History --> Gateway: EventsByOrderIDResponse
Gateway -> Bifrost: gRPC GetUsersByIDs() [для получения имен менеджеров]
Bifrost --> Gateway: UserInfo[]
Gateway --> ARM: Таблица истории изменений с именами менеджеров
ARM --> user: Рендерит модальное окно "История изменений"
user -> ARM: Нажимает кнопку "Подробнее" в корректировке
ARM -> Gateway: REST GET /history/v1/events?eventIDs=[eventID]
Gateway -> History: gRPC GetEventChangesByIDs()
History --> Gateway: EventChangesByIDResponse[]
Gateway -> Bifrost: gRPC GetUserByIDV2() [для получения имени менеджера]
Bifrost --> Gateway: UserInfo
Gateway --> ARM: Таблица истории изменений с именами менеджеров
ARM --> user: Отображает полную информацию о корректировке
user -> ARM: Выбирает фильтр по дате или по типу корректировки
ARM -> Gateway: REST GET /history/v1/order/{orderID}?eventCorrectionType=...&createdAts=...
Gateway -> History: gRPC GetChangesByOrderIDAndParameters() [с фильтрами]
History --> Gateway: EventsByOrderIDResponse
Gateway -> Bifrost: gRPC GetUsersByIDs() [для получения имен менеджеров]
Bifrost --> Gateway: UserInfo[]
Gateway --> ARM: Таблица истории изменений с именами менеджеров
ARM --> user: Отображает корректировки по заданным условиям
user -> ARM: Вводит идентификатор корректировки и нажимает Enter
ARM -> Gateway: REST GET /history/v1/events?eventIDs=[eventID]
Gateway -> History: gRPC GetEventChangesByIDs()
History --> Gateway: EventChangesByIDResponse[]
Gateway -> Bifrost: gRPC GetUserByIDV2() [для получения имени менеджера]
Bifrost --> Gateway: UserInfo
Gateway --> ARM: История изменений с именами менеджеров
ARM --> user: Отображает корректировки по заданным условиям
@enduml
@startuml
scale 1200*1200
mainframe Взаимодействие с историей изменения заказа
actor Пользователь as user
participant ARM as ARM
participant Gateway as Gateway
participant History as History
participant Bifrost as Bifrost
autonumber
user -> ARM: Нажимает кнопку "История изменений"
ARM -> Gateway: REST GET /history/v1/filters
Gateway -> History: gRPC GetTypesOfEvents()
History --> Gateway: AvailableActions (список типов событий)
Gateway --> ARM: HistoryFiltersList (eventCorrectionType[])
ARM -> Gateway: REST GET /history/v1/order/{orderID}
Gateway -> History: gRPC GetChangesByOrderIDAndParameters()
History --> Gateway: EventsByOrderIDResponse
Gateway -> Bifrost: gRPC GetUsersByIDs() [для получения имен менеджеров]
Bifrost --> Gateway: UserInfo[]
Gateway --> ARM: HistoryList (события с именами менеджеров)
ARM --> user: Рендерит модальное окно "История изменений" с фильтрами
user -> ARM: Нажимает кнопку "Подробнее" в корректировке
ARM -> Gateway: REST GET /history/v1/events?eventIDs=[eventID]
Gateway -> History: gRPC GetEventChangesByIDs()
History --> Gateway: EventChangesByIDResponse[]
Gateway -> Bifrost: gRPC GetUserByIDV2() [для получения имени менеджера]
Bifrost --> Gateway: UserInfo
Gateway --> ARM: HistoryEvent (с полными изменениями)
ARM --> user: Отображает полную информацию о корректировке
alt Первый тип поиска по дате и/или типу корректировки
user -> ARM: Выбирает фильтр по дате или по типу корректировки
ARM -> Gateway: REST GET /history/v1/order/{orderID}?eventCorrectionType=...&createdAts=...
Gateway -> History: gRPC GetChangesByOrderIDAndParameters() [с фильтрами]
History --> Gateway: EventsByOrderIDResponse
Gateway -> Bifrost: gRPC GetUsersByIDs() [для получения имен менеджеров]
Bifrost --> Gateway: UserInfo[]
Gateway --> ARM: HistoryList (отфильтрованные события)
ARM --> user: Отображает корректировки по заданным условиям
else Второй тип поиска по идентификатору корректировки
user -> ARM: Вводит идентификатор корректировки и нажимает Enter
ARM -> Gateway: REST GET /history/v1/events?eventIDs=[eventID]
Gateway -> History: gRPC GetEventChangesByIDs()
History --> Gateway: EventChangesByIDResponse[]
Gateway -> Bifrost: gRPC GetUserByIDV2() [для получения имени менеджера]
Bifrost --> Gateway: UserInfo
Gateway --> ARM: HistoryEvent (с полными изменениями)
ARM --> user: Отображает корректировки по заданным условиям
end
@enduml