GetVendorDatalinkExcelController class

Введение

  1. Описание: Контроллер GetVendorDatalinkExcelController предоставляет конечную точку API для создания excel отчётов для поставщиков.
  2. Маршруты: Обрабатывается Post-запрос по маршруту /api/vendor-datalink//report/.

Формат запроса

reportType - вид отчёта. Например: available-stocks.

Валидация и преобразование данных

Основная логика

  1. Составление отчёта available-stocks: Получаем продукты доступные для поставщика. Создаём таблицу Available stocks c 3 колонками: NAME, SKU, TOTAL. Таблица сохраняется в файл available_stocks.xlsx.
  2. Остальные отчёты: Получаем все заказы поставщика. По id заказов получаем список orderChanges и products. Для каждого заказа формируем OrderInfoForExcel объект, содержащий информацию по продуктам. Имея список продуктов, составляется таблица, как в предыдущем пункте, но с названием All orders. Таблица сохраняется в файл all_orders.xlsx.

Взаимодействие с микросервисами

  1. Hasura: Получение продуктов и заказов.

Ответы сервера

  1. Успешное создание excel файла: Возвращается статус 200 OK.
  2. Ошибки создания excel файла. Ожидаемый статус - 500 internalServerError.
Inheritance
  • Object
  • Controller
  • GetVendorDatalinkExcelController

Constructors

GetVendorDatalinkExcelController({required Request request, required VendorDatalink vendorDatalink, required String reportType})

Properties

endpoint ↔ String
getter/setter pairinherited
hashCode → int
The hash code for this object.
no setterinherited
postgresDatalinkRepository → PostgresDatalinkRepository
final
reportType → String
final
request ↔ Request
getter/setter pairoverride
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
final

Methods

call(Request request) → FutureOr<Response>
inherited
handler() → Future<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