chore: add all notification sewrvice to the queue
This commit is contained in:
@@ -1,17 +1,45 @@
|
||||
import { BullModule } from "@nestjs/bullmq";
|
||||
import { Module } from "@nestjs/common";
|
||||
import { ConfigModule } from "@nestjs/config";
|
||||
import { TypeOrmModule } from "@nestjs/typeorm";
|
||||
|
||||
import { NOTIFICATION } from "./constants";
|
||||
import { LoggerModule } from "../logger/logger.module";
|
||||
import { SettingModule } from "../settings/settings.module";
|
||||
import { UtilsModule } from "../utils/utils.module";
|
||||
import { Notification } from "./entities/notification.entity";
|
||||
import { NotificationController } from "./notifications.controller";
|
||||
import { NotificationsService } from "./providers/notifications.service";
|
||||
import { NotificationProcessor } from "./queue/notification.processor";
|
||||
import { NotificationQueue } from "./queue/notification.queue";
|
||||
import { NotificationRepository } from "./repositories/notifications.repository";
|
||||
import { SettingModule } from "../settings/settings.module";
|
||||
import { UtilsModule } from "../utils/utils.module";
|
||||
import { NotificationSetting } from "../settings/entities/notification-setting.entity";
|
||||
import { EmailService } from "../utils/providers/email.service";
|
||||
import { SmsService } from "../utils/providers/sms.service";
|
||||
|
||||
@Module({
|
||||
imports: [TypeOrmModule.forFeature([Notification]), UtilsModule, SettingModule],
|
||||
providers: [NotificationRepository, NotificationsService],
|
||||
imports: [
|
||||
ConfigModule,
|
||||
LoggerModule,
|
||||
TypeOrmModule.forFeature([Notification, NotificationSetting]),
|
||||
BullModule.registerQueue({
|
||||
name: NOTIFICATION.QUEUE_NAME,
|
||||
defaultJobOptions: {
|
||||
attempts: NOTIFICATION.SEND_NOTIFICATION_JOB_ATTEMPTS,
|
||||
backoff: {
|
||||
type: "exponential",
|
||||
delay: NOTIFICATION.SEND_NOTIFICATION_JOB_BACKOFF,
|
||||
},
|
||||
removeOnComplete: true,
|
||||
removeOnFail: false,
|
||||
delay: NOTIFICATION.SEND_NOTIFICATION_JOB_DELAY,
|
||||
},
|
||||
}),
|
||||
UtilsModule,
|
||||
SettingModule,
|
||||
],
|
||||
providers: [NotificationRepository, NotificationsService, NotificationQueue, NotificationProcessor, SmsService, EmailService],
|
||||
controllers: [NotificationController],
|
||||
exports: [NotificationRepository, NotificationsService],
|
||||
exports: [NotificationRepository, NotificationsService, NotificationQueue],
|
||||
})
|
||||
export class NotificationModule {}
|
||||
|
||||
Reference in New Issue
Block a user