Centralizacion de la conexion MySQL a la base de datos. Uso de una unica raiz para el backend.
This commit is contained in:
parent
51c4651409
commit
e9bc3f0078
2
.gitignore
vendored
2
.gitignore
vendored
@ -23,6 +23,8 @@ yarn-error.log*
|
||||
# Archivos para el deploy
|
||||
*.js
|
||||
*.js.map
|
||||
/srv/mysql.ts
|
||||
/srv/DatosConexion.ts
|
||||
|
||||
# Archivos de Materialize
|
||||
/src/materialize/
|
31
app.ts
31
app.ts
@ -1,31 +0,0 @@
|
||||
let express = require('express');
|
||||
let app = express();
|
||||
|
||||
app.use(express.static('dist'));
|
||||
|
||||
// Que era history??
|
||||
// @ts-ignore
|
||||
// app.use(history());
|
||||
|
||||
app.use(express.urlencoded());
|
||||
app.use(express.json());
|
||||
|
||||
app.get("/");
|
||||
|
||||
app.post('/links', require('./srv/LinksAnimes/obtenerLinks').obtenerLinks);
|
||||
app.put('/links', require('./srv/LinksAnimes/modificarLink').modificarLinks);
|
||||
|
||||
app.put('/a/', require('./srv/Admin/crearAnime').crearAnime);
|
||||
app.get('/a/', require('./srv/Admin/obtenerTodosAnimes').obtenerTodosAnimes);
|
||||
|
||||
app.get('/op/:id', require('./srv/Admin/OP/obtenerOPs').obtenerOPs);
|
||||
app.post('/op/', require('./srv/Admin/OP/nuevoOP').nuevoOP);
|
||||
|
||||
app.get('/ed/:anime_ID', require('./srv/Admin/ED/obtenerEDs').obtenerEDs);
|
||||
app.post('/ed/', require('./srv/Admin/ED/nuevoED').nuevoED);
|
||||
|
||||
app.get('/eps/variantes/:anime_ID', require('./srv/Admin/Eps/obtenerVariantes').obtenerVariantes);
|
||||
app.get('/eps/links/:opcion_ID', require('./srv/Admin/Eps/obtenerLinks').obtenerLinks);
|
||||
app.post('/eps/links/', require('./srv/Admin/Eps/crearLink').crearLink);
|
||||
|
||||
app.listen(8080);
|
26
package-lock.json
generated
26
package-lock.json
generated
@ -35,6 +35,7 @@
|
||||
"version": "1.17.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.17.0.tgz",
|
||||
"integrity": "sha512-a2+YeUjPkztKJu5aIF2yArYFQQp8d51wZ7DavSHjFuY1mqVgidGyzEQ41JIVNy82fXj8yPgy2vJmfIywgESW6w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/connect": "3.4.32",
|
||||
"@types/node": "10.12.5"
|
||||
@ -44,6 +45,7 @@
|
||||
"version": "3.4.32",
|
||||
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz",
|
||||
"integrity": "sha512-4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/node": "10.12.5"
|
||||
}
|
||||
@ -51,12 +53,14 @@
|
||||
"@types/events": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "http://registry.npmjs.org/@types/events/-/events-1.2.0.tgz",
|
||||
"integrity": "sha512-KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA=="
|
||||
"integrity": "sha512-KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/express": {
|
||||
"version": "4.16.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/express/-/express-4.16.0.tgz",
|
||||
"integrity": "sha512-TtPEYumsmSTtTetAPXlJVf3kEqb6wZK0bZojpJQrnD/djV4q1oB6QQ8aKvKqwNPACoe02GNiy5zDzcYivR5Z2w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/body-parser": "1.17.0",
|
||||
"@types/express-serve-static-core": "4.16.0",
|
||||
@ -67,6 +71,7 @@
|
||||
"version": "4.16.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.0.tgz",
|
||||
"integrity": "sha512-lTeoCu5NxJU4OD9moCgm0ESZzweAx0YqsAcab6OB0EB3+As1OaHtKnaGJvcngQxYsi9UNv0abn4/DRavrRxt4w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/events": "1.2.0",
|
||||
"@types/node": "10.12.5",
|
||||
@ -76,22 +81,35 @@
|
||||
"@types/mime": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/mime/-/mime-2.0.0.tgz",
|
||||
"integrity": "sha512-A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA=="
|
||||
"integrity": "sha512-A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/mysql": {
|
||||
"version": "2.15.5",
|
||||
"resolved": "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.5.tgz",
|
||||
"integrity": "sha512-4QAISTUGZbcFh7bqdndo08xRdES5OTU+JODy8VCZbe1yiXyGjqw1H83G43XjQ3IbC10wn9xlGd44A5RXJwNh0Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/node": "10.12.5"
|
||||
}
|
||||
},
|
||||
"@types/node": {
|
||||
"version": "10.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.5.tgz",
|
||||
"integrity": "sha512-GzdHjq3t3eGLMv92Al90Iq+EoLL+86mPfQhuglbBFO7HiLdC/rkt+zrzJJumAiBF6nsrBWhou22rPW663AAyFw=="
|
||||
"integrity": "sha512-GzdHjq3t3eGLMv92Al90Iq+EoLL+86mPfQhuglbBFO7HiLdC/rkt+zrzJJumAiBF6nsrBWhou22rPW663AAyFw==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/range-parser": {
|
||||
"version": "1.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.2.tgz",
|
||||
"integrity": "sha512-HtKGu+qG1NPvYe1z7ezLsyIaXYyi8SoAVqWDZgDQ8dLrsZvSzUNCwZyfX33uhWxL/SU0ZDQZ3nwZ0nimt507Kw=="
|
||||
"integrity": "sha512-HtKGu+qG1NPvYe1z7ezLsyIaXYyi8SoAVqWDZgDQ8dLrsZvSzUNCwZyfX33uhWxL/SU0ZDQZ3nwZ0nimt507Kw==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/serve-static": {
|
||||
"version": "1.13.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.2.tgz",
|
||||
"integrity": "sha512-/BZ4QRLpH/bNYgZgwhKEh+5AsboDBcUdlBYgzoLX0fpj3Y2gp6EApyOlM3bK53wQS/OE1SrdSYBAbux2D1528Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/express-serve-static-core": "4.16.0",
|
||||
"@types/mime": "2.0.0"
|
||||
|
@ -3,16 +3,13 @@
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"start": "node app.js",
|
||||
"start": "vue-cli-service express:run --port 8080",
|
||||
"serve": "vue-cli-service serve",
|
||||
"build": "vue-cli-service build",
|
||||
"express": "vue-cli-service express:watch",
|
||||
"express:run": "vue-cli-service express:run",
|
||||
"deploy": "gcloud app deploy"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/express": "^4.16.0",
|
||||
"@types/node": "^10.12.5",
|
||||
"connect-history-api-fallback": "^1.5.0",
|
||||
"express": "^4.16.4",
|
||||
"mysql": "^2.16.0",
|
||||
@ -23,6 +20,9 @@
|
||||
"yaml": "^1.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/mysql": "^2.15.5",
|
||||
"@types/express": "^4.16.0",
|
||||
"@types/node": "^10.12.5",
|
||||
"@types/yaml": "^1.0.1",
|
||||
"@vue/cli-plugin-typescript": "^3.0.5",
|
||||
"@vue/cli-service": "^3.0.5",
|
||||
|
@ -1,12 +1,45 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="caja colorTexto background2">
|
||||
Esta es la barra lateral.
|
||||
</div>
|
||||
<div class="caja colorTexto background2">
|
||||
Estadisticas:<br>
|
||||
<br>
|
||||
Hemos subido <b>{{ estadisticas.episodios }}</b> episodios,<br>
|
||||
haciendo un total de <b>{{ estadisticas.gigas }} GB.</b>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
const YAML = require('yaml');
|
||||
|
||||
export default {
|
||||
name: "BarraLateral"
|
||||
name: "BarraLateral",
|
||||
data: function (){
|
||||
return {
|
||||
estadisticas: {
|
||||
episodios: 'más de 200',
|
||||
gigas: 'más de 65'
|
||||
}
|
||||
};
|
||||
},
|
||||
created: function () {
|
||||
const vm = this;
|
||||
const xhr = new XMLHttpRequest();
|
||||
xhr.open("GET", "/estadisticas");
|
||||
xhr.onload = () => {
|
||||
console.log(xhr.responseText);
|
||||
const respuesta = YAML.parse(xhr.responseText);
|
||||
if (!respuesta.error) {
|
||||
vm.estadisticas = respuesta;
|
||||
} else {
|
||||
console.log("Error al obtener las estadisticas :c");
|
||||
}
|
||||
};
|
||||
xhr.send();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@ -10,10 +10,9 @@ const nuevoED = (req: any, res: any) => {
|
||||
|
||||
const YAML = require('yaml');
|
||||
const data: Data = YAML.parse(req.body.data);
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
|
||||
con.connect((err: Error) => {
|
||||
if (!err && data) {
|
||||
if (data) {
|
||||
|
||||
const query = `INSERT INTO ED (anime_ID, num_ED, nombre, artista, eps) VALUES ( ${data.anime_ID}, ${data.num_ED},
|
||||
${con.escape(data.nombre)}, ${con.escape(data.artista)}, ${con.escape(data.eps)} )`;
|
||||
@ -26,14 +25,10 @@ const nuevoED = (req: any, res: any) => {
|
||||
}
|
||||
});
|
||||
|
||||
} else if (!err) {
|
||||
res.send("error: true");
|
||||
console.log("Error. La data no existe en /Admin/ED/nuevoED (con.connect)");
|
||||
} else {
|
||||
res.send("error: true");
|
||||
console.log("Error al conectarse a la base de datos en /Admin/ED/nuevoED (con.connect):\n" + err);
|
||||
console.log("Error. La data no existe en /Admin/ED/nuevoED (con.connect)");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
@ -11,10 +11,10 @@ const obtenerEDs = (req: any, res: any) => {
|
||||
|
||||
const YAML = require('yaml');
|
||||
const anime_ID: number = req.params.anime_ID;
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
|
||||
con.connect((err: Error) => {
|
||||
if (!err) {
|
||||
|
||||
if (anime_ID) {
|
||||
|
||||
const query = `SELECT * FROM ED WHERE anime_ID=${anime_ID}`;
|
||||
con.query(query, (err: Error, response: RespuestaED[]) => {
|
||||
@ -30,9 +30,8 @@ const obtenerEDs = (req: any, res: any) => {
|
||||
|
||||
} else {
|
||||
res.send("error: true");
|
||||
console.log("Error al conectarse a la base de datos en /Admin/ED/obtenerEDs (con.connect):\n" + err);
|
||||
console.log("Error en /Admin/ED/obtenerEDs: anime_ID no existe.");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
@ -8,13 +8,13 @@ interface formatoDataARecibir {
|
||||
|
||||
const crearLink = (req: any, res: any) => {
|
||||
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
const parametros: formatoDataARecibir = YAML.parse(req.body.params);
|
||||
|
||||
con.connect((err: Error) => {
|
||||
if (!err && parametros) {
|
||||
|
||||
if (parametros) {
|
||||
|
||||
const query = `INSERT INTO eps (opcion_ID, num_ep, visitas, link, peso) VALUES (${parametros.opcion_ID},
|
||||
${parametros.num_ep}, ${parametros.visitas}, ${con.escape(parametros.link)}, ${con.escape(parametros.peso)} )`;
|
||||
@ -29,14 +29,10 @@ const crearLink = (req: any, res: any) => {
|
||||
}
|
||||
});
|
||||
|
||||
} else if (!err) {
|
||||
} else {
|
||||
console.log("Error. 'parametros' no existe en /Admin/Eps/crearEp -> con.connect (linea 16):\n" + parametros);
|
||||
res.send("error: true");
|
||||
} else {
|
||||
console.log("Error al conectarse a la base de datos en /Admin/Eps/crearEp -> con.connect (linea 16):\n" + err);
|
||||
res.send("error: true");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
34
srv/Admin/Eps/estadisticas.ts
Normal file
34
srv/Admin/Eps/estadisticas.ts
Normal file
@ -0,0 +1,34 @@
|
||||
import {Connection, MysqlError} from "mysql";
|
||||
import * as core from "express-serve-static-core";
|
||||
|
||||
const con: Connection = require('../../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
interface respuesta {
|
||||
peso: string
|
||||
}
|
||||
|
||||
const estadisticas = (req: core.Request, res: core.Response) => {
|
||||
|
||||
con.query(`SELECT peso FROM eps`,(err: MysqlError, respuestas: respuesta[]) => {
|
||||
if (!err) {
|
||||
|
||||
let totalMB = 0;
|
||||
let cantidadEps = 0;
|
||||
respuestas.forEach(data => {
|
||||
totalMB += parseInt(data.peso);
|
||||
cantidadEps++;
|
||||
});
|
||||
|
||||
const respuesta: any = {
|
||||
episodios: cantidadEps,
|
||||
gigas: (totalMB/1024).toFixed(2)
|
||||
};
|
||||
|
||||
res.send(YAML.stringify(respuesta));
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports.estadisticas = estadisticas;
|
@ -9,13 +9,12 @@ interface epsRespuesta {
|
||||
|
||||
const obtenerLinks = (req: any, res: any) => {
|
||||
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
const opcion_ID = req.params.opcion_ID;
|
||||
|
||||
con.connect((err: Error) => {
|
||||
if (!err && opcion_ID) {
|
||||
if (opcion_ID) {
|
||||
|
||||
const query = `SELECT * FROM eps WHERE opcion_ID=${opcion_ID}`;
|
||||
con.query(query, (err: Error, response: epsRespuesta[]) => {
|
||||
@ -29,14 +28,10 @@ const obtenerLinks = (req: any, res: any) => {
|
||||
}
|
||||
});
|
||||
|
||||
} else if (!err) {
|
||||
} else {
|
||||
console.log("Error. opcion_ID no existe en /Admin/Eps/obtenerEps con.connect (linea 8)");
|
||||
res.send("error: true");
|
||||
} else {
|
||||
console.log("");
|
||||
res.send("error: true");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
@ -10,13 +10,12 @@ interface respuestaLinks {
|
||||
|
||||
const obtenerVariantes = (req: any, res: any) => {
|
||||
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
const anime_ID: string = req.params.anime_ID;
|
||||
|
||||
con.connect((err: Error) => {
|
||||
if (!err && anime_ID) {
|
||||
if (anime_ID) {
|
||||
|
||||
const query = `SELECT * FROM links_opciones WHERE links_ID=(SELECT links_ID FROM links WHERE anime_ID=${anime_ID})`;
|
||||
|
||||
@ -31,14 +30,10 @@ const obtenerVariantes = (req: any, res: any) => {
|
||||
}
|
||||
});
|
||||
|
||||
} else if (!err) {
|
||||
} else {
|
||||
console.log("Error. anime_ID no existe en Admin/Eps/obtenerVariantes con.connect:\n" + anime_ID);
|
||||
res.send("error: true");
|
||||
} else {
|
||||
console.log("Error al conectarse a la Base de Datos en Admin/Eps/obtenerVariantes con.connect:\n" + err);
|
||||
res.send("error: true");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
@ -1,13 +1,10 @@
|
||||
const nuevoOP = (req: any, res: any) => {
|
||||
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
const data = YAML.parse(req.body.data);
|
||||
|
||||
con.connect((err: any) => {
|
||||
if (!err) {
|
||||
|
||||
con.query(
|
||||
`INSERT INTO OP (anime_ID, num_OP, nombre, artista, eps) VALUES \
|
||||
( ${con.escape(data['anime_ID'])}, ${con.escape(data['num_OP'])}, ${con.escape(data['nombre'])},
|
||||
@ -23,11 +20,6 @@ const nuevoOP = (req: any, res: any) => {
|
||||
}
|
||||
);
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports.nuevoOP = nuevoOP;
|
@ -1,12 +1,11 @@
|
||||
const obtenerOPs = (req: any, res: any) => {
|
||||
|
||||
const con = require('../../mysql').obtenerConexionMySql();
|
||||
const con = require('../../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
const animeID: number = req.params.id;
|
||||
|
||||
con.connect((err: any) => {
|
||||
if (!err && animeID) {
|
||||
if (animeID) {
|
||||
|
||||
const query = `SELECT * FROM OP WHERE anime_ID=${animeID}`;
|
||||
con.query( query, (err: any, resultado: object) => {
|
||||
@ -21,11 +20,9 @@ const obtenerOPs = (req: any, res: any) => {
|
||||
});
|
||||
|
||||
} else {
|
||||
console.log("Error al conectarse a la base de datos en /Admin/OP/obtenerOPs (con.connect):\n" + err);
|
||||
console.log("Error en /Admin/OP/obtenerOPs: animeID no existe");
|
||||
res.send("error: true");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports.obtenerOPs = obtenerOPs;
|
@ -1,13 +1,12 @@
|
||||
const crearAnime = (req: any, res: any) => {
|
||||
|
||||
const con = require('../mysql').obtenerConexionMySql();
|
||||
const con = require('../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
if (req.body.data) {
|
||||
|
||||
const data = YAML.parse(req.body.data);
|
||||
con.connect((err: any) => {
|
||||
if (!err) {
|
||||
|
||||
const query = `INSERT INTO animes
|
||||
(titulo, link, imgUrl, descripcion, estudio, eps, alAire, temporada, anio, fuente, generos, color)
|
||||
VALUES (${con.escape(data.titulo)}, ${con.escape(data.link)}, ${con.escape(data.imgUrl)}, ${con.escape(data.descripcion)},
|
||||
@ -26,14 +25,7 @@ const crearAnime = (req: any, res: any) => {
|
||||
);
|
||||
|
||||
} else {
|
||||
res.send("Error al conectarse...\n" + err);
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
res.send("Error. El servidor no recibio ningun dato.");
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -1,11 +1,8 @@
|
||||
const obtenerTodosAnimes = (req: any, res: any) => {
|
||||
|
||||
const con = require('../mysql').obtenerConexionMySql();
|
||||
const con = require('../index').conexionMySQL;
|
||||
const YAML = require('yaml');
|
||||
|
||||
con.connect((err: any) => {
|
||||
if (!err) {
|
||||
|
||||
con.query(
|
||||
`SELECT anime_ID ,titulo FROM animes ORDER BY anime_ID DESC `,
|
||||
(err: any, respuesta: any) => {
|
||||
@ -14,17 +11,12 @@ const obtenerTodosAnimes = (req: any, res: any) => {
|
||||
const resultado = YAML.stringify(respuesta);
|
||||
res.send(resultado);
|
||||
|
||||
} else {
|
||||
} else { // TODO
|
||||
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports.obtenerTodosAnimes = obtenerTodosAnimes;
|
@ -1,3 +1,5 @@
|
||||
import {Connection} from "mysql";
|
||||
|
||||
interface RespuestaDatos {
|
||||
estudio: string,
|
||||
eps: number,
|
||||
@ -35,13 +37,9 @@ const YAML = require('yaml');
|
||||
|
||||
const obtenerDatos = (req: any, res: any) => {
|
||||
|
||||
const anime_ID = req.paams.anime_ID;
|
||||
|
||||
const con = require('../mysql').obtenerConexionMySql();
|
||||
|
||||
con.connect((err: Error) => {
|
||||
if (!err) {
|
||||
const anime_ID = req.params.anime_ID;
|
||||
|
||||
const con: Connection = require('../index').conexionMySQL;
|
||||
|
||||
const respuesta: any = {};
|
||||
const gestor = new GestorDeTareas(() => {
|
||||
@ -118,13 +116,6 @@ const obtenerDatos = (req: any, res: any) => {
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
} else {
|
||||
console.log("Error al conectarse a BBDD en /Animes/obtenerDatos (con.connect):\n" + err);
|
||||
res.send("error: true");
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports.obtenerDatos = obtenerDatos;
|
@ -2,10 +2,7 @@ const modificarLink = (req: any, res: any) => {
|
||||
|
||||
const ep_ID = req.body.ep_ID;
|
||||
|
||||
const con = require('../mysql').obtenerConexionMySql();
|
||||
|
||||
con.connect((err: any) => {
|
||||
if (!err) {
|
||||
const con = require('../index').conexionMySQL;
|
||||
|
||||
con.query(
|
||||
`UPDATE eps SET visitas=visitas+1 WHERE ep_ID=${ep_ID};`,
|
||||
@ -18,12 +15,6 @@ const modificarLink = (req: any, res: any) => {
|
||||
}
|
||||
);
|
||||
|
||||
} else {
|
||||
console.log("Error al conectarse a base de datos.");
|
||||
con.end();
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports.modificarLinks = modificarLink;
|
@ -50,11 +50,11 @@ interface Links {
|
||||
|
||||
const obtenerLinks = (req: any, res: any) => {
|
||||
|
||||
const con = require('../mysql').obtenerConexionMySql();
|
||||
const con = require('../index').conexionMySQL;
|
||||
const animeID = req.body.animeID;
|
||||
|
||||
con.connect((err: any) => {
|
||||
if (!err && animeID !== undefined) {
|
||||
|
||||
if (animeID) {
|
||||
|
||||
const data: Links = {aviso: '', sigEp: '', opciones: {}};
|
||||
|
||||
@ -143,10 +143,9 @@ const obtenerLinks = (req: any, res: any) => {
|
||||
|
||||
|
||||
} else {
|
||||
console.log("Hubo un error al conectarse a la base de datos :c");
|
||||
console.log("AnimeID no existe");
|
||||
res.send(`{ "exito": false }`);
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
24
srv/index.ts
24
srv/index.ts
@ -1,6 +1,8 @@
|
||||
import express from 'express';
|
||||
import * as core from "express-serve-static-core";
|
||||
import {MysqlError} from "mysql";
|
||||
|
||||
export default (app:any) => {
|
||||
export default (app: core.Express) => {
|
||||
|
||||
app.use(express.json());
|
||||
app.use(express.urlencoded());
|
||||
@ -23,4 +25,24 @@ export default (app:any) => {
|
||||
app.get('/eps/links/:opcion_ID', require('./Admin/Eps/obtenerLinks').obtenerLinks);
|
||||
app.post('/eps/links/', require('./Admin/Eps/crearLink').crearLink);
|
||||
|
||||
app.get('/estadisticas', require('./Admin/Eps/estadisticas').estadisticas);
|
||||
}
|
||||
|
||||
const conexionMySQL = (() => {
|
||||
const mysql = require('mysql');
|
||||
const SQL_CONNECT_DATA = require('./DatosConexion').DatosConexion;
|
||||
|
||||
const con = mysql.createConnection(SQL_CONNECT_DATA);
|
||||
|
||||
con.connect((err: MysqlError) => {
|
||||
if (!err) {
|
||||
console.log("MySQL iniciado c:");
|
||||
} else {
|
||||
throw err;
|
||||
}
|
||||
});
|
||||
|
||||
return con;
|
||||
})();
|
||||
|
||||
module.exports.conexionMySQL = conexionMySQL;
|
17
srv/mysql.ts
17
srv/mysql.ts
@ -1,17 +0,0 @@
|
||||
const obtenerConexionMySql = () => {
|
||||
|
||||
const mysql = require('mysql');
|
||||
const SQL_CONNECT_DATA:object = {
|
||||
// Solo para produccion habilitar socketPath
|
||||
// socketPath: '/cloudsql/pseudosubs:us-central1:base-principal',
|
||||
user: 'root',
|
||||
password: 'GgwTo5GryvDhAr06wk5opKhd',
|
||||
database: 'animes_links',
|
||||
multipleStatements: true
|
||||
};
|
||||
|
||||
return mysql.createConnection(SQL_CONNECT_DATA);
|
||||
|
||||
};
|
||||
|
||||
module.exports.obtenerConexionMySql = obtenerConexionMySql;
|
Loading…
Reference in New Issue
Block a user