diff --git a/src/email/email-report.entity.ts b/src/email/email-report.entity.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/email/email-report.service.ts b/src/email/email-report.service.ts deleted file mode 100644 index a5e0fc0..0000000 --- a/src/email/email-report.service.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { Injectable } from '@nestjs/common'; -import { PrismaService } from '../prisma/prisma.service'; - -@Injectable() -export class EmailReportService { - constructor(private readonly prisma: PrismaService) {} - - async recordDelivery(emailId: string, status: 'delivered' | 'bounced' | 'opened' | 'clicked') { - return this.prisma.emailReport.create({ - data: { - emailId, - delivered: status === 'delivered', - bounced: status === 'bounced', - opened: status === 'opened', - clicked: status === 'clicked', - }, - }); - } - - async getMetrics() { - const total = await this.prisma.emailReport.count(); - const delivered = await this.prisma.emailReport.count({ where: { delivered: true } }); - const bounced = await this.prisma.emailReport.count({ where: { bounced: true } }); - const opened = await this.prisma.emailReport.count({ where: { opened: true } }); - const clicked = await this.prisma.emailReport.count({ where: { clicked: true } }); - - return { - deliveryRate: delivered / total, - bounceRate: bounced / total, - openRate: opened / total, - clickRate: clicked / total, - }; - } -} diff --git a/src/email/email.controller.ts b/src/email/email.controller.ts deleted file mode 100644 index 4589855..0000000 --- a/src/email/email.controller.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Controller, Get } from '@nestjs/common'; -import { EmailReportService } from './email-report.service'; - -@Controller('emails') -export class EmailController { - constructor(private readonly reportService: EmailReportService) {} - - @Get('reports') - async getReports() { - return this.reportService.getMetrics(); - } -} diff --git a/src/utils/observability.ts b/src/utils/observability.ts deleted file mode 100644 index e79acfd..0000000 --- a/src/utils/observability.ts +++ /dev/null @@ -1,10 +0,0 @@ -export function logEmailEvent(emailId: string, event: string, correlationId?: string) { - console.log(JSON.stringify({ - level: 'info', - type: 'email', - emailId, - event, - correlationId, - timestamp: new Date().toISOString(), - })); -}