handler method
- @override
override
Must be implemented
Implementation
@override
FutureOr<Response> handler() => checkApiSecret(request).fold(
(errorResponse) => errorResponse,
(_) async {
final action =
HasuraAction.fromJson(jsonDecode(await request.readAsString()));
final orderUmbrella = OrderUmbrella.fromJson(action.input);
if (endpoint == 'order_recalc') {
final failureOrResult = await repository.recalcOrder(orderUmbrella);
return failureOrResult.fold(
(failure) {
print('OrderUmbrellaController (order_recalc) error: $failure');
return Response.internalServerError(
body: jsonEncode({'message': '$failure'}),
);
},
(result) {
return Response.ok(
jsonEncode(result),
headers: {'Content-Type': 'application/json'},
);
},
);
} else if (endpoint == 'order_edit') {
final failureOrResult = await repository
.editOrderAndRewritePositionHasura(orderUmbrella);
return failureOrResult.fold(
(failure) {
print('OrderUmbrellaController (order_edit) error: $failure');
return Response.internalServerError(
body: jsonEncode({'message': '$failure'}),
);
},
(result) {
return Response.ok(
jsonEncode(result),
headers: {'Content-Type': 'application/json'},
);
},
);
} else {
return Response.notFound('Not found endpoint in Proxy Controller');
}
},
);