Files
premiaciones_api/server/db/install.js
T
2022-05-24 12:50:59 -05:00

108 lines
3.2 KiB
JavaScript

require('../config/config');
const { encriptar } = require('../helper/encriptar');
const colors = require('colors');
const TipoUsuario = require('./tablas/TipoUsuario');
const Usuario = require('./tablas/Usuario');
const Profesor = require('./tablas/Profesor');
const Invitado = require('./tablas/Invitado');
const Premiacion = require('./tablas/Premiacion');
const ProfesorPremiacion = require('./tablas/ProfesorPremiacion');
const drop = async () => {
console.log('\nPaso 1) Desinstalando la db.'.bold.blue);
await Usuario.drop();
console.log('La tabla Usuario se desinstalo correctamente.'.magenta);
await Invitado.drop();
console.log('La tabla Invitado se desinstalo correctamente.'.magenta);
await TipoUsuario.drop();
console.log('La tabla TipoUsuario se desinstalo correctamente.'.magenta);
await ProfesorPremiacion.drop();
console.log('La tabla ProfesorPremiacion se desinstalo correctamente.'.magenta);
await Profesor.drop();
console.log('La tabla Profesor se desinstalo correctamente.'.magenta);
await Premiacion.drop();
console.log('La tabla Premiacion se desinstalo correctamente.'.magenta);
};
const sync = async () => {
console.log('\nPaso 2) Instalando la db.'.bold.blue);
await Premiacion.sync();
console.log('La tabla Premiacion se instalo correctamente.'.magenta);
await Profesor.sync();
console.log('La tabla Profesor se instalo correctamente.'.magenta);
await ProfesorPremiacion.sync();
console.log('La tabla ProfesorPremiacion se instalo correctamente.'.magenta);
await TipoUsuario.sync();
console.log('La tabla TipoUsuario se instalo correctamente.'.magenta);
await Invitado.sync();
console.log('La tabla Invitado se instalo correctamente.'.magenta);
await Usuario.sync();
console.log('La tabla Usuario se instalo correctamente.'.magenta);
};
const dataTipoUsuario = async () => {
const data = ['admin', 'operador'];
console.log('\nPaso 3) Instalando catalogo tipo usuario.'.bold.blue);
for (let i = 0; i < data.length; i++)
await TipoUsuario.create({ tipoUsuario: data[i] });
};
const dataUsuarios = async () => {
let usuario = ['Admin', 'Operador1'];
let password = ['K@-me+3v', 'r3b1$ar']
console.log('\nPaso 4) Instalando los usuarios.'.bold.blue);
for (let i = 0; i < usuario.length; i++) {
await Usuario.create({
usuario: usuario[i],
password: encriptar(password[i]),
idTipoUsuario: i+1,
});
console.log(`Se insertó el usuario ${usuario[i]}.`.magenta);
}
};
const dataProfesores = async () => {
let nombre = ['profesor 1', 'profesor 2'];
let profesor = ['316019251', '67890'];
console.log('\nPaso 4) Instalando los Profesores.'.bold.blue);
for (let i = 0; i < profesor.length; i++) {
await Profesor.create({
numeroTrabajador: profesor[i],
nombre: nombre[i],
adscripcion: `Adscripcion ${i}`,
correo: `${profesor[i]}@pcpuma.acatlan.unam.mx`
});
console.log(`Se insertó el profesor ${profesor[i]}.`.magenta);
}
};
const exe = async () => {
await drop();
await sync();
await dataTipoUsuario();
await dataUsuarios();
await dataProfesores();
console.log(
'\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green
);
process.exit();
};
exe();