pcpuma_unam_api/src/app.module.ts
2022-04-04 20:57:22 -05:00

120 lines
4.5 KiB
TypeScript

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<string>('HOST_DB'),
database: config.get<string>('DB'),
username: config.get<string>('USER_DB'),
password: config.get<string>('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 {}