require('../config/config'); const { Op } = require('sequelize'); const moment = require('moment'); const colors = require('colors'); const Carrera = require('./tablas/Carrera'); const AlumnoHorario = require('./tablas/AlumnoHorario'); const Horario = require('./tablas/Horario'); const Alumno = require('./tablas/Alumno'); const drop = async () => { console.log('\nPaso 1) Desinstalando la db.'.bold.blue); await AlumnoHorario.drop(); console.log('La tabla AlumnoHorario se desinstalo correctamente.'.magenta); await Horario.drop(); console.log('La tabla Horario se desinstalo correctamente.'.magenta); await Alumno.drop(); console.log('La tabla Alumno se desinstalo correctamente.'.magenta); await Carrera.drop(); console.log('La tabla Carrera se desinstalo correctamente.'.magenta); }; const sync = async () => { console.log('\nPaso 2) Instalando la db.'.bold.blue); await Carrera.sync(); console.log('La tabla Carrera se instalo correctamente.'.magenta); await Alumno.sync(); console.log('La tabla Alumno se instalo correctamente.'.magenta); await Horario.sync(); console.log('La tabla Horario se instalo correctamente.'.magenta); await AlumnoHorario.sync(); console.log('La tabla AlumnoHorario se instalo correctamente.'.magenta); }; const dataHorario = async () => { const diaInicio = 16; const diaFin = 22; console.log('\nPaso 3) Instalando catalogo Horario.'.bold.blue); for (let i = diaInicio; i <= diaFin; i++) { const dia = `2021/11/${i < 10 ? '0' + i : i}`; const horaFin = 17; const minutoFin = 0; let horaInicio = 10; let minutoInicio = 0; let parar = false; let turno = 'V'; if (i === 20 || i === 21) continue; while (!parar) { const hora = `${horaInicio < 10 ? '0' + horaInicio : horaInicio}:${ minutoInicio < 10 ? '0' + minutoInicio : minutoInicio }`; if (horaInicio === 13 && minutoInicio === 40) turno = 'M'; await Horario.create({ horario: `${dia} ${hora}`, turno }); console.log(`Se agrego el horario ${dia} ${hora} correctamente.`.magenta); if (horaInicio === horaFin && minutoInicio === minutoFin) parar = true; else { minutoInicio += 20; if (minutoInicio == 60) { horaInicio++; minutoInicio = 0; } } } } }; const exe = async () => { await drop(); await sync(); await dataHorario(); console.log( '\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green ); process.exit(); }; exe();