245 lines
7.2 KiB
JavaScript
245 lines
7.2 KiB
JavaScript
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 Infraccion = require('./tablas/Infraccion');
|
|
const Modulo = require('./tablas/Modulo');
|
|
const Multa = require('./tablas/Multa');
|
|
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 Multa.drop();
|
|
console.log('La tabla Multa se desinstalo correctamente.'.magenta);
|
|
|
|
await Infraccion.drop();
|
|
console.log('La tabla Infraccion se desinstalo correctamente.'.magenta);
|
|
|
|
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);
|
|
|
|
await Infraccion.sync();
|
|
console.log('La tabla Infraccion se instalo correctamente.'.magenta);
|
|
|
|
await Multa.sync();
|
|
console.log('La tabla Multa 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 = ['Módulo 1' /*, 'Módulo 2'*/];
|
|
|
|
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 = [
|
|
{ tipo: 'Chromebook', letra: 'E' },
|
|
{ tipo: 'Laptop', letra: 'L' },
|
|
{ tipo: 'iPad', letra: 'T' },
|
|
];
|
|
|
|
console.log('\nPaso 5) Insertando data tipo carrito.'.bold.blue);
|
|
for (let i = 0; i < data.length; i++) {
|
|
await TipoCarrito.create({
|
|
tipoCarrito: data[i].tipo,
|
|
letra: data[i].letra,
|
|
});
|
|
console.log(`Se agrego el tipo carrito ${data[i].tipo}.`.magenta);
|
|
}
|
|
};
|
|
|
|
const dataStatus = async () => {
|
|
const data = [
|
|
'Apartado',
|
|
'En uso',
|
|
'Entrega inmediata',
|
|
'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 dataSystem = async () => {
|
|
console.log('\nPaso 8) Insertando system.'.bold.blue);
|
|
await Operador.create({
|
|
idTipoUsuario: 1,
|
|
operador: 'Systema',
|
|
password: encriptar.encriptar(process.env.SYSTEM_PASSWORD),
|
|
});
|
|
};
|
|
|
|
const dataAdmin = async () => {
|
|
console.log('\nPaso 9) Insertando admin.'.bold.blue);
|
|
await Operador.create({
|
|
idTipoUsuario: 1,
|
|
operador: 'Araceli',
|
|
password: encriptar.encriptar(process.env.ADMIN_PASSWORD),
|
|
});
|
|
};
|
|
|
|
const dataInfraccion = async () => {
|
|
const data = [
|
|
{ infraccion: 'Demora', gravedad: '1' },
|
|
{ infraccion: 'Manchas de suciedad', gravedad: '1' },
|
|
{ infraccion: 'Etiquetas Removidas', gravedad: '1' },
|
|
{ infraccion: 'Rayon en carcasa', gravedad: '1' },
|
|
{ infraccion: 'Golpe en carcasa', gravedad: '1' },
|
|
// { infraccion: '', gravedad: '1' },
|
|
{ infraccion: 'Daño impacto', gravedad: '2' },
|
|
{ infraccion: 'Derrame liquido', gravedad: '2' },
|
|
{ infraccion: 'Trackpad dañado', gravedad: '2' },
|
|
{ infraccion: 'Equipo abierto', gravedad: '2' },
|
|
{ infraccion: 'Pantalla estrellada', gravedad: '2' },
|
|
{ infraccion: 'Teclas faltantes', gravedad: '2' },
|
|
{ infraccion: 'Teclas dañadas', gravedad: '2' },
|
|
{ infraccion: 'Puertos dañados', gravedad: '2' },
|
|
{ infraccion: 'Falta de hardware', gravedad: '2' },
|
|
{ infraccion: 'Cambio de piezas', gravedad: '2' },
|
|
// { infraccion: '', gravedad: '2' },
|
|
];
|
|
|
|
console.log('\nPaso 10) Insertando data infraccion.'.bold.blue);
|
|
for (let i = 0; i < data.length; i++) {
|
|
await Infraccion.create({
|
|
infraccion: data[i].infraccion,
|
|
gravedad: data[i].gravedad,
|
|
});
|
|
console.log(`Se agrego la infraccion ${data[i].infraccion}.`.magenta);
|
|
}
|
|
};
|
|
|
|
const exe = async () => {
|
|
await drop();
|
|
await sync();
|
|
await dataTipoUsuario();
|
|
await dataModulo();
|
|
await dataTipoCarrito();
|
|
await dataStatus();
|
|
await dataPrograma();
|
|
await dataSystem();
|
|
await dataAdmin();
|
|
await dataInfraccion();
|
|
|
|
console.log(
|
|
'\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green
|
|
);
|
|
process.exit();
|
|
};
|
|
|
|
exe();
|