handler method

  1. @override
Future<Response> handler()
override

Must be implemented

Implementation

@override
Future<Response> handler() async {
  final body = await requestAsJson();
  final event = HasuraEvent.fromJson(body['event']);
  final userId = event.data.current!['id'];
  final isBlocked = event.data.current!['blocked'];

  try {
    if (isBlocked) {
      await userRepository.deleteDriverDistrictsForBannedUser(userId!);

      return Response.ok(
        'TriggerUserBannedController success: user $userId was deleted '
        'from driver_districts',
      );
    }
    return Response.badRequest(
      body: "TriggerUserBannedController failure: user $userId isn't blocked",
    );
  } catch (e) {
    return Response.internalServerError(
      body: 'TriggerUserBannedController error: $e',
    );
  }
}