require('../config/config'); const colors = require('colors'); const encriptar = require('../helper/encriptar'); const Carrera = require('./tablas/Carrera'); const Carrito = require('./tablas/Carrito'); const Equipo = require('./tablas/Equipo'); const Modulo = require('./tablas/Modulo'); const Operador = require('./tablas/Operador'); const Prestamo = require('./tablas/Prestamo'); const Programa = require('./tablas/Programa'); const Status = require('./tablas/Status'); const TipoCarrito = require('./tablas/TipoCarrito'); const TipoUsuario = require('./tablas/TipoUsuario'); const Usuario = require('./tablas/Usuario'); const drop = async () => { console.log('\nPaso 1) Desinstalando la db.'.bold.blue); await Prestamo.drop(); console.log('La tabla Prestamo se desinstalo correctamente.'.magenta); await Equipo.drop(); console.log('La tabla Equipo se desinstalo correctamente.'.magenta); await Programa.drop(); console.log('La tabla Programa se desinstalo correctamente.'.magenta); await Status.drop(); console.log('La tabla Status se desinstalo correctamente.'.magenta); await Carrito.drop(); console.log('La tabla Carrito se desinstalo correctamente.'.magenta); await Modulo.drop(); console.log('La tabla Modulo se desinstalo correctamente.'.magenta); await TipoCarrito.drop(); console.log('La tabla TipoCarrito se desinstalo correctamente.'.magenta); await Usuario.drop(); console.log('La tabla Usuario se desinstalo correctamente.'.magenta); await Operador.drop(); console.log('La tabla Operador se desinstalo correctamente.'.magenta); await Carrera.drop(); console.log('La tabla Carrera se desinstalo correctamente.'.magenta); await TipoUsuario.drop(); console.log('La tabla TipoUsuario se desinstalo correctamente.'.magenta); }; const sync = async () => { console.log('\nPaso 2) Instalando la db.'.bold.blue); await TipoUsuario.sync(); console.log('La tabla TipoUsuario se instalo correctamente.'.magenta); await Carrera.sync(); console.log('La tabla Carrera se instalo correctamente.'.magenta); await Operador.sync(); console.log('La tabla Operador se instalo correctamente.'.magenta); await Usuario.sync(); console.log('La tabla Usuario se instalo correctamente.'.magenta); await TipoCarrito.sync(); console.log('La tabla TipoCarrito se instalo correctamente.'.magenta); await Modulo.sync(); console.log('La tabla Modulo se instalo correctamente.'.magenta); await Carrito.sync(); console.log('La tabla Carrito se instalo correctamente.'.magenta); await Status.sync(); console.log('La tabla Status se instalo correctamente.'.magenta); await Programa.sync(); console.log('La tabla Programa se instalo correctamente.'.magenta); await Equipo.sync(); console.log('La tabla Equipo se instalo correctamente.'.magenta); await Prestamo.sync(); console.log('La tabla Prestamo se instalo correctamente.'.magenta); }; const dataTipoUsuario = async () => { const data = ['Admin', 'Operador', 'Profesor', 'Alumno', 'Posgrado']; console.log('\nPaso 3) Insertando data tipo usuario.'.bold.blue); for (let i = 0; i < data.length; i++) { await TipoUsuario.create({ tipoUsuario: data[i], }); console.log(`Se agrego el tipo usuario ${data[i]}.`.magenta); } }; const dataModulo = async () => { const data = ['MAC', 'Derecho']; console.log('\nPaso 4) Insertando data modulo.'.bold.blue); for (let i = 0; i < data.length; i++) { await Modulo.create({ modulo: data[i], }); console.log(`Se agrego el modulo ${data[i]}.`.magenta); } }; const dataTipoCarrito = async () => { const data = ['Chromebook', 'Laptop', 'iPad']; console.log('\nPaso 5) Insertando data tipo carrito.'.bold.blue); for (let i = 0; i < data.length; i++) { await TipoCarrito.create({ tipoCarrito: data[i], }); console.log(`Se agrego el tipo carrito ${data[i]}.`.magenta); } }; const dataStatus = async () => { const data = ['Activo', 'Cargando', 'Reparación', 'Mantenimiento']; console.log('\nPaso 6) Insertando data status.'.bold.blue); for (let i = 0; i < data.length; i++) { await Status.create({ status: data[i], }); console.log(`Se agrego el status ${data[i]}.`.magenta); } }; const dataPrograma = async () => { const data = ['Autodesk', 'Adobe', 'Programación']; console.log('\nPaso 7) Insertando data programa.'.bold.blue); for (let i = 0; i < data.length; i++) { await Programa.create({ programa: data[i], }); console.log(`Se agrego el programa ${data[i]}.`.magenta); } }; const dataAdmin = async () => { console.log('\nPaso 8) Insertando admin.'.bold.blue); await Operador.create({ idTipoUsuario: 1, operador: 'Araceli', password: encriptar.encriptar(process.env.ADMIN_PASSWORD), }); }; const exe = async () => { await drop(); await sync(); await dataTipoUsuario(); await dataModulo(); await dataTipoCarrito(); await dataStatus(); await dataPrograma(); await dataAdmin(); console.log( '\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green ); process.exit(); }; exe();