@@ -5,6 +5,8 @@ import { config } from "src/config/app.config";
55import AnnouncementEmail from "./templates/AnnouncementEmail" ;
66import ContentIssueEmail from "./templates/ContentIssueEmail" ;
77import RegistrationConfirmEmail from "./templates/RegistrationConfirmEmail" ;
8+ import TicketCreatedEmail from "./templates/TicketCreatedEmail" ;
9+ import TicketSolvedEmail from "./templates/TicketSolvedEmail" ;
810import TrackingEmail from "./templates/TrackingEmail" ;
911
1012@Injectable ( )
@@ -59,6 +61,24 @@ export class EmailService {
5961 }
6062 }
6163
64+ async sendTicketCreated ( email : string , name : string , ticketId : string , ticketSubject : string , ticketMessage ?: string ) {
65+ try {
66+ const html = await render ( TicketCreatedEmail ( { name, ticketId, ticketSubject, ticketMessage } ) ) ;
67+ return await this . sendMail ( email , `ได้รับ Ticket #${ ticketId } ของคุณแล้ว` , html ) ;
68+ } catch ( error ) {
69+ this . handleError ( "ticket created" , email , error ) ;
70+ }
71+ }
72+
73+ async sendTicketSolved ( email : string , name : string , ticketId : string , ticketMessage : string , resolution ?: string ) {
74+ try {
75+ const html = await render ( TicketSolvedEmail ( { name, ticketId, ticketMessage, resolution } ) ) ;
76+ return await this . sendMail ( email , `Ticket #${ ticketId } ได้รับการแก้ไขแล้ว` , html ) ;
77+ } catch ( error ) {
78+ this . handleError ( "ticket solved" , email , error ) ;
79+ }
80+ }
81+
6282 private async sendMail ( to : string , subject : string , html : string ) {
6383 const info = await this . transporter . sendMail ( {
6484 from : config . email . nodemailer . from ,
0 commit comments