added addTime

This commit is contained in:
2026-01-23 12:36:14 -06:00
parent 209b54b412
commit 156954abb3
8 changed files with 129 additions and 21 deletions
+67 -2
View File
@@ -9,19 +9,21 @@ import { DataSource } from 'typeorm';
import { chargePrintDto } from './dto/operations.dto';
import { UserService } from 'src/user/user.service';
import { ReciboService } from 'src/recibo/recibo.service';
import { AlumnoInscritoService } from 'src/alumno_inscrito/alumno_inscrito.service';
@Injectable()
export class OperationsService {
constructor(
private readonly dataSource: DataSource,
private readonly alumnoService: AlumnoService,
private readonly alumnoInscritoService: AlumnoInscritoService,
private readonly detalleServicioService: DetalleServicioService,
private readonly userService: UserService,
private readonly reciboService: ReciboService,
) {}
async chargePrint(data: chargePrintDto, id_usuario: number) {
const { monto, id_cuenta } = data;
const { monto, id_cuenta, id_servicio, numero_hojas } = data;
const queryRunner = this.dataSource.createQueryRunner();
await queryRunner.connect();
@@ -38,11 +40,12 @@ export class OperationsService {
const alum = await this.alumnoService.findOne(id_cuenta);
const detalleData = {
servicio: 1,
servicio: id_servicio,
user,
alum,
monto,
fecha_operacion: new Date(),
numero_hojas,
};
await this.detalleServicioService.Create(
@@ -104,4 +107,66 @@ export class OperationsService {
await queryRunner.release();
}
}
async addTime(data, id_usuario: number) {
const {
monto,
id_cuenta,
idPlataforma,
folio_recibo,
fecha_recibo,
} = data;
const studentRegister = await this.alumnoInscritoService.findRegister(
id_cuenta,
idPlataforma,
);
const queryRunner = this.dataSource.createQueryRunner();
await queryRunner.connect();
await queryRunner.startTransaction();
const user = await this.userService.findOne(id_usuario);
const alum = await this.alumnoService.findOne(id_cuenta);
try {
const detalleRecibo = {
folio_recibo,
user,
alum,
fecha_recibo,
monto,
};
await this.reciboService.create(detalleRecibo, queryRunner.manager);
const detalleData = {
servicio: 5,
user,
alum,
monto,
fecha_operacion: new Date(),
};
await this.detalleServicioService.Create(
detalleData,
queryRunner.manager,
);
studentRegister.tiempo_disponible += 3600;
await this.alumnoInscritoService.save(
studentRegister,
queryRunner.manager,
);
await queryRunner.commitTransaction();
return { studentRegister};
} catch (error) {
await queryRunner.rollbackTransaction();
throw new InternalServerErrorException(error.message);
} finally {
await queryRunner.release();
}
}
}