agenda($eid, $fecha); // Enriquecer con servicios extra y estado de asignación $db = Database::getInstance(); foreach ($agenda as &$item) { $item['servicios_extra'] = $db->fetchAll( "SELECT * FROM lab_servicios_extra WHERE domicilio_id = ? ORDER BY created_at ASC", [(int)$item['domicilio_id']] ); // Info completa del domicilio (notas, indicaciones) $extra = $db->fetch( "SELECT notas_admin, indicaciones_dir, barrio, ciudad FROM lab_domicilios WHERE id = ?", [(int)$item['domicilio_id']] ); if ($extra) $item = array_merge($item, $extra); } unset($item); // Resumen rápido $totales = array_count_values(array_column($agenda, 'domicilio_estado')); jsonOk([ 'enfermera_id' => $eid, 'fecha' => $fecha, 'agenda' => $agenda, 'total' => count($agenda), 'totales' => $totales, ]); } catch (Exception $e) { jsonError($e->getMessage(), 500); }