Files
cedetec_api_nest/src/inscripcion-dsc/inscripcion-dsc.service.ts
T
2026-08-08 23:00:46 -06:00

98 lines
3.3 KiB
TypeScript

import { Injectable } from '@nestjs/common';
import { createConnection } from 'mysql2/promise';
@Injectable()
export class InscripcionDscService {
async userVerification(accountNumber: string) {
let connection;
try {
connection = await createConnection({
host: process.env.DB_HOST_DSC,
user: process.env.DB_USER_DSC,
password: process.env.DB_PASS_DSC,
database: process.env.DB_NAME_DSC,
});
// const userInformationQuery = `SELECT A.id_cuenta, nombre, if(AI.platica=true,1,0) as confirmacion FROM alumno A
// JOIN alumno_inscrito AI ON (A.id_cuenta = AI.id_cuenta)
// JOIN periodo P ON (P.id_periodo = AI.id_periodo)
// WHERE A.id_cuenta = "${accountNumber}" and P.activo=true`;
const userInformationQuery = `SELECT A.id_cuenta, nombre, if(AI.platica=true,1,0) as confirmacion FROM alumno A
JOIN alumno_inscrito AI ON (A.id_cuenta = AI.id_cuenta) and (AI.id_plataforma = 1 || AI.id_plataforma = 2)
JOIN periodo P ON (P.id_periodo = AI.id_periodo)
WHERE A.id_cuenta = "${accountNumber}" and P.activo=true`;
console.log('despues de el select', userInformationQuery);
const qryEjemplo = `SELECT * FROM alumno WHERE id_cuenta="${accountNumber}";`;
const [results] = await connection.query(userInformationQuery);
const resultsArray = JSON.parse(JSON.stringify(results));
if (resultsArray.length === 0) return null;
/* console.log('The solution is: ', resultsArray); */
console.log('The solution is: ', resultsArray);
console.log('Resultados', results);
return results;
} catch (error) {
console.log('Entro al error', error);
throw error;
} finally {
if (connection) {
await connection.end();
}
}
}
async userConfirmation(accountNumber: string): Promise<any> {
try {
const connection = await createConnection({
host: process.env.DB_HOST_DSC,
user: process.env.DB_USER_DSC,
password: process.env.DB_PASS_DSC,
database: process.env.DB_NAME_DSC,
});
const userInformationQuery = `UPDATE alumno_inscrito SET platica=true
WHERE id_cuenta="${accountNumber}" and id_periodo=(SELECT id_periodo FROM periodo WHERE activo=true)`;
const qryEjemplo = `select platica from alumno_inscrito WHERE id_cuenta="${accountNumber}"`;
const [results] = await connection.query(userInformationQuery);
const resultsArray = JSON.parse(JSON.stringify(results));
if (resultsArray.length === 0) return null;
/* console.log('The solution is: ', resultsArray); */
return results;
} catch (error) {
throw error;
}
/* const { accountNumber } = data;
try {
this.validarNumeroCuenta(accountNumber);
} catch (error) {
throw error;
}
let userConfirmationQuery = `UPDATE alumno_inscrito SET platica=true
WHERE id_cuenta="${accountNumber}" and id_periodo=(SELECT id_periodo FROM periodo WHERE activo=true)`;
try {
const responseUserConfirmation = await connection.query(
userConfirmationQuery,
);
return responseUserConfirmation;
} catch (error) {
throw error;
}
} */
}
validarNumeroCuenta = (numeroCuenta) => {
if (typeof numeroCuenta !== 'string' || numeroCuenta.length > 9)
return numeroCuenta;
};
}