From ba711704182193e23b195d05a48f499e8d729e70 Mon Sep 17 00:00:00 2001
From: remip <rpapin@grandlyon.com>
Date: Mon, 5 Oct 2020 10:33:09 +0200
Subject: [PATCH] Use mail service in monthlyReport

---
 src/models/mail.model.ts              | 10 ----------
 src/services/mail.service.ts          |  9 ++-------
 src/targets/services/monthlyReport.ts | 11 +++--------
 3 files changed, 5 insertions(+), 25 deletions(-)
 delete mode 100644 src/models/mail.model.ts

diff --git a/src/models/mail.model.ts b/src/models/mail.model.ts
deleted file mode 100644
index 208f77ad5..000000000
--- a/src/models/mail.model.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-export interface MailInfo {
-  mode: string
-  subject: string
-  parts: MailPart
-}
-
-export interface MailPart {
-  type: string
-  body: string
-}
diff --git a/src/services/mail.service.ts b/src/services/mail.service.ts
index 2cf3c1fc1..708f306c2 100644
--- a/src/services/mail.service.ts
+++ b/src/services/mail.service.ts
@@ -1,20 +1,15 @@
 import { Client } from 'cozy-client'
-import { MailInfo } from 'models'
 
 export default class MailService {
-  public async SendMail(
-    client: Client,
-    mailInfo: Record<string, any>
-  ): Promise<string> {
+  public SendMail(client: Client, mailInfo: Record<string, any>): void {
     try {
       const jobCollection = client.collection('io.cozy.jobs')
-      await jobCollection.create('sendmail', mailInfo)
+      jobCollection.create('sendmail', mailInfo)
       console.log('Welcome Mail Sent')
     } catch (e) {
       // eslint-disable-next-line no-console
       console.error(e)
     }
-    return 'ok'
   }
 
   public CreateBodyWelcome(username: string, clientUrl: string) {
diff --git a/src/targets/services/monthlyReport.ts b/src/targets/services/monthlyReport.ts
index adadaf71f..7ec57a140 100644
--- a/src/targets/services/monthlyReport.ts
+++ b/src/targets/services/monthlyReport.ts
@@ -8,6 +8,7 @@ import { TimePeriod } from 'models'
 import UserProfileService from 'services/userProfile.service'
 import ConsumptionService from 'services/consumption.service'
 import PerformanceIndicatorService from 'services/performanceIndicator.service'
+import MailService from 'services/mail.service'
 
 const log = logger.namespace('report')
 
@@ -121,15 +122,9 @@ const monthlyReport = async ({ client }: MonthlyReportProps) => {
       },
     ],
   }
-
   log('info', 'Sending mail...')
-  try {
-    const jobCollection = client.collection('io.cozy.jobs')
-    await jobCollection.create('sendmail', mailData)
-  } catch (e) {
-    // eslint-disable-next-line no-console
-    console.error(e)
-  }
+  const mailService = new MailService()
+  mailService.SendMail(client, mailData)
 }
 
 runService(monthlyReport)
-- 
GitLab