This commit is contained in:
xXpuma99Xx 2022-03-30 18:04:19 -06:00
parent 0cb4d6c6ef
commit 03d161fb54
17 changed files with 329 additions and 18 deletions

View File

@ -1,4 +1,14 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Modulo } from '../modulo/modulo.entity';
import { Equipo } from '../equipo/equipo.entity';
import { TipoCarrito } from '../tipo-carrito/tipo-carrito.entity';
@Entity()
export class Carrito {
@ -10,4 +20,15 @@ export class Carrito {
@Column()
activo: boolean;
@ManyToOne(() => Modulo, (modulo) => modulo.carritos)
@JoinColumn({ name: 'id_modulo' })
modulo: Modulo;
@ManyToOne(() => TipoCarrito, (tipoCarrito) => tipoCarrito.carritos)
@JoinColumn({ name: 'id_tipo_carrito' })
tipoCarrito: TipoCarrito;
@OneToMany(() => Equipo, (equipo) => equipo.carrito)
equipos: Equipo[];
}

View File

@ -1,4 +1,5 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
import { InstitucionDia } from '../institucion-dia/institucion-dia.entity';
@Entity()
export class Dia {
@ -7,4 +8,7 @@ export class Dia {
@Column()
dia: string;
@OneToMany(() => InstitucionDia, (institucionDia) => institucionDia.dia)
institucionesDias: InstitucionDia[];
}

View File

@ -1,4 +1,15 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Carrito } from '../carrito/carrito.entity';
import { Prestamo } from '../prestamo/prestamo.entity';
import { Motivo } from '../motivo/motivo.entity';
import { Status } from '../status/status.entity';
@Entity()
export class Equipo {
@ -16,4 +27,18 @@ export class Equipo {
@Column()
prestado: boolean;
@ManyToOne(() => Carrito, (carrito) => carrito.equipos)
@JoinColumn({ name: 'id_carrito' })
carrito: Carrito;
@ManyToOne(() => Status, (status) => status.equipos)
@JoinColumn({ name: 'id_status' })
status: Status;
@OneToMany(() => Motivo, (motivo) => motivo.equipo)
motivos: Motivo[];
@OneToMany(() => Prestamo, (prestamo) => prestamo.equipo)
prestamos: Prestamo[];
}

View File

@ -1,4 +1,11 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { InstitucionDia } from '../institucion-dia/institucion-dia.entity';
@Entity()
export class HoraExcepcion {
@ -10,4 +17,11 @@ export class HoraExcepcion {
@Column()
hora_fin: Date;
@ManyToOne(
() => InstitucionDia,
(institucionDia) => institucionDia.horasExcepcion,
)
@JoinColumn({ name: 'id_institucion_dia' })
institucionDia: InstitucionDia;
}

View File

@ -1,4 +1,5 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
import { InstitucionInfraccion } from '../institucion-infraccion/institucion-infraccion.entity';
@Entity()
export class Infraccion {
@ -7,4 +8,10 @@ export class Infraccion {
@Column()
infraccion: string;
@OneToMany(
() => InstitucionInfraccion,
(institucionInfraccion) => institucionInfraccion.infraccion,
)
institucionInfracciones: InstitucionInfraccion[];
}

View File

@ -1,4 +1,14 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Institucion } from '../institucion/institucion.entity';
import { Dia } from '../dia/dia.entity';
import { HoraExcepcion } from '../hora-excepcion/hora-excepcion.entity';
@Entity()
export class InstitucionDia {
@ -13,4 +23,18 @@ export class InstitucionDia {
@Column()
activo: boolean;
@ManyToOne(() => Institucion, (institucion) => institucion.institucionesDias)
@JoinColumn({ name: 'id_institucion' })
institucion: Institucion;
@ManyToOne(() => Dia, (dia) => dia.institucionesDias)
@JoinColumn({ name: 'id_dia' })
dia: Dia;
@OneToMany(
() => HoraExcepcion,
(horaExcepcion) => horaExcepcion.institucionDia,
)
horasExcepcion: HoraExcepcion[];
}

View File

@ -1,4 +1,14 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Infraccion } from '../infraccion/infraccion.entity';
import { Institucion } from '../institucion/institucion.entity';
import { Multa } from '../multa/multa.entity';
@Entity()
export class InstitucionInfraccion {
@ -6,5 +16,22 @@ export class InstitucionInfraccion {
id_institucion_infraccion: number;
@Column()
dias: number;
dias_multa: number;
@ManyToOne(
() => Institucion,
(institucion) => institucion.institucionInfracciones,
)
@JoinColumn({ name: 'id_institucion' })
institucion: Institucion;
@ManyToOne(
() => Infraccion,
(infraccion) => infraccion.institucionInfracciones,
)
@JoinColumn({ name: 'id_infraccion' })
infraccion: Infraccion;
@OneToMany(() => Multa, (multa) => multa.institucionInfraccion)
multas: Multa[];
}

View File

@ -1,4 +1,9 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
import { InstitucionDia } from '../institucion-dia/institucion-dia.entity';
import { InstitucionInfraccion } from '../institucion-infraccion/institucion-infraccion.entity';
import { Modulo } from '../modulo/modulo.entity';
import { Operador } from '../operador/operador.entity';
import { Usuario } from '../usuario/usuario.entity';
@Entity()
export class Institucion {
@ -19,4 +24,25 @@ export class Institucion {
@Column()
dias_multa_retraso: number;
@OneToMany(
() => InstitucionDia,
(institucionDia) => institucionDia.institucion,
)
institucionesDias: InstitucionDia[];
@OneToMany(
() => InstitucionInfraccion,
(institucionInfraccion) => institucionInfraccion.institucion,
)
institucionInfracciones: InstitucionInfraccion[];
@OneToMany(() => Modulo, (modulo) => modulo.institucion)
modulos: Modulo[];
@OneToMany(() => Operador, (operador) => operador.institucion)
operadores: Operador[];
@OneToMany(() => Usuario, (usuario) => usuario.institucion)
usuarios: Usuario[];
}

View File

@ -1,4 +1,13 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Carrito } from '../carrito/carrito.entity';
import { Institucion } from '../institucion/institucion.entity';
@Entity()
export class Modulo {
@ -7,4 +16,11 @@ export class Modulo {
@Column()
modulo: string;
@ManyToOne(() => Institucion, (institucion) => institucion.modulos)
@JoinColumn({ name: 'id_institucion' })
institucion: Institucion;
@OneToMany(() => Carrito, (carrito) => carrito.modulo)
carritos: Carrito[];
}

View File

@ -1,4 +1,13 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Equipo } from '../equipo/equipo.entity';
import { Operador } from '../operador/operador.entity';
import { Status } from '../status/status.entity';
@Entity()
export class Motivo {
@ -7,4 +16,16 @@ export class Motivo {
@Column()
motivo: string;
@ManyToOne(() => Equipo, (equipo) => equipo.motivos)
@JoinColumn({ name: 'id_equipo' })
equipo: Equipo;
@ManyToOne(() => Operador, (operador) => operador.motivos)
@JoinColumn({ name: 'id_operador' })
operador: Operador;
@ManyToOne(() => Status, (status) => status.motivos)
@JoinColumn({ name: 'id_status' })
status: Status;
}

View File

@ -1,4 +1,13 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToOne,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { InstitucionInfraccion } from '../institucion-infraccion/institucion-infraccion.entity';
import { Prestamo } from '../prestamo/prestamo.entity';
@Entity()
export class Multa {
@ -13,4 +22,18 @@ export class Multa {
@Column()
fecha_fin: Date;
@Column()
retraso: boolean;
@ManyToOne(
() => InstitucionInfraccion,
(institucionInfraccion) => institucionInfraccion.multas,
)
@JoinColumn({ name: 'id_institucion_infraccion' })
institucionInfraccion: InstitucionInfraccion;
@OneToOne(() => Prestamo)
@JoinColumn({ name: 'id_prestamo' })
prestamo: Prestamo;
}

View File

@ -1,4 +1,15 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Institucion } from '../institucion/institucion.entity';
import { Motivo } from '../motivo/motivo.entity';
import { Prestamo } from '../prestamo/prestamo.entity';
import { TipoUsuario } from '../tipo-usuario/tipo-usuario.entity';
@Entity()
export class Operador {
@ -8,6 +19,26 @@ export class Operador {
@Column()
operador: string;
@Column()
password: string;
@Column()
activo: boolean;
@ManyToOne(() => Institucion, (institucion) => institucion.operadores)
@JoinColumn({ name: 'id_institucion' })
institucion: Institucion;
@ManyToOne(() => TipoUsuario, (tipoUsuario) => tipoUsuario.operadores)
@JoinColumn({ name: 'id_tipo_usuario' })
tipoUsuario: TipoUsuario;
@OneToMany(() => Prestamo, (prestamo) => prestamo.operadorEntrega)
prestamosOperadorEntrega: Prestamo[];
@OneToMany(() => Prestamo, (prestamo) => prestamo.operadorRegreso)
prestamosOperadorRegreso: Prestamo[];
@OneToMany(() => Motivo, (motivo) => motivo.operador)
motivos: Motivo[];
}

View File

@ -1,4 +1,13 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Equipo } from '../equipo/equipo.entity';
import { Operador } from '../operador/operador.entity';
import { Usuario } from '../usuario/usuario.entity';
@Entity()
export class Prestamo {
@ -28,4 +37,26 @@ export class Prestamo {
@Column()
cancelado_operador: boolean;
@ManyToOne(() => Usuario, (usuario) => usuario.prestamos)
@JoinColumn({ name: 'id_usuario' })
usuario: Usuario;
@ManyToOne(() => Equipo, (equipo) => equipo.prestamos)
@JoinColumn({ name: 'id_equipo' })
equipo: Equipo;
@ManyToOne(
() => Operador,
(operadorEntrega) => operadorEntrega.prestamosOperadorEntrega,
)
@JoinColumn({ name: 'id_operador_entrega' })
operadorEntrega: Operador;
@ManyToOne(
() => Operador,
(operadorRegreso) => operadorRegreso.prestamosOperadorRegreso,
)
@JoinColumn({ name: 'id_operador_regreso' })
operadorRegreso: Operador;
}

View File

@ -1,4 +1,6 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
import { Equipo } from '../equipo/equipo.entity';
import { Motivo } from '../motivo/motivo.entity';
@Entity()
export class Status {
@ -7,4 +9,10 @@ export class Status {
@Column()
status: string;
@OneToMany(() => Equipo, (equipo) => equipo.status)
equipos: Equipo[];
@OneToMany(() => Motivo, (motivo) => motivo.status)
motivos: Motivo[];
}

View File

@ -1,4 +1,5 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
import { Carrito } from '../carrito/carrito.entity';
@Entity()
export class TipoCarrito {
@ -7,4 +8,7 @@ export class TipoCarrito {
@Column()
tipo_carrito: string;
@OneToMany(() => Carrito, (carrito) => carrito.tipoCarrito)
carritos: Carrito[];
}

View File

@ -1,4 +1,6 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
import { Usuario } from '../usuario/usuario.entity';
import { Operador } from '../operador/operador.entity';
@Entity()
export class TipoUsuario {
@ -7,4 +9,10 @@ export class TipoUsuario {
@Column()
tipo_usuario: string;
@OneToMany(() => Usuario, (usuario) => usuario.tipoUsuario)
usuarios: Usuario[];
@OneToMany(() => Operador, (operador) => operador.tipoUsuario)
operadores: Operador[];
}

View File

@ -1,4 +1,14 @@
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
import {
Entity,
Column,
PrimaryGeneratedColumn,
OneToMany,
ManyToOne,
JoinColumn,
} from 'typeorm';
import { Institucion } from '../institucion/institucion.entity';
import { Prestamo } from '../prestamo/prestamo.entity';
import { TipoUsuario } from '../tipo-usuario/tipo-usuario.entity';
@Entity()
export class Usuario {
@ -16,4 +26,15 @@ export class Usuario {
@Column()
multa: boolean;
@ManyToOne(() => Institucion, (institucion) => institucion.usuarios)
@JoinColumn({ name: 'id_institucion' })
institucion: Institucion;
@ManyToOne(() => TipoUsuario, (tipoUsuario) => tipoUsuario.usuarios)
@JoinColumn({ name: 'id_tipo_usuario' })
tipoUsuario: TipoUsuario;
@OneToMany(() => Prestamo, (prestamo) => prestamo.usuario)
prestamos: Prestamo[];
}