<?php
namespace App\Router;
use App\Controller\EnderecosController;
use App\Model\Enderecos;
use App\Model\Saloes;
use App\Controller\TokenController;
function addEnderecosRoutes($router) {
$router->mount('/Enderecos', function () use ($router) {
$router->get('/', function () {
$enderecos = new Enderecos();
$saloes = new Saloes();
$bairro = filter_input(INPUT_GET, 'bairro', FILTER_SANITIZE_STRING);
$enderecos->setBairro($bairro);
$EnderecosController = new EnderecosController($enderecos, $saloes);
$resultado = $EnderecosController->listarEndereco();
echo json_encode($resultado);
});
$router->get('/geo', function () {
$enderecos = new Enderecos();
$saloes = new Saloes();
$latitude = filter_input(INPUT_GET, 'lat', FILTER_VALIDATE_FLOAT);
$longitude = filter_input(INPUT_GET, 'long', FILTER_VALIDATE_FLOAT);
if ($latitude === false || $latitude < -90 || $latitude > 90) {
echo json_encode(['status' => false, 'message' => 'Dados inválidos.']);
}
if ($longitude === false || $longitude < -180 || $longitude > 180) {
echo json_encode(['status' => false, 'message' => 'Dados inválidos.']);
}
$latMin = (floor($latitude * 100) / 100) + 0.01;
$latMax = ($latMin + 0.008009) - 0.02;
$longMin = floor($longitude * 100) / 100;
$longMax = $longMin + 0.02;
$enderecos->setLatitude($latitude);
$enderecos->setLongitude($longitude);
$EnderecosController = new EnderecosController($enderecos, $saloes);
$resultado = $EnderecosController->listarEnderecoGEO($latMin,$latMax,$longMin,$longMax);
echo json_encode($resultado);
});
$router->post('/', function () {
$permitido = new TokenController();
$permitido->autorizado();
$iduser= $permitido->verIdUserToken();
$body = json_decode(file_get_contents('php://input'), true);
$enderecos = new Enderecos();
$saloes = new Saloes();
$enderecos->setRua($body['rua']);
$enderecos->setCep($body['cep']);
$enderecos->setBairro($body['bairro']);
$enderecos->setCidade($body['cidade']);
$enderecos->setEstado($body['estado']);
$enderecos->setLatitude($body['latitude']);
$enderecos->setLongitude($body['longitude']);
$enderecos->setSalao($body['idSalao']);
$enderecos->setIdusuario($iduser);
$EnderecosController = new EnderecosController($enderecos,$saloes );
$resultado = $EnderecosController->adicionarEndereco();
echo json_encode($resultado);
});
$router->delete('/([a-z0-9_-]+)', function ($id) {
$permitido = new TokenController();
$permitido->autorizado();
$enderecos = new Enderecos();
$saloes = new Saloes();
$saloes->setId($id);
$EnderecosController = new EnderecosController($enderecos,$saloes );
$resultado = $EnderecosController->removerEndereco();
if(!$resultado){
echo json_encode(['status' => false, 'message' => 'Não pode remover']);
exit;
}
echo json_encode(['status' => true, 'message' => 'Removido com sucesso']);
exit;
});
});
}
|