API inicial

This commit is contained in:
2021-03-25 17:23:36 +01:00
commit 218326c402
1878 changed files with 274122 additions and 0 deletions

17
src/database/_db.js Normal file
View File

@@ -0,0 +1,17 @@
const mariadb = require('mariadb');
var pool =
mariadb.createPool({
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PWD,
database: process.env.DB_NAME,
connectionLimit: 50
});
async function getConn() {
let conn = await pool.getConnection();
return conn;
}
module.exports.getConn = getConn;

89
src/database/consultas.js Normal file
View File

@@ -0,0 +1,89 @@
const mariadb = require('./_db');
async function getUsers(){
try {
let conn = await mariadb.getConn();
const rows = await conn.query("SELECT * FROM user");
conn.release();
return rows;
}
catch(err){
console.log("No se pudo acceder a la BD: "+err);
}
}
module.exports.getUsers = getUsers;
async function userLogin(username, password){
try {
let conn = await mariadb.getConn();
const rows = await conn.query("SELECT userID, discotecaID, userType, username FROM user WHERE username = ? AND password = ?", [username, password]);
conn.release();
if (rows){
return rows;}
}
catch(err){
console.log("No se pudo acceder a la BD: "+err);
}
}
module.exports.userLogin = userLogin;
async function getDiscoteca(discotecaId){
try{
let conn = await mariadb.getConn();
const rows = await conn.query("SELECT discotecaID, nombre, telefono, localizacion FROM discoteca WHERE discotecaID = ?", [discotecaId]);
conn.release();
if (rows){
return rows;}
}catch(err){
console.log("No se pudo acceder a la BD: "+err);
}
}
module.exports.getDiscoteca = getDiscoteca;
async function addEvento(evento){
try{
let conn = await mariadb.getConn();
const rows = await conn.query
("INSERT INTO evento (discotecaID, nombre, localizacion, fecha, hora, descripcion, precio1, precio2) VALUES (?, ?, ?, ?, ?, ?, ?, ?)",
[evento.discotecaID, evento.nombre, evento.localizacion, evento.fecha, evento.hora, evento.descripcion, evento.precio1, evento.precio2]);
conn.release();
if (rows){
return rows;}
}catch(err){
console.log("No se pudo acceder a la BD: "+err);
}
}
module.exports.addEvento = addEvento;
async function getEventos(discotecaId){
try{
let conn = await mariadb.getConn();
const rows = await conn.query("SELECT id, discotecaID, nombre, localizacion, fecha, hora, descripcion, precio1, precio2 FROM evento WHERE discotecaID = ?", [discotecaId.id]);
conn.release();
if (rows){
return rows;}
}catch(err){
console.log("No se pudo acceder a la BD: "+err);
}
}
module.exports.getEventos = getEventos;

61
src/routes/rutas.js Normal file
View File

@@ -0,0 +1,61 @@
var express = require('express');
var consultasDB = require ('../database/consultas');
var router = express.Router();
router.get('/users', async function(req, res) {
var users = await consultasDB.getUsers();
res.setHeader('Content-Type', 'application/json');
res.send(JSON.stringify(users));
})
router.post('/users', async function(req, res) {
const userIn = req.body;
if(!userIn){
return res.status(500).send("Datos incorrectos.")
}
console.log(userIn);
userOut = await consultasDB.userLogin(userIn.loginUser, userIn.loginPassword);
if (userOut){
console.log(JSON.stringify(userOut));
res.send(JSON.stringify(userOut));}
})
router.post('/discoteca', async function(req, res){
console.log(req.body);
const discotecaId = req.body;
if(!discotecaId){
return res.status(500).send("Datos incorrectos.")
}
discoteca = await consultasDB.getDiscoteca(discotecaId.id);
if(discoteca){
console.log(JSON.stringify(discoteca));
res.send(JSON.stringify(discoteca));
}
})
router.post('/evento', async function(req, res){
console.log(req.body);
const evento = req.body;
eventout = await consultasDB.addEvento(evento);
if (eventout){
console.log(JSON.stringify(eventout));
res.send(JSON.stringify(eventout));
}
})
router.post('/eventosDiscoteca', async function(req, res){
console.log(req.body);
const evento = req.body;
eventout = await consultasDB.getEventos(evento);
if (eventout){
console.log(JSON.stringify(eventout));
res.send(JSON.stringify(eventout));
}
})
module.exports = router;