Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
14 changes: 14 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Obrigado RedFox


## Projeto

O back end estou usando express e configurei o servidor manualmente, porem sei o básico de adonisJs, mas optei pelo express pela liberdade e tamanho desde projeto.

A api esta ligada a porta 3000 no localhost :)



## Iniciar - npm start

Durante o meu curso técnico eu não vi nenhuma ferramenta de build, estou estudando o tema agora, por isso não consegui usar nenhuma, porem o comando npm start nesta pasta fará com que o servidor funcione, estou usando nodemon que é uma tecnologia que me agrada bastante!
107 changes: 107 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/connection.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
const mysql = require('mysql');
const util = require('util');
const utf8 = require('utf8');
const request = require('request');

//Configurando Conecção ao banco
const connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '',
database : 'bdPokedex'
});

//Realizando conecção
connection.connect(function(err){
if(err) return console.log(err);
console.log('conectou!');
})


//Metodo que retonar todos os pokemons
exports.getPokemons = function(res){
var query = "SELECT * from tbpokemon";
execute(res, query);
}

//Meteodo para pegar um unico pokemon
exports.getPokemonCod = function(req, res){
let pokemon = req.body;
var query = "SELECT *, DATE_FORMAT(dataCadastro, '%d/%m/%Y') as 'dataFormatada' from tbPokemon where codPokemon = " + pokemon.codPokemon;
execute(res, query);
}

//Procurar um Pokemon
exports.searchPokemon = function(req, res){
var pokemon = req.body
var query = util.format("SELECT * from tbPokemon where nomePokemon like '%"+pokemon.nomePokemon+"%'");
execute(res, query);
}


//Metodo que cadastra um novo pokemon
exports.cadPokemon = async function(req, res){
pokemon = req.body;
var data = new Date();
var dia = data.getDate();
var mes = data.getMonth();
var ano = data.getFullYear();
mes += 1;
if(mes <= 9){
mes = '0' + mes;
}
var str_data = ano + '-' + mes + '-' + dia;

// VV FEATURE DA PESQUISA DE IMAGEM AUTOMATICA AQUI VV //

let nome = pokemon.nomePokemon.toLowerCase();
let url = 'https://pokeapi.co/api/v2/pokemon/' + nome + '/';

const resp = res;
await request(url, function(err, res, body){
var imgPoke = '';
if(body == 'Not Found'){
imgPoke = 'https://i.ya-webdesign.com/images/pokeball-pixel-png-2.png';
}else{
let data = JSON.parse(body);
console.log(data.sprites.front_default);
imgPoke = data.sprites.front_default;
}


var query = util.format("insert into tbPokemon(nomePokemon, forcaPokemon, velPokemon, tipoPokemon, habilidadePokemon, fotoPokemon, dataCadastro) VALUES (\'%s\',%s,%s,\'%s\',\'%s\', \'%s\', \'%s\')" , pokemon.nomePokemon, pokemon.forcaPokemon, pokemon.velPokemon, pokemon.tipoPokemon, pokemon.habilidadePokemon, imgPoke, str_data)
console.log(str_data);
execute(resp, query);
})
// ^^ FEATURE DA PESQUISA DE IMAGEM AUTOMATICA AQUI ^^ //

}


//Metodo que apaga um pokemon
exports.delPokemon = function(req, res){
pokemon = req.body;

var query = util.format("delete from tbPokemon where codPokemon = %s", pokemon.codPokemon);
execute(res, query)
}

//Metodo para editar um pokemon cadastrado
exports.editPokemon = function(req, res){
pokemon = req.body;




var query = util.format("UPDATE tbpokemon set nomePokemon = \'%s\', forcaPokemon = %s, velPokemon = %s, habilidadePokemon = \'%s\', tipoPokemon = \'%s\' WHERE codPokemon = %s", pokemon.nomePokemon, pokemon.forcaPokemon, pokemon.velPokemon, pokemon.habilidadePokemon, pokemon.tipoPokemon, pokemon.codPokemon);
execute(res, query);
}


//Metodo que executa uma query
function execute(res, query){
connection.query(query, function(err, results, fields){
if(err) return console.log(err);
res.send(results);
})
}
42 changes: 42 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const app = express();

const bd = require('./connection.js');

app.use(cors());
app.options('*', cors());

app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());


app.get('/pokemon', function(req, res){
bd.getPokemons(res);
})


app.post('/buscaPokemon', function(req, res){
bd.searchPokemon(req, res);
})

app.post('/getPokemon', function(req, res){
bd.getPokemonCod(req, res);
})

app.post('/cadPokemon', function(req, res){
bd.cadPokemon(req, res);
})

app.post('/delPokemon', function(req, res){
bd.delPokemon(req, res);
})

app.put('/editPokemon', function(req, res){
bd.editPokemon(req, res);
})

app.listen(3000, () => {
console.log("Server running on port 3000 sucessfull")
});
15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/is-ci

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/is-ci.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/mime

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/mime.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/nodemon

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/nodemon.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/nodetouch

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/nopt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/nopt.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/rc

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/rc.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/semver

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/semver.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/sshpk-conv

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions Pokedex RedFox/BackEnd - NodeJs/node_modules/.bin/sshpk-sign

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading