fino a eventi e report prima del tipo di eventi
This commit is contained in:
@@ -121,6 +121,47 @@ class ReportController extends Controller
|
||||
return redirect()->route('report.index')->with('success', 'Report personalizzato eliminato.');
|
||||
}
|
||||
|
||||
public function printPreview(Request $request)
|
||||
{
|
||||
if (!auth()->user()->canAccess('report')) {
|
||||
abort(403);
|
||||
}
|
||||
|
||||
$reportType = $request->input('report');
|
||||
$customReportId = $request->input('custom_id');
|
||||
|
||||
if ($customReportId) {
|
||||
$report = \App\Models\ReportCustom::findOrFail($customReportId);
|
||||
if ($report->user_id !== auth()->id()) {
|
||||
abort(403);
|
||||
}
|
||||
$data = $this->runCustomReport($report);
|
||||
return view('report.print-preview', compact('reportType', 'data', 'report'));
|
||||
}
|
||||
|
||||
$data = match ($reportType) {
|
||||
'individui_per_genere' => $this->reportIndividuiPerGenere(),
|
||||
'individui_per_eta' => $this->reportIndividuiPerEta(),
|
||||
'gruppi_gerarchia' => $this->reportGruppiGerarchia(),
|
||||
'gruppi_membri' => $this->reportGruppiMembri(),
|
||||
'eventi_calendario' => $this->reportEventiCalendario(),
|
||||
'documenti_per_tipo' => $this->reportDocumentiPerTipo(),
|
||||
'contatti_per_tipo' => $this->reportContattiPerTipo(),
|
||||
'mailing_list_dettaglio' => $this->reportMailingListDettaglio(),
|
||||
'individui_senza_contatti' => $this->reportIndividuiSenzaContatti(),
|
||||
'individui_senza_gruppo' => $this->reportIndividuiSenzaGruppo(),
|
||||
'eventi_per_gruppo' => $this->reportEventiPerGruppo(),
|
||||
'documenti_orfani' => $this->reportDocumentiOrfani(),
|
||||
default => null,
|
||||
};
|
||||
|
||||
if (!$data) {
|
||||
return redirect()->route('report.index')->with('error', 'Report non trovato.');
|
||||
}
|
||||
|
||||
return view('report.print-preview', compact('reportType', 'data'));
|
||||
}
|
||||
|
||||
public function exportCSV(Request $request)
|
||||
{
|
||||
if (!auth()->user()->canAccess('report')) {
|
||||
|
||||
Reference in New Issue
Block a user