From c21edf9e97acdfa37e31d372508e440ffb1fb7b5 Mon Sep 17 00:00:00 2001 From: lemuel Date: Fri, 23 Dec 2022 11:21:51 -0600 Subject: [PATCH] nodemailer service final --- src/nodemailer/dto/nodemailer-message.dto.ts | 5 ---- src/nodemailer/nodemailer.service.ts | 25 ++++++++++---------- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/src/nodemailer/dto/nodemailer-message.dto.ts b/src/nodemailer/dto/nodemailer-message.dto.ts index e188f3a..2a4a211 100644 --- a/src/nodemailer/dto/nodemailer-message.dto.ts +++ b/src/nodemailer/dto/nodemailer-message.dto.ts @@ -1,12 +1,7 @@ -import { IsEmail, IsString } from 'class-validator'; - export class NodemailerMessageDto { - @IsEmail() email: string; - @IsString() html: string; - @IsString() subject: string; } diff --git a/src/nodemailer/nodemailer.service.ts b/src/nodemailer/nodemailer.service.ts index 1f6a5b2..f88ffc2 100644 --- a/src/nodemailer/nodemailer.service.ts +++ b/src/nodemailer/nodemailer.service.ts @@ -5,7 +5,17 @@ import { NodemailerMessageDto } from './dto/nodemailer-message.dto'; @Injectable() export class NodemailerService { - constructor(private configService: ConfigService) {} + private transporter; + + constructor(private configService: ConfigService) { + this.transporter = nodemailer.createTransport({ + service: this.configService.get('NODEMAILER_SERVICE'), + auth: { + user: this.configService.get('NODEMAILER_USER'), + pass: this.configService.get('NODEMAILER_PASWORD'), + }, + }); + } correoPasswordAdmin(operador, password: string) { return `

Estimad@ Responsable del programa PC Puma:

@@ -111,20 +121,11 @@ export class NodemailerService { `; } - async sendEmail(message: NodemailerMessageDto) { - const transporter = nodemailer.createTransport({ - service: this.configService.get('NODEMAILER_SERVICE'), - auth: { - user: this.configService.get('NODEMAILER_USER'), - pass: this.configService.get('NODEMAILER_PASWORD'), - }, - }); - const res = await transporter.sendMail({ + sendEmail(message: NodemailerMessageDto) { + return this.transporter.sendMail({ to: message.email, subject: message.subject, html: message.html, }); - - return res; } }