Loading app/Exports/ContactosExport.php +12 −6 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ use Maatwebsite\Excel\Concerns\WithHeadings; use App\Models\Contacto; use App\Models\Grupos; use Exception; class ContactosExport implements FromCollection, WithHeadings { Loading Loading @@ -50,10 +51,15 @@ public function collection() } // Mapear los datos a un formato exportable if (!$contactos->isEmpty()) { return $contactos->map(function ($contacto) { return $this->formatContactoData($contacto); }); }else{ return throw new Exception('No se encontraron contactos con los filtros seleccionados.'); } } public function headings(): array Loading @@ -77,7 +83,7 @@ private function applyFilters($query) }); } elseif (!empty($this->filters['grupos'])) { $grupoId = $this->filters['grupos']; $subgruposIds = Grupos::find($grupoId)->subgrupos->pluck('id')->toArray(); $subgruposIds = Grupos::find(153)->subgrupos->pluck('id')->toArray(); $query->where(function ($query) use ($grupoId, $subgruposIds) { // Contactos directamente en el grupo Loading Loading
app/Exports/ContactosExport.php +12 −6 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ use Maatwebsite\Excel\Concerns\WithHeadings; use App\Models\Contacto; use App\Models\Grupos; use Exception; class ContactosExport implements FromCollection, WithHeadings { Loading Loading @@ -50,10 +51,15 @@ public function collection() } // Mapear los datos a un formato exportable if (!$contactos->isEmpty()) { return $contactos->map(function ($contacto) { return $this->formatContactoData($contacto); }); }else{ return throw new Exception('No se encontraron contactos con los filtros seleccionados.'); } } public function headings(): array Loading @@ -77,7 +83,7 @@ private function applyFilters($query) }); } elseif (!empty($this->filters['grupos'])) { $grupoId = $this->filters['grupos']; $subgruposIds = Grupos::find($grupoId)->subgrupos->pluck('id')->toArray(); $subgruposIds = Grupos::find(153)->subgrupos->pluck('id')->toArray(); $query->where(function ($query) use ($grupoId, $subgruposIds) { // Contactos directamente en el grupo Loading