organizacion de institucion y modulo
This commit is contained in:
@@ -1,25 +1,25 @@
|
||||
import {
|
||||
Entity,
|
||||
Column,
|
||||
PrimaryGeneratedColumn,
|
||||
OneToMany,
|
||||
ManyToOne,
|
||||
Entity,
|
||||
JoinColumn,
|
||||
ManyToOne,
|
||||
OneToMany,
|
||||
PrimaryGeneratedColumn,
|
||||
} from 'typeorm';
|
||||
import { Carrito } from '../../carrito/carrito.entity';
|
||||
import { Institucion } from '../../institucion/institucion.entity';
|
||||
import { Institucion } from '../../institucion/entity/institucion.entity';
|
||||
|
||||
@Entity()
|
||||
export class Modulo {
|
||||
@PrimaryGeneratedColumn()
|
||||
id_modulo: number;
|
||||
|
||||
@Column({ type: String, nullable: false, length: 50 })
|
||||
modulo: string;
|
||||
|
||||
@Column({ type: Boolean, nullable: false, default: false })
|
||||
activo: boolean;
|
||||
|
||||
@Column({ type: String, nullable: false, length: 50 })
|
||||
modulo: string;
|
||||
|
||||
@ManyToOne(() => Institucion, (institucion) => institucion.modulos, {
|
||||
eager: true,
|
||||
})
|
||||
|
||||
@@ -8,23 +8,23 @@ import { ModuloUpdateDto } from './dto/modulo-update.dto';
|
||||
export class ModuloController {
|
||||
constructor(private moduloService: ModuloService) {}
|
||||
|
||||
@Get('')
|
||||
@Post()
|
||||
create(@Body() body: ModuloCrearDto) {
|
||||
return this.moduloService.create(body.id_institucion, body.modulo);
|
||||
}
|
||||
|
||||
@Get()
|
||||
get() {
|
||||
return this.moduloService.findAll();
|
||||
}
|
||||
|
||||
@Get('modulos')
|
||||
modulosInstitucion(@Query() query: IdInstitucionDto) {
|
||||
modulos(@Query() query: IdInstitucionDto) {
|
||||
return this.moduloService.findAllByIdInstitucion(
|
||||
Number(query.id_institucion),
|
||||
);
|
||||
}
|
||||
|
||||
@Post()
|
||||
create(@Body() body: ModuloCrearDto) {
|
||||
return this.moduloService.create(body.id_institucion, body.modulo);
|
||||
}
|
||||
|
||||
@Put()
|
||||
update(@Body() body: ModuloUpdateDto) {
|
||||
return this.moduloService.update(body);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { TypeOrmModule } from '@nestjs/typeorm';
|
||||
import { ModuloController } from './modulo.controller';
|
||||
import { Modulo } from './entity/modulo.entity';
|
||||
import { ModuloService } from './modulo.service';
|
||||
import { Modulo } from './entity/modulo.entity';
|
||||
import { InstitucionModule } from '../institucion/institucion.module';
|
||||
|
||||
@Module({
|
||||
|
||||
@@ -5,8 +5,8 @@ import {
|
||||
} from '@nestjs/common';
|
||||
import { InjectRepository } from '@nestjs/typeorm';
|
||||
import { Repository } from 'typeorm';
|
||||
import { Modulo } from './entity/modulo.entity';
|
||||
import { InstitucionService } from '../institucion/institucion.service';
|
||||
import { Modulo } from './entity/modulo.entity';
|
||||
|
||||
@Injectable()
|
||||
export class ModuloService {
|
||||
@@ -15,23 +15,6 @@ export class ModuloService {
|
||||
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) {
|
||||
const institucion = await this.institucionService.findById(id_institucion);
|
||||
const nuevoModulo = this.moduloRepository.create({
|
||||
@@ -51,6 +34,23 @@ export class ModuloService {
|
||||
.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>) {
|
||||
const modulo = await this.findById(attrs.id_modulo);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user