startOfDay(); $finDelDia = now()->endOfDay(); $actividad = DB::table('vista_usuarios_acceso') ->where('idEscuela', 'COLEGIOABC') ->whereBetween('fechaHora', [$inicioDelDia, $finDelDia]) ->get(); $data = [ "message" => "actividad encontrada", "data" => $actividad, "status" => 200, ]; return response()->json($data, 200); } public function count() { $totalUsers = DB::table('usuarios') ->count(); $teachers = DB::table('usuarios') ->where('tipoUsuario', 'PR') ->count(); $students = DB::table('usuarios') ->where('tipoUsuario', 'AL') ->count(); $parents = DB::table('usuarios') ->where('tipoUsuario', 'PF') ->count(); $data = [ "message" => "actividad encontrada", "totalUsers" => $totalUsers, "teachers" => $teachers, "students" => $students, "parents" => $parents, "status" => 200, ]; return response()->json($data, 200); } public function localIP(Request $request) { // Obtener la IP local $ipLocal = $request->ip(); // respuesta del endpoint $data = [ "message" => "Se encotró la ipLocal", "local_ip" => $ipLocal, "status" => 200 ]; return response()->json($data, 200); } public function show($id) { $id = base64_decode($id); $actividad = DB::table('vista_usuarios_acceso') ->select('ipPublica', 'iPLocal', 'plataforma', 'navegador', 'version', 'tipoDispositivo') ->where('idActividad', $id)->get(); if (!$actividad) { $data = [ "message" => "No se encontró la actividad", "status" => 404, ]; return response()->json($data, 404); } $data = [ "message" => "actividad encontrada", "data" => $actividad, "status" => 200, ]; return response()->json($data, 200); } public function store(Request $request) { // Creación de la actividad try { DB::table('usuariosacceso')->insert([ 'idEscuela' => 'COLEGIOABC', 'idUsuario' => $request->idUsuario, 'fechaHora' => $request->fechaHora, 'ipPublica' => $request->ipPublica, 'ipLocal' => $request->ipLocal, 'plataforma' => $request->plataforma, 'navegador' => $request->navegador, 'version' => $request->version, 'tipoDispositivo' => $request->tipoDispositivo, 'esMovil' => $request->esMovil, 'esTableta' => $request->esTableta, 'sesionCerrada' => $request->sesionCerrada, 'sesionMensual' => $request->sesionMensual, 'fechaHoraFin' => $request->fechaHoraFin, ]); // Si la inserción fue exitosa, retornar un mensaje de éxito return response()->json(['mensaje' => 'Actividad almacenada exitosamente'], 201); } catch (\Exception $e) { // Respuesta de error return response()->json(['mensaje' => 'Error al registrar la actividad: ' . $e->getMessage()], 500); } } }