108 lines
3.2 KiB
JavaScript
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();
|