pos-be/src/modules/user-related/user/user.module.ts

57 lines
2.5 KiB
TypeScript

import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
import { TypeOrmModule } from '@nestjs/typeorm';
import { CONNECTION_NAME } from 'src/core/strings/constants/base.constants';
import { UserDataService } from './data/services/user-data.service';
import { UserReadService } from './data/services/user-read.service';
import { UserReadController } from './infrastructure/user-read.controller';
import { UserReadOrchestrator } from './domain/usecases/user-read.orchestrator';
import { UserDataController } from './infrastructure/user-data.controller';
import { UserDataOrchestrator } from './domain/usecases/user-data.orchestrator';
import { CreateUserManager } from './domain/usecases/managers/create-user.manager';
import { CqrsModule } from '@nestjs/cqrs';
import { IndexUserManager } from './domain/usecases/managers/index-user.manager';
import { DeleteUserManager } from './domain/usecases/managers/delete-user.manager';
import { UpdateUserManager } from './domain/usecases/managers/update-user.manager';
import { ActiveUserManager } from './domain/usecases/managers/active-user.manager';
import { ConfirmUserManager } from './domain/usecases/managers/confirm-user.manager';
import { InactiveUserManager } from './domain/usecases/managers/inactive-user.manager';
import { DetailUserManager } from './domain/usecases/managers/detail-user.manager';
import { BatchDeleteUserManager } from './domain/usecases/managers/batch-delete-user.manager';
import { BatchActiveUserManager } from './domain/usecases/managers/batch-active-user.manager';
import { BatchConfirmUserManager } from './domain/usecases/managers/batch-confirm-user.manager';
import { BatchInactiveUserManager } from './domain/usecases/managers/batch-inactive-user.manager';
import { UserModel } from './data/models/user.model';
import { UpdatePasswordUserManager } from './domain/usecases/managers/update-password-user.manager';
@Module({
imports: [
ConfigModule.forRoot(),
TypeOrmModule.forFeature([UserModel], CONNECTION_NAME.DEFAULT),
CqrsModule,
],
controllers: [UserDataController, UserReadController],
providers: [
IndexUserManager,
DetailUserManager,
CreateUserManager,
DeleteUserManager,
UpdateUserManager,
UpdatePasswordUserManager,
ActiveUserManager,
ConfirmUserManager,
InactiveUserManager,
BatchDeleteUserManager,
BatchActiveUserManager,
BatchConfirmUserManager,
BatchInactiveUserManager,
UserDataService,
UserReadService,
UserDataOrchestrator,
UserReadOrchestrator,
],
})
export class UserModule {}