require('../config/config'); const colors = require('colors'); const encriptar = require('../helper/encriptar'); const Carrera = require('./tablas/Carrera'); const Usuario = require('./tablas/Usuario'); const Area = require('./tablas/Area'); const FechaInscripcion = require('./tablas/FechaInscripcion'); const Inscripcion = require('./tablas/Inscripcion'); const Admin = require('./tablas/Admin'); const ProfesorInscrito = require('./tablas/ProfesorInscrito'); const Profesor = require('./tablas/Profesor'); const drop = async () => { console.log('\nPaso 1) Desinstalando la db.'.bold.blue); await Admin.drop(); console.log('La tabla Admin se desinstalo correctamente.'.magenta); await Inscripcion.drop(); console.log('La tabla Inscripcion se desinstalo correctamente.'.magenta); await Area.drop(); console.log('La tabla Area se desinstalo correctamente.'.magenta); await FechaInscripcion.drop(); console.log('La tabla FechaInscripcion se desinstalo correctamente.'.magenta); await Usuario.drop(); console.log('La tabla Usuario se desinstalo correctamente.'.magenta); await Carrera.drop(); console.log('La tabla Carrera se desinstalo correctamente.'.magenta); /* await ProfesorInscrito.drop(); console.log('La tabla ProfesorInscrito se desinstalo correctamente.'.magenta); await Profesor.drop(); console.log('La tabla Profesor se desinstalo correctamente.'.magenta); */ //await ProfesorInscrito.drop().catch(console.error); // Tiene FK hacia Profesor //await Profesor.drop().catch(console.error); }; const sync = async () => { console.log('\nPaso 2) Instalando la db.'.bold.blue); await Admin.sync(); console.log('La tabla Admin se instalo correctamente.'.magenta); await Carrera.sync(); console.log('La tabla Carrera se instalo correctamente.'.magenta); await Usuario.sync(); console.log('La tabla Usuario se instalo correctamente.'.magenta); await Area.sync(); console.log('La tabla Area se instalo correctamente.'.magenta); await FechaInscripcion.sync(); console.log('La tabla FechaInscripcion se instalo correctamente.'.magenta); await Inscripcion.sync(); console.log('La tabla Inscripcion se instalo correctamente.'.magenta); /* await Profesor.sync(); console.log('La tabla Profesor se instalo correctamente.'.magenta); await ProfesorInscrito.sync(); console.log('La tabla ProfesorInscrito se instalo correctamente.'.magenta); */ }; const dataArea = async () => { const data = ['Windows', 'Macintosh', 'Linux']; console.log('\nPaso 3) Instalando catalogo area.'.bold.blue); for (let i = 0; i < data.length; i++) await Area.create({ area: data[i] }); }; const dataAdmin = async () => { console.log('\nPaso 4) Insertando admin.'.bold.blue); /* //Borrar esta linea de codigo console.log('Admin password:', process.env.ADMIN_PASSWORD); //Eliminar esta linea de codigo const pwdHasheada = encriptar.encriptar(process.env.ADMIN_PASSWORD); console.log('Password hasheada:', pwdHasheada); */ await Admin.create({ idTipoUsuario: 1, usuario: 'Araceli', password: encriptar.encriptar(process.env.ADMIN_PASSWORD), }); }; const exe = async () => { await drop(); await sync(); await dataArea(); await dataAdmin(); console.log( '\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green ); process.exit(); }; exe();