| 
<?phpnamespace App\Router;
 
 use App\Controller\AnaliticosController;
 use App\Model\Analiticos;
 use App\Controller\TokenController;
 
 function addAnaliticosRoutes($router) {
 $router->mount('/Analitico', function () use ($router) {
 $router->get('/', function () {
 $analitico = new Analiticos();
 $analiticoController = new AnaliticosController($analitico);
 $resultado = $analiticoController->listarAnalitico();
 if(!$resultado){
 echo json_encode(["status" => false, "Analitico" => $resultado,"mensagem"=>"nenhum resultado encontrado"]);
 exit;
 }else{
 echo json_encode($resultado);
 exit;
 }
 });
 
 $router->get('/([a-z0-9_-]+)', function ($id) {
 $permitido = new TokenController();
 $permitido->autorizado();
 $analitico = new Analiticos();
 $analiticoController = new AnaliticosController($analitico);
 $resultado = $analiticoController->buscarPorId($id);
 if(!$resultado){
 echo json_encode(["status" => false, "Analitico" => $resultado,"mensagem"=>"nenhum resultado encontrado"]);
 exit;
 }else{
 echo json_encode(["status" => true, "Analitico" => $resultado]);
 exit;
 }
 });
 $router->post('/', function () {
 $body = json_decode(file_get_contents('php://input'), true);
 $analitico = new Analiticos();
 foreach ($body as $movement) {
 $timestampInSeconds = $movement['time'] / 1000;
 $mobile = $movement['isMobile'] ? 1 : 0;
 $mysqlDateTime = date('Y-m-d H:i:s', $timestampInSeconds);
 $analitico->setVisitorId($movement['visitor_id']);
 $analitico->setX(floatval($movement['x']));
 $analitico->setY(floatval($movement['y']));
 $analitico->setTime($mysqlDateTime);
 $analitico->setIsMobile($mobile);
 $analitico->setScreenWidth($movement['screenSize']['width']);
 $analitico->setScreenHeight($movement['screenSize']['height']);
 
 $analiticoController = new AnaliticosController($analitico);
 $resultado = $analiticoController->adicionarAnalitico();
 echo json_encode(['status' => $resultado]);
 }
 });
 
 });
 }
 
 
 |