add time
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
import { Controller, Get, Post, Body, Param, Patch } from '@nestjs/common';
|
||||
import { AlumnoInscritoService } from './alumno_inscrito.service';
|
||||
import { CreateAlumnoInscritoDto } from './dto/create-alumno_inscrito.dto';
|
||||
import {
|
||||
AddTimeDto,
|
||||
CreateAlumnoInscritoDto,
|
||||
} from './dto/create-alumno_inscrito.dto';
|
||||
import { AlumnoInscrito } from './entities/alumno_inscrito.entity';
|
||||
|
||||
@Controller('alumno-inscrito')
|
||||
@@ -17,6 +20,16 @@ export class AlumnoInscritoController {
|
||||
return this.alumnoInscritoService.findAll();
|
||||
}
|
||||
|
||||
@Post('/tiempo')
|
||||
async addTime(@Body() body: AddTimeDto) {
|
||||
const { idCuenta, idPlataforma, tiempoExtra } = body;
|
||||
return this.alumnoInscritoService.addTime(
|
||||
idCuenta,
|
||||
idPlataforma,
|
||||
tiempoExtra,
|
||||
);
|
||||
}
|
||||
|
||||
@Get('/plataforma')
|
||||
async findAllPlataforma() {
|
||||
return this.alumnoInscritoService.findAllPlataforma();
|
||||
|
||||
@@ -16,7 +16,7 @@ export class AlumnoInscritoService {
|
||||
private readonly alumnoInscritoRepo: Repository<AlumnoInscrito>,
|
||||
@InjectRepository(Plataforma)
|
||||
private readonly plataformaRepo: Repository<Plataforma>,
|
||||
private readonly periodoService:PeriodoService
|
||||
private readonly periodoService: PeriodoService,
|
||||
) {}
|
||||
|
||||
async create(dto: CreateAlumnoInscritoDto): Promise<AlumnoInscrito> {
|
||||
@@ -94,4 +94,32 @@ export class AlumnoInscritoService {
|
||||
|
||||
return { message: 'Plática marcada correctamente' };
|
||||
}
|
||||
|
||||
async addTime(
|
||||
idCuenta: number,
|
||||
idPlataforma: number,
|
||||
tiempoExtra: number = 3600,
|
||||
) {
|
||||
const periodoActivo = await this.periodoService.getPeriodoActivo();
|
||||
|
||||
const alumnoInscrito = await this.alumnoInscritoRepo.findOne({
|
||||
where: {
|
||||
alumno: { id_cuenta: idCuenta },
|
||||
plataforma: { id_plataforma: idPlataforma },
|
||||
periodo: { id_periodo: periodoActivo.id_periodo },
|
||||
},
|
||||
});
|
||||
|
||||
if (!alumnoInscrito) {
|
||||
throw new Error(
|
||||
'No existe inscripción para este alumno en el periodo y plataforma actual',
|
||||
);
|
||||
}
|
||||
|
||||
alumnoInscrito.tiempo_disponible += tiempoExtra;
|
||||
|
||||
console.log(alumnoInscrito)
|
||||
|
||||
return await this.alumnoInscritoRepo.save(alumnoInscrito);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,3 +12,8 @@ export class CreateAlumnoInscritoDto {
|
||||
@IsBoolean()
|
||||
realizo_pago?: boolean;
|
||||
}
|
||||
export class AddTimeDto {
|
||||
idCuenta: number;
|
||||
idPlataforma: number;
|
||||
tiempoExtra?: number;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user