74 lines
2.8 KiB
TypeScript
74 lines
2.8 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { ConfigModule, ConfigService } from '@nestjs/config';
|
|
import { ServeStaticModule } from '@nestjs/serve-static';
|
|
import { join } from 'path';
|
|
import { AppController } from './app.controller';
|
|
import { AppService } from './app.service';
|
|
import { AuthModule } from './auth/auth.module';
|
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
|
import { UsersModule } from './users/users.module';
|
|
import { User } from './users/entities/user.entity';
|
|
import { Adscripcion } from './adscripcion/entities/adscripcion.entity';
|
|
import { Categoria } from './categoria/entities/categoria.entity';
|
|
import { DatosAcademicos } from './datos_academicos/entities/datos_academicos.entity';
|
|
import { Edificio } from './edificio/entities/edificio.entity';
|
|
import { LineasInvestigacion } from './lineas_investigacion/entities/lineas_investigacion.entity';
|
|
import { ProyectosAcademicos } from './proyectos_academicos/entities/proyectos_academicos.entity';
|
|
import { TipoUsuario } from './tipo_usuario/entities/tipo_usuario.entity';
|
|
import { ProfesorModule } from './Profesor/profesor.module';
|
|
import { Profesor } from './Profesor/entities/profesor.entity';
|
|
import { AdscripcionModule } from './adscripcion/adscripcion.module';
|
|
import { EdificioModule } from './edificio/edificio.module';
|
|
import { CategoriaModule } from './categoria/categoria.module';
|
|
import { DatosAcademicosModule } from './datos_academicos/datos_academicos.module';
|
|
import { LineasInvestigacionModule } from './lineas_investigacion/lineas_investigacion.module';
|
|
import { ProyectosAcademicosModule } from './proyectos_academicos/proyectos_academicos.module';
|
|
import { ImagenModule } from './images/images.module';
|
|
|
|
@Module({
|
|
imports: [
|
|
AuthModule,
|
|
UsersModule,
|
|
ConfigModule.forRoot({
|
|
envFilePath: '.env',
|
|
isGlobal: true,
|
|
}),
|
|
TypeOrmModule.forRootAsync({
|
|
imports: [ConfigModule, AuthModule, UsersModule],
|
|
inject: [ConfigService],
|
|
useFactory: async (configService: ConfigService) => ({
|
|
type: 'mysql',
|
|
host: configService.get('DB_HOST'),
|
|
port: configService.get('DB_PORT'),
|
|
username: configService.get('DB_USER'),
|
|
password: configService.get('DB_PASSWORD'),
|
|
database: configService.get('DB_DATABASE'),
|
|
entities: [
|
|
Profesor,
|
|
User,
|
|
Adscripcion,
|
|
Categoria,
|
|
Edificio,
|
|
DatosAcademicos,
|
|
LineasInvestigacion,
|
|
ProyectosAcademicos,
|
|
TipoUsuario,
|
|
],
|
|
synchronize: true,
|
|
}),
|
|
}),
|
|
ServeStaticModule.forRoot({
|
|
rootPath: join(__dirname, '..', 'imagenes'),
|
|
serveRoot: '/imagenes',
|
|
}),
|
|
ImagenModule,
|
|
ProfesorModule,
|
|
AdscripcionModule,
|
|
EdificioModule,
|
|
CategoriaModule,
|
|
],
|
|
controllers: [AppController],
|
|
providers: [AppService],
|
|
})
|
|
export class AppModule {}
|