catalogos dia hora
This commit is contained in:
+3
-1
@@ -1,3 +1,5 @@
|
||||
node_modules/
|
||||
|
||||
.env
|
||||
.env
|
||||
|
||||
server/db/alumnos_segundo.csv
|
||||
Generated
+103
-1026
File diff suppressed because it is too large
Load Diff
+1
-2
@@ -17,13 +17,12 @@
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"bcrypt": "^5.0.1",
|
||||
"body-parser": "^1.19.0",
|
||||
"colors": "^1.4.0",
|
||||
"cors": "^2.8.5",
|
||||
"csvtojson": "^2.0.10",
|
||||
"dotenv": "^8.2.0",
|
||||
"express": "^4.17.1",
|
||||
"jsonwebtoken": "^8.5.1",
|
||||
"mariadb": "^2.5.3",
|
||||
"moment": "^2.29.1",
|
||||
"sequelize": "^6.6.2",
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
const csv = require('csvtojson');
|
||||
const { Op } = require('sequelize');
|
||||
const dbPath = './db/tablas';
|
||||
const Carrera = require(`${dbPath}/Carrera`);
|
||||
const TercerSemestre = require(`${dbPath}/TercerSemestre`);
|
||||
|
||||
const cargaMasiva = async () => {
|
||||
const path = `server/db/alumnos_segundo.csv`;
|
||||
|
||||
await csv()
|
||||
.fromFile(path)
|
||||
.then(async (alumnos) => {});
|
||||
};
|
||||
|
||||
cargaMasiva();
|
||||
+81
-3
@@ -1,5 +1,6 @@
|
||||
require('../config/config');
|
||||
const colors = require('colors');
|
||||
const { min } = require('./tablas/Carrera');
|
||||
const Carrera = require('./tablas/Carrera');
|
||||
const Dia = require('./tablas/Dia');
|
||||
const DiaHora = require('./tablas/DiaHora');
|
||||
@@ -66,16 +67,93 @@ const sync = async () => {
|
||||
};
|
||||
|
||||
const dataCarrera = async () => {
|
||||
const data = [];
|
||||
const data = [
|
||||
'ACTUARÍA',
|
||||
'ARQUITECTURA',
|
||||
'CIENCIAS POLÍTICAS Y ADMON. PÚBLICA',
|
||||
'COMUNICACIÓN',
|
||||
'DERECHO',
|
||||
'DERECHO (SUA)',
|
||||
'DISEÑO GRÁFICO',
|
||||
'ECONOMÍA',
|
||||
'ENSEÑANZA DE ESPAÑOL(LENG EXTRANJERA)SUA',
|
||||
'ENSEÑANZA DE FRANCES(LENG EXTRANJERA)SUA',
|
||||
'ENSEÑANZA DE INGLÉS',
|
||||
'ENSEÑANZA DE INGLES (LENG EXTRANJERA)SUA',
|
||||
'ENSEÑANZA DE ITALIANO(LENG EXTRANJ.) SUA',
|
||||
'FILOSOFÍA',
|
||||
'HISTORIA',
|
||||
'INGENIERÍA CIVIL',
|
||||
'LENGUA Y LITERATURA HISPÁNICAS',
|
||||
'MATEMÁTICAS. APL. Y COMP. (1999)',
|
||||
'PEDAGOGÍA',
|
||||
'RELACIONES INTERNACIONALES',
|
||||
'RELACIONES INTERNACIONALES (SUA)',
|
||||
'SOCIOLOGÍA',
|
||||
];
|
||||
|
||||
console.log('\nPaso 3) Instalando catalogo carrera.'.bold.blue);
|
||||
for (let i = 0; i < data.length; i++)
|
||||
console.log('\nPaso 3) Instalando catalogo Carrera.'.bold.blue);
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
await Carrera.create({ carrera: data[i] });
|
||||
console.log(`Se agrego la carrera ${data[i]} correctamente.`.magenta);
|
||||
}
|
||||
};
|
||||
|
||||
const dataHora = async () => {
|
||||
let horaInicio = 8;
|
||||
let minutoInicio = 0;
|
||||
const horaFin = 15;
|
||||
const minutoFin = 20;
|
||||
let parar = false;
|
||||
|
||||
console.log('\nPaso 4) Instalando catalogo Hora.'.bold.blue);
|
||||
while (!parar) {
|
||||
const hora = `${horaInicio < 10 ? '0' + horaInicio : horaInicio}:${
|
||||
minutoInicio < 10 ? '0' + minutoInicio : minutoInicio
|
||||
}`;
|
||||
|
||||
await Hora.create({ hora });
|
||||
console.log(`Se agrego la hora ${hora} correctamente.`.magenta);
|
||||
if (horaInicio === horaFin && minutoInicio === minutoFin) parar = true;
|
||||
else {
|
||||
minutoInicio += 20;
|
||||
if (minutoInicio == 60) {
|
||||
horaInicio++;
|
||||
minutoInicio = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const dataDia = async () => {
|
||||
let diaInicio = 2;
|
||||
const diaFin = 13;
|
||||
const finSemana = [7, 8];
|
||||
let parar = false;
|
||||
|
||||
console.log('\nPaso 5) Instalando catalogo Dia.'.bold.blue);
|
||||
while (!parar) {
|
||||
let saltar = false;
|
||||
|
||||
for (let i = 0; i < finSemana.length; i++)
|
||||
if (finSemana[i] === diaInicio) saltar = true;
|
||||
if (!saltar) {
|
||||
const dia = `2021/08/${diaInicio < 10 ? '0' + diaInicio : diaInicio}`;
|
||||
|
||||
await Dia.create({ dia });
|
||||
console.log(`Se agrego el dia ${dia} correctamente.`.magenta);
|
||||
}
|
||||
if (diaInicio === diaFin) parar = true;
|
||||
else diaInicio++;
|
||||
}
|
||||
};
|
||||
|
||||
const exe = async () => {
|
||||
await drop();
|
||||
await sync();
|
||||
await dataCarrera();
|
||||
await dataHora();
|
||||
await dataDia();
|
||||
|
||||
console.log(
|
||||
'\nSe ha instalado exitosamente la base de datos.\n'.underline.bold.green
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
const { DataTypes, Model } = require('sequelize');
|
||||
const sequelize = require('../../config/sequelize.conf');
|
||||
const GrupoDiaHora = require('./GrupoDiaHora');
|
||||
const Grupo = require('./Grupo');
|
||||
const DiaHora = require('./DiaHora');
|
||||
|
||||
class PrimerSemestre extends Model {}
|
||||
PrimerSemestre.init(
|
||||
@@ -34,11 +35,21 @@ PrimerSemestre.init(
|
||||
}
|
||||
);
|
||||
|
||||
PrimerSemestre.belongsTo(GrupoDiaHora, {
|
||||
PrimerSemestre.belongsTo(Grupo, {
|
||||
foreignKey: {
|
||||
name: 'idGrupoDiaHora',
|
||||
name: 'idGrupo',
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: false,
|
||||
allowNull: true,
|
||||
defaultValue: null,
|
||||
},
|
||||
});
|
||||
|
||||
PrimerSemestre.belongsTo(DiaHora, {
|
||||
foreignKey: {
|
||||
name: 'idDiaHora',
|
||||
type: DataTypes.INTEGER,
|
||||
allowNull: true,
|
||||
defaultValue: null,
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
require('../config/config');
|
||||
const jwt = require('jsonwebtoken');
|
||||
|
||||
const verificaToken = (req, res, next) => {
|
||||
let token = req.headers.token;
|
||||
|
||||
if (!token)
|
||||
return res.status(400).json({
|
||||
message: 'No hay token',
|
||||
});
|
||||
jwt.verify(token, process.env.KEY, (err, decoded) => {
|
||||
if (err) {
|
||||
let message = '';
|
||||
|
||||
if (err.message === 'invalid signature')
|
||||
message = 'El token no es valido. Inicia sesión de nuevo.';
|
||||
if (err.message === 'jwt expired')
|
||||
message = 'El token expiro. Inicia sesión de nuevo.';
|
||||
if (err.message === 'jwt malformed')
|
||||
message = 'Hubo un problema con el token. Inicia sesión de nuevo.';
|
||||
return res.status(401).json({ message, err: 'token error' });
|
||||
}
|
||||
req.decoded = decoded;
|
||||
next();
|
||||
});
|
||||
};
|
||||
|
||||
const crearToken = (data) => {
|
||||
return jwt.sign({ data }, process.env.KEY, {
|
||||
expiresIn: Number(process.env.CADUCIDAD_TOKEN),
|
||||
});
|
||||
};
|
||||
|
||||
const crearTokenUsuario = (data) => {
|
||||
return jwt.sign({ data }, process.env.KEY, {
|
||||
expiresIn: Number(process.env.CADUCIDAD_TOKEN_USUARIO),
|
||||
});
|
||||
};
|
||||
|
||||
const crearTokenOperador = (data) => {
|
||||
return jwt.sign({ data }, process.env.KEY, {
|
||||
expiresIn: Number(process.env.CADUCIDAD_TOKEN_OPERADOR),
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = { verificaToken, crearToken };
|
||||
Reference in New Issue
Block a user