add time
This commit is contained in:
@@ -1,6 +1,9 @@
|
|||||||
import { Controller, Get, Post, Body, Param, Patch } from '@nestjs/common';
|
import { Controller, Get, Post, Body, Param, Patch } from '@nestjs/common';
|
||||||
import { AlumnoInscritoService } from './alumno_inscrito.service';
|
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';
|
import { AlumnoInscrito } from './entities/alumno_inscrito.entity';
|
||||||
|
|
||||||
@Controller('alumno-inscrito')
|
@Controller('alumno-inscrito')
|
||||||
@@ -17,6 +20,16 @@ export class AlumnoInscritoController {
|
|||||||
return this.alumnoInscritoService.findAll();
|
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')
|
@Get('/plataforma')
|
||||||
async findAllPlataforma() {
|
async findAllPlataforma() {
|
||||||
return this.alumnoInscritoService.findAllPlataforma();
|
return this.alumnoInscritoService.findAllPlataforma();
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ export class AlumnoInscritoService {
|
|||||||
private readonly alumnoInscritoRepo: Repository<AlumnoInscrito>,
|
private readonly alumnoInscritoRepo: Repository<AlumnoInscrito>,
|
||||||
@InjectRepository(Plataforma)
|
@InjectRepository(Plataforma)
|
||||||
private readonly plataformaRepo: Repository<Plataforma>,
|
private readonly plataformaRepo: Repository<Plataforma>,
|
||||||
private readonly periodoService:PeriodoService
|
private readonly periodoService: PeriodoService,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
async create(dto: CreateAlumnoInscritoDto): Promise<AlumnoInscrito> {
|
async create(dto: CreateAlumnoInscritoDto): Promise<AlumnoInscrito> {
|
||||||
@@ -94,4 +94,32 @@ export class AlumnoInscritoService {
|
|||||||
|
|
||||||
return { message: 'Plática marcada correctamente' };
|
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()
|
@IsBoolean()
|
||||||
realizo_pago?: boolean;
|
realizo_pago?: boolean;
|
||||||
}
|
}
|
||||||
|
export class AddTimeDto {
|
||||||
|
idCuenta: number;
|
||||||
|
idPlataforma: number;
|
||||||
|
tiempoExtra?: number;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user