Files
shopit-back/app/Domains/Notification/documentacion/README.md
ncoronel 02cf3f3773 Add tests for ticket validity and event date formatting
- Create TicketValiditySchemaTest to verify database schema for ticket validity.
- Update CatalogModelsTest to include tests for event date attributes and selection options.
- Introduce EventDateTextFormatterTest for formatting event dates in Spanish.
- Refactor EventModelsTest to include validity time relationships.
- Add SaleDetailResourceTest to ensure correct serialization of purchase items.
- Enhance TicketTest with validity time checks and status management.
- Implement ValidityTimeResourceTest to validate resource output for different validity types.
- Add ValidityTimeTest to verify casting and validity checks for validity time types.
2026-08-11 12:41:35 -03:00

1.1 KiB

Dominio Notification

Propósito

Orquesta notificaciones de negocio por correo a partir de eventos de otros dominios.

Eventos atendidos

  • UserRegistered: dispara el correo de bienvenida.
  • PasswordResetRequested: envía el código de recuperación si el intento sigue pendiente.
  • PurchasePaid: envía la confirmación de pago.
  • TicketsAvailable: informa y entrega la disponibilidad de tickets.

Componentes

Los listeners SendWelcomeEmail, SendPasswordResetEmail, SendPurchasePaidEmail y SendTicketsAvailableEmail delegan en NotificationMailService. Este servicio carga el contexto necesario, renderiza las vistas y envía mediante Integration/MailService.

API y dependencias

No expone rutas HTTP. Consume datos de Auth, Tenant, Purchase y Ticket, y delega la entrega al dominio Integration.

Consideraciones

  • Los listeners reciben identificadores y vuelven a cargar los modelos, evitando transportar entidades obsoletas.
  • La recuperación no se envía si el intento dejó de estar pendiente.
  • Los handlers deben permanecer idempotentes o tolerantes a reintentos de cola.