Files
2025-02-05 16:36:01 -06:00

185 lines
5.1 KiB
JavaScript

require('../config/config');
const colors = require('colors');
const encriptar = require('../helper/encriptar');
const Carrera = require('./tablas/Carrera');
const CuestionarioAlumno = require('./tablas/CuestionarioAlumno');
const CuestionarioPrograma = require('./tablas/CuestionarioPrograma');
const Programa = require('./tablas/Programa');
const Servicio = require('./tablas/Servicio');
const CasoEspecial = require('./tablas/CasoEspecial');
const Status = require('./tablas/Status');
const TipoUsuario = require('./tablas/TipoUsuario');
const Usuario = require('./tablas/Usuario');
const CuestionarioAlumno2 = require('./tablas/CuestionarioAlumno2');
const CuestionarioPrograma2 = require('./tablas/CuestionarioPrograma2');
const drop = async () => {
console.log('\nPaso 1) Desinstalando la db.'.bold.blue);
await CasoEspecial.drop();
console.log('La tabla CasoEspecial se desinstalo correctamente.'.magenta);
await Servicio.drop();
console.log('La tabla Servicio se desinstalo correctamente.'.magenta);
await Carrera.drop();
console.log('La tabla Carrera se desinstalo correctamente.'.magenta);
await CuestionarioPrograma.drop();
console.log(
'La tabla CuestionarioPrograma se desinstalo correctamente.'.magenta
);
await CuestionarioAlumno.drop();
console.log(
'La tabla CuestionarioAlumno se desinstalo correctamente.'.magenta
);
await Programa.drop();
console.log('La tabla Programa se desinstalo correctamente.'.magenta);
await Status.drop();
console.log('La tabla Status se desinstalo correctamente.'.magenta);
await Usuario.drop();
console.log('La tabla Usuario se desinstalo correctamente.'.magenta);
await TipoUsuario.drop();
console.log('La tabla TipoUsuario se desinstalo correctamente.'.magenta);
/* await CuestionarioPrograma2.drop();
console.log(
'La tabla CuestionarioPrograma se desinstalo correctamente.'.magenta
);
await CuestionarioAlumno2.drop();
console.log(
'La tabla CuestionarioAlumno se desinstalo correctamente.'.magenta
); */
};
const sync = async () => {
console.log('\nPaso 2) Instalando la db.'.bold.blue);
await TipoUsuario.sync();
console.log('La tabla TipoUsuario se instalo correctamente.'.magenta);
await Usuario.sync();
console.log('La tabla Usuario se instalo correctamente.'.magenta);
await Programa.sync();
console.log('La tabla Programa se instalo correctamente.'.magenta);
await Status.sync();
console.log('La tabla Status se instalo correctamente.'.magenta);
await CuestionarioAlumno.sync();
console.log('La tabla CuestionarioAlumno se instalo correctamente.'.magenta);
await CuestionarioPrograma.sync();
console.log(
'La tabla CuestionarioPrograma se instalo correctamente.'.magenta
);
await Carrera.sync();
console.log('La tabla Carrera se instalo correctamente.'.magenta);
await Servicio.sync();
console.log('La tabla Servicio se instalo correctamente.'.magenta);
await CasoEspecial.sync();
console.log('La tabla CasoEspecial se instalo correctamente.'.magenta);
/* await CuestionarioAlumno2.sync();
console.log('La tabla CuestionarioAlumno se instalo correctamente.'.magenta);
await CuestionarioPrograma2.sync();
console.log(
'La tabla CuestionarioPrograma se instalo correctamente.'.magenta
); */
};
const dataTipoUsuario = async () => {
const data = ['admin', 'responsable', 'alumno', 'casoEspecial'];
console.log('\nPaso 3) Instalando data de TipoUsuario.'.bold.blue);
for (let i = 0; i < data.length; i++) {
await TipoUsuario.create({ tipoUsuario: data[i] });
console.log(`Se inserto el TipoUsuario ${data[i]}.`.magenta);
}
};
const dataStatus = async () => {
const data = [
'Pre-Registro',
'Pre-Registro Validado',
'Registro',
'Pre-Termino',
'Termino',
'Liberación',
'Carta Aceptación Rechazada',
'Carta Termino Rechazada',
'Informe Global Rechazado',
'Cancelado',
'Articulo 52',
'Articulo 91',
'Liberación Articulo 52',
'Liberación Articulo 91',
];
console.log('\nPaso 4) Instalando data de Status.'.bold.blue);
for (let i = 0; i < data.length; i++) {
await Status.create({ status: data[i] });
console.log(`Se inserto el Status ${data[i]}.`.magenta);
}
};
const dataAdmin = async () => {
console.log('\nPaso 5) Instalando admin.'.bold.blue);
await Usuario.create({
usuario: process.env.ADMIN,
password: encriptar.encriptar(process.env.ADMIN_PASSWORD),
nombre: 'COESI',
idTipoUsuario: 1,
activo: true,
});
};
/* const dataResponsableCasoEspecial = async () => {
console.log(
'\nPaso 6) Instalando responsable de casos especiales.'.bold.blue
);
await Usuario.create({
usuario: process.env.CASOS_ESPECIALES,
password: encriptar.encriptar(process.env.CASOS_ESPECIALES_PASSWORD),
nombre: 'Marcela Martínez Rangel',
idTipoUsuario: 4,
activo: true,
});
}; */
const exe = async () => {
await drop();
await sync();
await dataTipoUsuario();
await dataStatus();
await dataAdmin();
//await dataResponsableCasoEspecial();
console.log(
'\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green
);
process.exit();
};
exe();