public async Task <IActionResult> GetCoupons() { try { var coupons = await _couponService.GetActivatedCouponsAsync(); if (!coupons.Any()) { return(NotFound()); } return(Ok(coupons)); } catch (NotFoundException ex) { return(NotFound(ex.Message)); } catch (Exception ex) { _logger.LogCritical($"GetCoupons() Error: {ex}"); return(StatusCode(500, "Internal Server Error")); } }