import { Module } from '@nestjs/common'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { AppController } from './app.controller'; import { TypeOrmModule } from '@nestjs/typeorm'; import { AppService } from './app.service'; import { CarritoModule } from './carrito/carrito.module'; import { DiaModule } from './dia/dia.module'; import { EquipoModule } from './equipo/equipo.module'; import { HoraExcepcionModule } from './hora-excepcion/hora-excepcion.module'; import { InfraccionModule } from './infraccion/infraccion.module'; import { InstitucionModule } from './institucion/institucion.module'; import { InstitucionDiaModule } from './institucion-dia/institucion-dia.module'; import { InstitucionInfraccionModule } from './institucion-infraccion/institucion-infraccion.module'; import { ModuloModule } from './modulo/modulo.module'; import { MotivoModule } from './motivo/motivo.module'; import { MultaModule } from './multa/multa.module'; import { OperadorModule } from './operador/operador.module'; import { PrestamoModule } from './prestamo/prestamo.module'; import { ProgramaModule } from './programa/programa.module'; import { StatusModule } from './status/status.module'; import { TipoCarritoModule } from './tipo-carrito/tipo-carrito.module'; import { TipoUsuarioModule } from './tipo-usuario/tipo-usuario.module'; import { UsuarioModule } from './usuario/usuario.module'; import { CarreraModule } from './carrera/carrera.module'; import { TipoEntradaModule } from './tipo-entrada/tipo-entrada.module'; import { EquipoTipoEntradaModule } from './equipo-tipo-entrada/equipo-tipo-entrada.module'; import { CarreraProgramaModule } from './carrera-programa/carrera-programa.module'; import { Carrera } from './carrera/carrera.entity'; import { CarreraPrograma } from './carrera-programa/carrera-programa.entity'; import { Carrito } from './carrito/carrito.entity'; import { Dia } from './dia/dia.entity'; import { Equipo } from './equipo/equipo.entity'; import { EquipoTipoEntrada } from './equipo-tipo-entrada/equipo-tipo-entrada.entity'; import { HoraExcepcion } from './hora-excepcion/hora-excepcion.entity'; import { Infraccion } from './infraccion/infraccion.entity'; import { Institucion } from './institucion/institucion.entity'; import { InstitucionDia } from './institucion-dia/institucion-dia.entity'; import { InstitucionInfraccion } from './institucion-infraccion/institucion-infraccion.entity'; import { Modulo } from './modulo/modulo.entity'; import { Motivo } from './motivo/motivo.entity'; import { Multa } from './multa/multa.entity'; import { Operador } from './operador/operador.entity'; import { Prestamo } from './prestamo/prestamo.entity'; import { Programa } from './programa/programa.entity'; import { Status } from './status/status.entity'; import { TipoCarrito } from './tipo-carrito/tipo-carrito.entity'; import { TipoEntrada } from './tipo-entrada/tipo-entrada.entity'; import { TipoUsuario } from './tipo-usuario/tipo-usuario.entity'; import { Usuario } from './usuario/usuario.entity'; @Module({ imports: [ ConfigModule.forRoot({ isGlobal: true }), TypeOrmModule.forRootAsync({ inject: [ConfigService], useFactory: (config: ConfigService) => { return { type: 'mariadb', host: config.get('HOST_DB'), database: config.get('DB'), username: config.get('USER_DB'), password: config.get('PASSWORD_DB'), synchronize: true, entities: [ Carrera, CarreraPrograma, Carrito, Dia, Equipo, EquipoTipoEntrada, HoraExcepcion, Infraccion, Institucion, InstitucionDia, InstitucionInfraccion, Modulo, Motivo, Multa, Operador, Prestamo, Programa, Status, TipoCarrito, TipoEntrada, TipoUsuario, Usuario, ], }; }, }), CarreraModule, CarreraProgramaModule, CarritoModule, DiaModule, EquipoModule, EquipoTipoEntradaModule, HoraExcepcionModule, InfraccionModule, InstitucionModule, InstitucionDiaModule, InstitucionInfraccionModule, ModuloModule, MotivoModule, MultaModule, OperadorModule, PrestamoModule, ProgramaModule, StatusModule, TipoCarritoModule, TipoEntradaModule, TipoUsuarioModule, UsuarioModule, ], controllers: [AppController], providers: [AppService], }) export class AppModule {}