From 27cd278781187a3734d06f16331fa9119da7adf4 Mon Sep 17 00:00:00 2001
From: Antonin Coquet <ext.sopra.acoquet@grandlyon.com>
Date: Tue, 27 Apr 2021 11:38:27 +0200
Subject: [PATCH] feat: add enpoint for couting newsletter

---
 src/admin/admin.controller.ts        | 7 +++++++
 src/newsletter/newsletter.service.ts | 4 ++++
 2 files changed, 11 insertions(+)

diff --git a/src/admin/admin.controller.ts b/src/admin/admin.controller.ts
index 03442f8e5..b3b650fac 100644
--- a/src/admin/admin.controller.ts
+++ b/src/admin/admin.controller.ts
@@ -111,6 +111,13 @@ export class AdminController {
     else return this.newsletterService.findAll();
   }
 
+  @UseGuards(JwtAuthGuard, RolesGuard)
+  @Roles('admin')
+  @Get('countNewsletterSubscriptions')
+  public async countNewsletterSubscriptions() {
+    return this.newsletterService.countNewsletterSubscriptions();
+  }
+
   @UseGuards(JwtAuthGuard, RolesGuard)
   @Roles('admin')
   @Delete('newsletterSubscription/:email')
diff --git a/src/newsletter/newsletter.service.ts b/src/newsletter/newsletter.service.ts
index c1ca5efc0..16c9d08f1 100644
--- a/src/newsletter/newsletter.service.ts
+++ b/src/newsletter/newsletter.service.ts
@@ -36,6 +36,10 @@ export class NewsletterService {
     return this.newsletterSubscriptionModel.find({ email: new RegExp(searchString, 'i') }).exec();
   }
 
+  public async countNewsletterSubscriptions() {
+    return this.newsletterSubscriptionModel.count({}).exec();
+  }
+
   public async deleteOneEmail(mail: string): Promise<NewsletterSubscription | undefined> {
     const subscription = await this.newsletterSubscriptionModel.findOne({ email: mail }).exec();
     if (!subscription) {
-- 
GitLab