Files
premiaciones_api/server/db/install.js
T
2022-05-24 14:18:19 -05:00

91 lines
2.7 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 = ['Pr3m10-Fa', 'M3dl-4tWn']
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 exe = async () => {
await drop();
await sync();
await dataTipoUsuario();
await dataUsuarios();
console.log(
'\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green
);
process.exit();
};
exe();