diff --git a/app/Http/Controllers/Dashboard/AtencionController.php b/app/Http/Controllers/Dashboard/AtencionController.php new file mode 100644 index 0000000..090b263 --- /dev/null +++ b/app/Http/Controllers/Dashboard/AtencionController.php @@ -0,0 +1,65 @@ +only(['start', 'end', 'type', 'action']); + $input = array_merge(['action' => 'index', 'type' => 'api'], $query); + + $startDate = $input['start'] ?? date('Y-01-01'); + $endDate = $input['end'] ?? date('Y-12-31'); + + $baseParams = [ + 'start_date' => $startDate, + 'end_date' => $endDate, + 'type' => $input['type'] ?? 'api', + 'action' => $input['action'] ?? 'index', + ]; + + $baseUrl = 'https://apoyos.comalcalco.gob.mx/beneficiaries/stats-by-date-range'; + $countsUrl = 'https://apoyos.comalcalco.gob.mx/beneficiaries/counts-by-date'; + + try{ + $response = Http::get($baseUrl, $baseParams); + + if(!$response->successful()){ + return response()->json(['error' => 'Error del servicio'], $response->status()); + } + + $mainData = $response->json(); + $countsAc = []; + try{ + $countsResp = Http::get($countsUrl, [ + 'start_date' => $startDate, + 'end_date' => $endDate, + ]); + + if($countsResp->successful()){ + $countsAc = $countsResp->json(); + } else { + Log::error('Error al obtener los conteos de atención', ['status' => $countsResp->status()]); + } + }catch (\Exception $e) { + Log::error('Error al obtener los conteos de atención', ['exception' => $e->getMessage()]); + } + + $combinedData = array_merge( + is_array($mainData) ? $mainData : [], + [ + 'counts' => $countsAc, + ] + ); + return response()->json($combinedData, 200) + ->header('Content-Type', 'application/json'); + }catch (\Exception $e) { + Log::error('Error en la consulta de atención', ['exception' => $e->getMessage()]); + return response()->json(['error' => 'Error en la consulta de atención'], 500); + } + } +} diff --git a/resources/js/Pages/Dashboard/AtencionCiudadana.vue b/resources/js/Pages/Dashboard/AtencionCiudadana.vue index 36f021e..67879d4 100644 --- a/resources/js/Pages/Dashboard/AtencionCiudadana.vue +++ b/resources/js/Pages/Dashboard/AtencionCiudadana.vue @@ -1,278 +1,406 @@ diff --git a/resources/js/Pages/Dashboard/Index.vue b/resources/js/Pages/Dashboard/Index.vue index 9f348df..bfc6dbd 100644 --- a/resources/js/Pages/Dashboard/Index.vue +++ b/resources/js/Pages/Dashboard/Index.vue @@ -83,7 +83,7 @@ const logout = () => { {
-

Apoyo a Beneficiarios

+

Apoyo a Beneficiarios y DIF

- Dashboard de apoyo a Beneficiarios + Gráficas de apoyo a Beneficiarios y DIF

@@ -141,7 +141,7 @@ const logout = () => {
{
-

DIF

-

Dashboard de DIF

+

Información de Apoyos a Beneficiarios y DIF

+

{