barra de busqueda y temas
This commit is contained in:
@@ -2,7 +2,7 @@ var express = require('express');
|
||||
var app = express();
|
||||
var cors = require('cors');
|
||||
app.get('/', function(req, res) {
|
||||
res.send('Hello World!');
|
||||
res.send('Api de protal editorial');
|
||||
});
|
||||
require('dotenv').config()
|
||||
app.use(cors());
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
const connection = require('../conf/connection.js');
|
||||
const express = require('express')
|
||||
var app = express();
|
||||
|
||||
|
||||
|
||||
|
||||
function query(consulta) {
|
||||
return new Promise(function(resolve, reject) {
|
||||
connection.query(`${consulta}`, (error, results, files) => {
|
||||
if (error) reject(error);
|
||||
resolve(results);
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
app.get('/getLibros', async(req, res) => {
|
||||
|
||||
try{
|
||||
let sqlString = `SELECT idLibro, titulo, categoria, autor FROM Libro;`;
|
||||
console.log(` Esta es la cadena : ${sqlString}`);
|
||||
let respuestaSql = await query(sqlString);
|
||||
|
||||
|
||||
|
||||
res.status(200).json({error:false, msj: 'exito', data: respuestaSql})
|
||||
}
|
||||
catch(error){
|
||||
res.status(400).json({error: true, msj: 'No se pudo obtener los libros similares', desc: error});
|
||||
return;
|
||||
}
|
||||
|
||||
});
|
||||
module.exports = app;
|
||||
@@ -8,5 +8,7 @@ app.use(require('./libroNovedades'));
|
||||
app.use(require('./libroSimilar'));
|
||||
app.use(require('./getNombresCarrusel'));
|
||||
app.use(require('./getImagenCarrusel'));
|
||||
app.use(require('./getLibros'));
|
||||
app.use(require('./temaLibro'));
|
||||
|
||||
module.exports = app;
|
||||
+41
-8
@@ -1,11 +1,8 @@
|
||||
const connection = require('../conf/connection.js');
|
||||
const express = require('express')
|
||||
var app = express();
|
||||
var xlsx = require('node-xlsx');
|
||||
var fs = require('fs');
|
||||
var busboy = require('connect-busboy');
|
||||
var path = require('path');
|
||||
const { type } = require('os');
|
||||
|
||||
|
||||
|
||||
|
||||
function query(consulta) {
|
||||
@@ -18,6 +15,35 @@ function query(consulta) {
|
||||
}
|
||||
|
||||
|
||||
function getRandomInt(min, max) {
|
||||
return Math.floor(Math.random() * (max - min)) + min;
|
||||
}
|
||||
function getRandom(mini, maxi){
|
||||
let a,b,c;
|
||||
for(let i=1; i<=3; i++){
|
||||
if(i==3){
|
||||
c=a;
|
||||
while(c===a || c===b){
|
||||
console.log(`valores de a: ${a} ${b}`);
|
||||
c=getRandomInt(mini,maxi);
|
||||
}
|
||||
|
||||
}
|
||||
else if(i==2){
|
||||
b=a;
|
||||
while(a===b){
|
||||
b=getRandomInt(mini,maxi);
|
||||
}
|
||||
}
|
||||
else{
|
||||
a=getRandomInt(mini,maxi);
|
||||
}
|
||||
|
||||
}
|
||||
return [a,b,c];
|
||||
|
||||
}
|
||||
|
||||
app.get('/librosSimilares', async(req, res) => {
|
||||
|
||||
|
||||
@@ -26,12 +52,19 @@ app.get('/librosSimilares', async(req, res) => {
|
||||
res.status(400).json({error: true, msj: 'Falta la categoria del libro como parametro'});
|
||||
return;
|
||||
}
|
||||
let sqlString = `SELECT * FROM Libro WHERE categoria='${data.categoria}' LIMIT 3;`;
|
||||
let sqlString = `SELECT * FROM Libro WHERE categoria='${data.categoria}' LIMIT 35;`;
|
||||
console.log(` Esta es la cadena : ${sqlString}`);
|
||||
let respuestaSql = await query(sqlString);
|
||||
|
||||
let maxi = respuestaSql.length;
|
||||
let mini = 0;
|
||||
|
||||
let values = getRandom(mini, maxi);
|
||||
|
||||
respuestaSql = [respuestaSql[values[0]], respuestaSql[values[1]], respuestaSql[values[2]] ];
|
||||
|
||||
if(respuestaSql.length === 0 ){
|
||||
res.status(400).json({error: true, msj: 'No se pudo hacer la consulta'});
|
||||
res.status(400).json({error: true, msj: 'No se tienen libros similares'});
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -39,7 +72,7 @@ app.get('/librosSimilares', async(req, res) => {
|
||||
res.status(200).json({error:false, msj: 'exito', data: respuestaSql})
|
||||
}
|
||||
catch(error){
|
||||
res.status(400).json({error: true, msj: 'No se pudo obtener la imagen', desc: error});
|
||||
res.status(400).json({error: true, msj: 'No se pudo obtener los libros similares', desc: error});
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
const connection = require('../conf/connection.js');
|
||||
const express = require('express')
|
||||
var app = express();
|
||||
|
||||
|
||||
|
||||
|
||||
function query(consulta) {
|
||||
return new Promise(function(resolve, reject) {
|
||||
connection.query(`${consulta}`, (error, results, files) => {
|
||||
if (error) reject(error);
|
||||
resolve(results);
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
app.get('/temaLibro', async(req, res) => {
|
||||
|
||||
try{
|
||||
|
||||
let data = req.query;
|
||||
if( typeof( data.categoria ) === 'undefined' ){
|
||||
res.status(400).json({error: true, msj: 'Falta la categoria del libro como parametro'});
|
||||
return;
|
||||
}
|
||||
let sqlString = `SELECT * FROM Libro WHERE categoria='${data.categoria}';`;
|
||||
console.log(` Esta es la cadena : ${sqlString}`);
|
||||
let respuestaSql = await query(sqlString);
|
||||
|
||||
|
||||
if(respuestaSql.length === 0 ){
|
||||
res.status(400).json({error: true, msj: 'No se tienen libros similares'});
|
||||
return;
|
||||
}
|
||||
|
||||
res.status(200).json({error:false, msj: 'exito', data: respuestaSql})
|
||||
}
|
||||
catch(error){
|
||||
res.status(400).json({error: true, msj: 'No se pudo obtener los libros similares', desc: error});
|
||||
return;
|
||||
}
|
||||
|
||||
});
|
||||
module.exports = app
|
||||
Reference in New Issue
Block a user