organizacion de institucion y modulo
This commit is contained in:
parent
594af0cde9
commit
29bb3fe79b
@ -35,7 +35,7 @@ import { Equipo } from './equipo/equipo.entity';
|
|||||||
import { EquipoTipoEntrada } from './equipo-tipo-entrada/equipo-tipo-entrada.entity';
|
import { EquipoTipoEntrada } from './equipo-tipo-entrada/equipo-tipo-entrada.entity';
|
||||||
import { HoraExcepcion } from './hora-excepcion/hora-excepcion.entity';
|
import { HoraExcepcion } from './hora-excepcion/hora-excepcion.entity';
|
||||||
import { Infraccion } from './infraccion/infraccion.entity';
|
import { Infraccion } from './infraccion/infraccion.entity';
|
||||||
import { Institucion } from './institucion/institucion.entity';
|
import { Institucion } from './institucion/entity/institucion.entity';
|
||||||
import { InstitucionDia } from './institucion-dia/institucion-dia.entity';
|
import { InstitucionDia } from './institucion-dia/institucion-dia.entity';
|
||||||
import { InstitucionInfraccion } from './institucion-infraccion/institucion-infraccion.entity';
|
import { InstitucionInfraccion } from './institucion-infraccion/institucion-infraccion.entity';
|
||||||
import { Modulo } from './modulo/entity/modulo.entity';
|
import { Modulo } from './modulo/entity/modulo.entity';
|
||||||
|
@ -6,7 +6,7 @@ import {
|
|||||||
ManyToOne,
|
ManyToOne,
|
||||||
JoinColumn,
|
JoinColumn,
|
||||||
} from 'typeorm';
|
} from 'typeorm';
|
||||||
import { Institucion } from '../institucion/institucion.entity';
|
import { Institucion } from '../institucion/entity/institucion.entity';
|
||||||
import { Usuario } from '../usuario/usuario.entity';
|
import { Usuario } from '../usuario/usuario.entity';
|
||||||
import { CarreraPrograma } from '../carrera-programa/carrera-programa.entity';
|
import { CarreraPrograma } from '../carrera-programa/carrera-programa.entity';
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import {
|
|||||||
ManyToOne,
|
ManyToOne,
|
||||||
JoinColumn,
|
JoinColumn,
|
||||||
} from 'typeorm';
|
} from 'typeorm';
|
||||||
import { Institucion } from '../institucion/institucion.entity';
|
import { Institucion } from '../institucion/entity/institucion.entity';
|
||||||
import { Dia } from '../dia/dia.entity';
|
import { Dia } from '../dia/dia.entity';
|
||||||
import { HoraExcepcion } from '../hora-excepcion/hora-excepcion.entity';
|
import { HoraExcepcion } from '../hora-excepcion/hora-excepcion.entity';
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ export class InstitucionDia {
|
|||||||
@Column()
|
@Column()
|
||||||
activo: boolean;
|
activo: boolean;
|
||||||
|
|
||||||
@ManyToOne(() => Institucion, (institucion) => institucion.institucionesDias)
|
@ManyToOne(() => Institucion, (institucion) => institucion.institucionDias)
|
||||||
@JoinColumn({ name: 'id_institucion' })
|
@JoinColumn({ name: 'id_institucion' })
|
||||||
institucion: Institucion;
|
institucion: Institucion;
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ import {
|
|||||||
JoinColumn,
|
JoinColumn,
|
||||||
} from 'typeorm';
|
} from 'typeorm';
|
||||||
import { Infraccion } from '../infraccion/infraccion.entity';
|
import { Infraccion } from '../infraccion/infraccion.entity';
|
||||||
import { Institucion } from '../institucion/institucion.entity';
|
import { Institucion } from '../institucion/entity/institucion.entity';
|
||||||
import { Multa } from '../multa/multa.entity';
|
import { Multa } from '../multa/multa.entity';
|
||||||
|
|
||||||
@Entity()
|
@Entity()
|
||||||
|
@ -1,16 +1,19 @@
|
|||||||
import { Entity, Column, PrimaryGeneratedColumn, OneToMany } from 'typeorm';
|
import { Column, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm';
|
||||||
import { InstitucionDia } from '../institucion-dia/institucion-dia.entity';
|
import { Carrera } from '../../carrera/carrera.entity';
|
||||||
import { InstitucionInfraccion } from '../institucion-infraccion/institucion-infraccion.entity';
|
import { InstitucionDia } from '../../institucion-dia/institucion-dia.entity';
|
||||||
import { Carrera } from '../carrera/carrera.entity';
|
import { InstitucionInfraccion } from '../../institucion-infraccion/institucion-infraccion.entity';
|
||||||
import { Modulo } from '../modulo/entity/modulo.entity';
|
import { Modulo } from '../../modulo/entity/modulo.entity';
|
||||||
import { Operador } from '../operador/operador.entity';
|
import { Operador } from '../../operador/operador.entity';
|
||||||
import { Usuario } from '../usuario/usuario.entity';
|
import { Usuario } from '../../usuario/usuario.entity';
|
||||||
|
|
||||||
@Entity()
|
@Entity()
|
||||||
export class Institucion {
|
export class Institucion {
|
||||||
@PrimaryGeneratedColumn()
|
@PrimaryGeneratedColumn()
|
||||||
id_institucion: number;
|
id_institucion: number;
|
||||||
|
|
||||||
|
@Column()
|
||||||
|
dias_multa_retraso: number;
|
||||||
|
|
||||||
@Column()
|
@Column()
|
||||||
institucion: string;
|
institucion: string;
|
||||||
|
|
||||||
@ -23,14 +26,14 @@ export class Institucion {
|
|||||||
@Column()
|
@Column()
|
||||||
tiempo_recoger: number;
|
tiempo_recoger: number;
|
||||||
|
|
||||||
@Column()
|
@OneToMany(() => Carrera, (carrera) => carrera.institucion)
|
||||||
dias_multa_retraso: number;
|
carreras: Carrera[];
|
||||||
|
|
||||||
@OneToMany(
|
@OneToMany(
|
||||||
() => InstitucionDia,
|
() => InstitucionDia,
|
||||||
(institucionDia) => institucionDia.institucion,
|
(institucionDia) => institucionDia.institucion,
|
||||||
)
|
)
|
||||||
institucionesDias: InstitucionDia[];
|
institucionDias: InstitucionDia[];
|
||||||
|
|
||||||
@OneToMany(
|
@OneToMany(
|
||||||
() => InstitucionInfraccion,
|
() => InstitucionInfraccion,
|
||||||
@ -41,9 +44,6 @@ export class Institucion {
|
|||||||
@OneToMany(() => Modulo, (modulo) => modulo.institucion)
|
@OneToMany(() => Modulo, (modulo) => modulo.institucion)
|
||||||
modulos: Modulo[];
|
modulos: Modulo[];
|
||||||
|
|
||||||
@OneToMany(() => Carrera, (carrera) => carrera.institucion)
|
|
||||||
carreras: Carrera[];
|
|
||||||
|
|
||||||
@OneToMany(() => Operador, (operador) => operador.institucion)
|
@OneToMany(() => Operador, (operador) => operador.institucion)
|
||||||
operadores: Operador[];
|
operadores: Operador[];
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
import { Module } from '@nestjs/common';
|
import { Module } from '@nestjs/common';
|
||||||
import { TypeOrmModule } from '@nestjs/typeorm';
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
||||||
import { InstitucionController } from './institucion.controller';
|
import { InstitucionController } from './institucion.controller';
|
||||||
import { Institucion } from './institucion.entity';
|
|
||||||
import { InstitucionService } from './institucion.service';
|
import { InstitucionService } from './institucion.service';
|
||||||
|
import { Institucion } from './entity/institucion.entity';
|
||||||
|
|
||||||
@Module({
|
@Module({
|
||||||
imports: [TypeOrmModule.forFeature([Institucion])],
|
imports: [TypeOrmModule.forFeature([Institucion])],
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { Injectable, NotFoundException } from '@nestjs/common';
|
import { Injectable, NotFoundException } from '@nestjs/common';
|
||||||
import { Repository } from 'typeorm';
|
import { Repository } from 'typeorm';
|
||||||
import { InjectRepository } from '@nestjs/typeorm';
|
import { InjectRepository } from '@nestjs/typeorm';
|
||||||
import { Institucion } from './institucion.entity';
|
import { Institucion } from './entity/institucion.entity';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class InstitucionService {
|
export class InstitucionService {
|
||||||
|
@ -1,25 +1,25 @@
|
|||||||
import {
|
import {
|
||||||
Entity,
|
|
||||||
Column,
|
Column,
|
||||||
PrimaryGeneratedColumn,
|
Entity,
|
||||||
OneToMany,
|
|
||||||
ManyToOne,
|
|
||||||
JoinColumn,
|
JoinColumn,
|
||||||
|
ManyToOne,
|
||||||
|
OneToMany,
|
||||||
|
PrimaryGeneratedColumn,
|
||||||
} from 'typeorm';
|
} from 'typeorm';
|
||||||
import { Carrito } from '../../carrito/carrito.entity';
|
import { Carrito } from '../../carrito/carrito.entity';
|
||||||
import { Institucion } from '../../institucion/institucion.entity';
|
import { Institucion } from '../../institucion/entity/institucion.entity';
|
||||||
|
|
||||||
@Entity()
|
@Entity()
|
||||||
export class Modulo {
|
export class Modulo {
|
||||||
@PrimaryGeneratedColumn()
|
@PrimaryGeneratedColumn()
|
||||||
id_modulo: number;
|
id_modulo: number;
|
||||||
|
|
||||||
@Column({ type: String, nullable: false, length: 50 })
|
|
||||||
modulo: string;
|
|
||||||
|
|
||||||
@Column({ type: Boolean, nullable: false, default: false })
|
@Column({ type: Boolean, nullable: false, default: false })
|
||||||
activo: boolean;
|
activo: boolean;
|
||||||
|
|
||||||
|
@Column({ type: String, nullable: false, length: 50 })
|
||||||
|
modulo: string;
|
||||||
|
|
||||||
@ManyToOne(() => Institucion, (institucion) => institucion.modulos, {
|
@ManyToOne(() => Institucion, (institucion) => institucion.modulos, {
|
||||||
eager: true,
|
eager: true,
|
||||||
})
|
})
|
||||||
|
@ -8,23 +8,23 @@ import { ModuloUpdateDto } from './dto/modulo-update.dto';
|
|||||||
export class ModuloController {
|
export class ModuloController {
|
||||||
constructor(private moduloService: ModuloService) {}
|
constructor(private moduloService: ModuloService) {}
|
||||||
|
|
||||||
@Get('')
|
@Post()
|
||||||
|
create(@Body() body: ModuloCrearDto) {
|
||||||
|
return this.moduloService.create(body.id_institucion, body.modulo);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Get()
|
||||||
get() {
|
get() {
|
||||||
return this.moduloService.findAll();
|
return this.moduloService.findAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Get('modulos')
|
@Get('modulos')
|
||||||
modulosInstitucion(@Query() query: IdInstitucionDto) {
|
modulos(@Query() query: IdInstitucionDto) {
|
||||||
return this.moduloService.findAllByIdInstitucion(
|
return this.moduloService.findAllByIdInstitucion(
|
||||||
Number(query.id_institucion),
|
Number(query.id_institucion),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Post()
|
|
||||||
create(@Body() body: ModuloCrearDto) {
|
|
||||||
return this.moduloService.create(body.id_institucion, body.modulo);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Put()
|
@Put()
|
||||||
update(@Body() body: ModuloUpdateDto) {
|
update(@Body() body: ModuloUpdateDto) {
|
||||||
return this.moduloService.update(body);
|
return this.moduloService.update(body);
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { Module } from '@nestjs/common';
|
import { Module } from '@nestjs/common';
|
||||||
import { TypeOrmModule } from '@nestjs/typeorm';
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
||||||
import { ModuloController } from './modulo.controller';
|
import { ModuloController } from './modulo.controller';
|
||||||
import { Modulo } from './entity/modulo.entity';
|
|
||||||
import { ModuloService } from './modulo.service';
|
import { ModuloService } from './modulo.service';
|
||||||
|
import { Modulo } from './entity/modulo.entity';
|
||||||
import { InstitucionModule } from '../institucion/institucion.module';
|
import { InstitucionModule } from '../institucion/institucion.module';
|
||||||
|
|
||||||
@Module({
|
@Module({
|
||||||
|
@ -5,8 +5,8 @@ import {
|
|||||||
} from '@nestjs/common';
|
} from '@nestjs/common';
|
||||||
import { InjectRepository } from '@nestjs/typeorm';
|
import { InjectRepository } from '@nestjs/typeorm';
|
||||||
import { Repository } from 'typeorm';
|
import { Repository } from 'typeorm';
|
||||||
import { Modulo } from './entity/modulo.entity';
|
|
||||||
import { InstitucionService } from '../institucion/institucion.service';
|
import { InstitucionService } from '../institucion/institucion.service';
|
||||||
|
import { Modulo } from './entity/modulo.entity';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class ModuloService {
|
export class ModuloService {
|
||||||
@ -15,23 +15,6 @@ export class ModuloService {
|
|||||||
private institucionService: InstitucionService,
|
private institucionService: InstitucionService,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
findById(id_modulo: number) {
|
|
||||||
return this.moduloRepository.findOne({ id_modulo }).then((modulo) => {
|
|
||||||
if (!modulo) throw new NotFoundException('No existe este módulo.');
|
|
||||||
return modulo;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
findAll() {
|
|
||||||
return this.moduloRepository.find();
|
|
||||||
}
|
|
||||||
|
|
||||||
findAllByIdInstitucion(id_institucion: number) {
|
|
||||||
return this.institucionService
|
|
||||||
.findById(id_institucion)
|
|
||||||
.then((institucion) => this.moduloRepository.find({ institucion }));
|
|
||||||
}
|
|
||||||
|
|
||||||
async create(id_institucion: number, modulo: string) {
|
async create(id_institucion: number, modulo: string) {
|
||||||
const institucion = await this.institucionService.findById(id_institucion);
|
const institucion = await this.institucionService.findById(id_institucion);
|
||||||
const nuevoModulo = this.moduloRepository.create({
|
const nuevoModulo = this.moduloRepository.create({
|
||||||
@ -51,6 +34,23 @@ export class ModuloService {
|
|||||||
.then(() => ({ message: 'Se creo correctamente el módulo.' }));
|
.then(() => ({ message: 'Se creo correctamente el módulo.' }));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
findAll() {
|
||||||
|
return this.moduloRepository.find();
|
||||||
|
}
|
||||||
|
|
||||||
|
findAllByIdInstitucion(id_institucion: number) {
|
||||||
|
return this.institucionService
|
||||||
|
.findById(id_institucion)
|
||||||
|
.then((institucion) => this.moduloRepository.find({ institucion }));
|
||||||
|
}
|
||||||
|
|
||||||
|
findById(id_modulo: number) {
|
||||||
|
return this.moduloRepository.findOne({ id_modulo }).then((modulo) => {
|
||||||
|
if (!modulo) throw new NotFoundException('No existe este módulo.');
|
||||||
|
return modulo;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
async update(attrs: Partial<Modulo>) {
|
async update(attrs: Partial<Modulo>) {
|
||||||
const modulo = await this.findById(attrs.id_modulo);
|
const modulo = await this.findById(attrs.id_modulo);
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import {
|
|||||||
ManyToOne,
|
ManyToOne,
|
||||||
JoinColumn,
|
JoinColumn,
|
||||||
} from 'typeorm';
|
} from 'typeorm';
|
||||||
import { Institucion } from '../institucion/institucion.entity';
|
import { Institucion } from '../institucion/entity/institucion.entity';
|
||||||
import { Motivo } from '../motivo/motivo.entity';
|
import { Motivo } from '../motivo/motivo.entity';
|
||||||
import { Prestamo } from '../prestamo/prestamo.entity';
|
import { Prestamo } from '../prestamo/prestamo.entity';
|
||||||
import { TipoUsuario } from '../tipo-usuario/tipo-usuario.entity';
|
import { TipoUsuario } from '../tipo-usuario/tipo-usuario.entity';
|
||||||
|
@ -7,7 +7,7 @@ import {
|
|||||||
JoinColumn,
|
JoinColumn,
|
||||||
} from 'typeorm';
|
} from 'typeorm';
|
||||||
import { Carrera } from '../carrera/carrera.entity';
|
import { Carrera } from '../carrera/carrera.entity';
|
||||||
import { Institucion } from '../institucion/institucion.entity';
|
import { Institucion } from '../institucion/entity/institucion.entity';
|
||||||
import { Prestamo } from '../prestamo/prestamo.entity';
|
import { Prestamo } from '../prestamo/prestamo.entity';
|
||||||
import { TipoUsuario } from '../tipo-usuario/tipo-usuario.entity';
|
import { TipoUsuario } from '../tipo-usuario/tipo-usuario.entity';
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user