add entities for db
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
DB_HOST: 'localhost'
|
||||
DB_PORT: 3306
|
||||
DB_USERNAME: 'root'
|
||||
DB_PASSWORD: 'Test2024'
|
||||
DB_NAME: 'pdi'
|
||||
DB_SYNCHRONIZE: true
|
||||
Generated
+535
-67
File diff suppressed because it is too large
Load Diff
+6
-1
@@ -21,10 +21,15 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@nestjs/common": "^10.0.0",
|
||||
"@nestjs/config": "^3.2.3",
|
||||
"@nestjs/core": "^10.0.0",
|
||||
"@nestjs/platform-express": "^10.0.0",
|
||||
"@nestjs/typeorm": "^10.0.2",
|
||||
"dotenv": "^16.4.5",
|
||||
"mysql2": "^3.11.1",
|
||||
"reflect-metadata": "^0.1.13",
|
||||
"rxjs": "^7.8.1"
|
||||
"rxjs": "^7.8.1",
|
||||
"typeorm": "^0.3.20"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nestjs/cli": "^10.0.0",
|
||||
|
||||
+34
-2
@@ -3,9 +3,41 @@ import { AppController } from './app.controller';
|
||||
import { AppService } from './app.service';
|
||||
import { AuthModule } from './auth/auth.module';
|
||||
import { UsersModule } from './users/users.module';
|
||||
|
||||
import { TypeOrmModule } from '@nestjs/typeorm';
|
||||
import { config } from 'dotenv';
|
||||
import { ConfigModule } from '@nestjs/config';
|
||||
import { Carrera } from './entities/carreras.entity';
|
||||
import { ComentarioEje } from './entities/comentarioEjes.entity';
|
||||
import { EjeEstrategico } from './entities/ejesEstrategicos.entity';
|
||||
import { LineaProgramatica } from './entities/LineaProgramatica.entity';
|
||||
import { TipoUsuarioEntity } from './entities/tipoUsuario.entity';
|
||||
import { UsuarioEntity } from './entities/usuario.entity';
|
||||
config({ path: '.env' });
|
||||
@Module({
|
||||
imports: [AuthModule, UsersModule],
|
||||
imports: [
|
||||
AuthModule,
|
||||
UsersModule,
|
||||
ConfigModule.forRoot({
|
||||
isGlobal: true,
|
||||
}),
|
||||
TypeOrmModule.forRoot({
|
||||
type: 'mysql',
|
||||
host: process.env.DB_HOST,
|
||||
port: parseInt(process.env.DB_PORT),
|
||||
username: process.env.DB_USERNAME,
|
||||
password: process.env.DB_PASSWORD,
|
||||
database: process.env.DB_NAME,
|
||||
synchronize: true,
|
||||
entities: [
|
||||
Carrera,
|
||||
ComentarioEje,
|
||||
EjeEstrategico,
|
||||
LineaProgramatica,
|
||||
TipoUsuarioEntity,
|
||||
UsuarioEntity,
|
||||
],
|
||||
}),
|
||||
],
|
||||
controllers: [AppController],
|
||||
providers: [AppService],
|
||||
})
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
import {
|
||||
Entity,
|
||||
Column,
|
||||
PrimaryGeneratedColumn,
|
||||
ManyToOne,
|
||||
JoinColumn,
|
||||
} from 'typeorm';
|
||||
import { EjeEstrategico } from './ejesEstrategicos.entity';
|
||||
|
||||
@Entity('lineas_programaticas')
|
||||
export class LineaProgramatica {
|
||||
@PrimaryGeneratedColumn('increment', { type: 'bigint' })
|
||||
id: number;
|
||||
|
||||
@ManyToOne(
|
||||
() => EjeEstrategico,
|
||||
(ejeEstrategico) => ejeEstrategico.lineasProgramaticas,
|
||||
)
|
||||
@JoinColumn({ name: 'eje_estrategico_id' })
|
||||
ejeEstrategico: EjeEstrategico;
|
||||
|
||||
@Column('text')
|
||||
descripcion: string;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
|
||||
import { UsuarioEntity } from './usuario.entity';
|
||||
|
||||
@Entity('carreras')
|
||||
export class Carrera {
|
||||
@PrimaryGeneratedColumn('increment', { type: 'bigint' })
|
||||
id: number;
|
||||
|
||||
@Column('text')
|
||||
nombre: string;
|
||||
|
||||
@OneToMany(() => UsuarioEntity, (usuario) => usuario.carrera)
|
||||
usuarios: UsuarioEntity[];
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
import {
|
||||
Entity,
|
||||
Column,
|
||||
PrimaryGeneratedColumn,
|
||||
ManyToOne,
|
||||
JoinColumn,
|
||||
} from 'typeorm';
|
||||
import { UsuarioEntity } from './usuario.entity';
|
||||
import { LineaProgramatica } from './LineaProgramatica.entity';
|
||||
import { EjeEstrategico } from './ejesEstrategicos.entity';
|
||||
|
||||
@Entity('comentarios_ejes')
|
||||
export class ComentarioEje {
|
||||
@PrimaryGeneratedColumn('increment', { type: 'bigint' })
|
||||
id: number;
|
||||
|
||||
@ManyToOne(() => UsuarioEntity, (usuario) => usuario.comentarios)
|
||||
@JoinColumn({ name: 'usuario_id' })
|
||||
usuario: UsuarioEntity;
|
||||
|
||||
@ManyToOne(
|
||||
() => LineaProgramatica,
|
||||
(lineaProgramatica) => lineaProgramatica.descripcion,
|
||||
{ nullable: true },
|
||||
)
|
||||
@JoinColumn({ name: 'linea_programatica_id' })
|
||||
lineaProgramatica: LineaProgramatica;
|
||||
|
||||
@ManyToOne(
|
||||
() => EjeEstrategico,
|
||||
(ejeEstrategico) => ejeEstrategico.comentarios,
|
||||
{ nullable: true },
|
||||
)
|
||||
@JoinColumn({ name: 'eje_estrategico_id' })
|
||||
ejeEstrategico: EjeEstrategico;
|
||||
|
||||
@Column('text')
|
||||
comentario: string;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
|
||||
import { ComentarioEje } from './comentarioEjes.entity';
|
||||
import { LineaProgramatica } from './LineaProgramatica.entity';
|
||||
|
||||
@Entity('ejes_estrategicos')
|
||||
export class EjeEstrategico {
|
||||
@PrimaryGeneratedColumn('increment', { type: 'bigint' })
|
||||
id: number;
|
||||
|
||||
@Column('text')
|
||||
nombre: string;
|
||||
|
||||
@Column('text')
|
||||
objetivo: string;
|
||||
|
||||
@Column('text')
|
||||
lineas_programaticas: string;
|
||||
|
||||
@OneToMany(
|
||||
() => ComentarioEje,
|
||||
(comentarioEje) => comentarioEje.ejeEstrategico,
|
||||
)
|
||||
comentarios: ComentarioEje[];
|
||||
|
||||
@OneToMany(
|
||||
() => LineaProgramatica,
|
||||
(lineaProgramatica) => lineaProgramatica.ejeEstrategico,
|
||||
)
|
||||
lineasProgramaticas: LineaProgramatica[];
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
|
||||
import { UsuarioEntity } from './usuario.entity';
|
||||
|
||||
@Entity('tipos_usuarios')
|
||||
export class TipoUsuarioEntity {
|
||||
@PrimaryGeneratedColumn('increment', { type: 'bigint' })
|
||||
id: number;
|
||||
|
||||
@Column('text')
|
||||
tipo: string;
|
||||
|
||||
@OneToMany(() => UsuarioEntity, (usuario) => usuario.tipoUsuario)
|
||||
usuarios: UsuarioEntity[];
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
import {
|
||||
Entity,
|
||||
Column,
|
||||
PrimaryGeneratedColumn,
|
||||
ManyToOne,
|
||||
JoinColumn,
|
||||
OneToMany,
|
||||
} from 'typeorm';
|
||||
import { Carrera } from './carreras.entity';
|
||||
import { TipoUsuarioEntity } from './tipoUsuario.entity';
|
||||
import { ComentarioEje } from './comentarioEjes.entity';
|
||||
|
||||
@Entity('usuarios')
|
||||
export class UsuarioEntity {
|
||||
@PrimaryGeneratedColumn('increment', { type: 'bigint' })
|
||||
id: number;
|
||||
|
||||
@Column('text')
|
||||
numero_identificacion: string;
|
||||
|
||||
@Column('date', { nullable: true })
|
||||
fecha_nacimiento: Date;
|
||||
|
||||
@Column('text', { nullable: true })
|
||||
rfc: string;
|
||||
|
||||
@ManyToOne(() => Carrera, (carrera) => carrera.usuarios, { nullable: true })
|
||||
@JoinColumn({ name: 'carrera_id' })
|
||||
carrera: Carrera;
|
||||
|
||||
@ManyToOne(() => TipoUsuarioEntity, (tipoUsuario) => tipoUsuario.usuarios, {
|
||||
nullable: true,
|
||||
})
|
||||
@JoinColumn({ name: 'tipo_usuario_id' })
|
||||
tipoUsuario: TipoUsuarioEntity;
|
||||
|
||||
@OneToMany(() => ComentarioEje, (comentarioEje) => comentarioEje.usuario)
|
||||
comentarios: ComentarioEje[];
|
||||
}
|
||||
@@ -1,4 +1,7 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
|
||||
export type User = any;
|
||||
@Injectable()
|
||||
export class UsersService {}
|
||||
export class UsersService {
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user