OrderUmbrellaController class
Введение
- Описание: Контроллер
OrderUmbrellaControllerиспользуется для пересчета цены заказа или редактирования заказ. - Маршруты: Обрабатываются POST-запрос по маршруту
/proxy/. endpoint может быть либо order_recalc, либо order_edit.
Формат запроса
Тело запроса: JSON-объект, содержащий идентификатор пользователя. Подробнее в OrderUmbrella.
{
"input": {
"orderId": "12321",
"umbrellaId": "umbrella hash",
"whoDid": "dtk_admin",
"orderItems": List<<a href="../track_point_domain/TrackPoint-class.html">TrackPoint</a>>
}
}
Валидация и преобразование данных
- Преобразовывает JSON в объект HasuraAction.
- Преобразовывает HasuraAction.input в OrderUmbrella.
Основная логика
- Пересчёт цены заказа: если
endpoint=order_recalc, то цена заказа будет пересчитана и отправлена Post запросом в Umbrella Partner. - Редактирование позиций заказа: если
endpoint=order_edit, то. отправляется Post запрос в Umbrella Partner с новыми позициями заказа, а так же в таблице order_positions в hasura перезаписываются позиции закапза.
Взаимодействие с микросервисами
- Hasura: перезапись позиций заказа.
- Umbrella Partner: отправка новой информации по заказу.
Ответы сервера
- Успешная операция (order_edit, order_recalc): Ожидаемый статус -
200 OK. - Endpoint не найден: Ожидаемый статус -
404 notFound. - Ошибка вызова операций: Ожидаемый статус -
500 badRequest.
- Inheritance
-
- Object
- Controller
- OrderUmbrellaController
Constructors
- OrderUmbrellaController(Request request, String endpoint)
Properties
- endpoint ↔ String
-
getter/setter pairoverride
- hashCode → int
-
The hash code for this object.
no setterinherited
- repository → UmbrellaRepository
-
final
- request ↔ Request
-
getter/setter pairoverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
call(
Request request) → FutureOr< Response> -
inherited
-
handler(
) → FutureOr< Response> -
Must be implemented
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
requestAsJson(
) → Future -
Reads request value and parse as json
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited