add spreadseert
This commit is contained in:
parent
e6ab3344e3
commit
c9eb8adc03
|
@ -68,6 +68,7 @@ class ProcessSubmitJob implements ShouldQueue
|
||||||
$this->makeSheet($s, $group, $groupParticipants);
|
$this->makeSheet($s, $group, $groupParticipants);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$s = $this->addStat($s);
|
||||||
$spreadsheetFile = $s->generate();
|
$spreadsheetFile = $s->generate();
|
||||||
$filesystem->write($this->event->slug.'/anmeldungen.xlsx', file_get_contents($spreadsheetFile));
|
$filesystem->write($this->event->slug.'/anmeldungen.xlsx', file_get_contents($spreadsheetFile));
|
||||||
}
|
}
|
||||||
|
@ -83,6 +84,8 @@ class ProcessSubmitJob implements ShouldQueue
|
||||||
$s = $this->newSpreadsheet();
|
$s = $this->newSpreadsheet();
|
||||||
|
|
||||||
$this->makeSheet($s, 'Alle', $participants);
|
$this->makeSheet($s, 'Alle', $participants);
|
||||||
|
$s->headers([new SpreadsheetHeader('Stamm'), new SpreadsheetHeader('TN')]);
|
||||||
|
$s = $this->addStat($s);
|
||||||
|
|
||||||
$spreadsheetFile = $s->generate();
|
$spreadsheetFile = $s->generate();
|
||||||
$filesystem->write($participantGroup.'/anmeldungen-'.$this->event->slug.'.xlsx', file_get_contents($spreadsheetFile));
|
$filesystem->write($participantGroup.'/anmeldungen-'.$this->event->slug.'.xlsx', file_get_contents($spreadsheetFile));
|
||||||
|
@ -95,6 +98,15 @@ class ProcessSubmitJob implements ShouldQueue
|
||||||
return (new Spreadsheet('Anmeldezahlen '.$this->event->title))->headers($headers);
|
return (new Spreadsheet('Anmeldezahlen '.$this->event->title))->headers($headers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function addStat(Spreadsheet $s): Spreadsheet
|
||||||
|
{
|
||||||
|
$groupBy = $this->event->loadConfig('groupBy');
|
||||||
|
$stat = Participant::where('event_id', $this->event->id)->get()->groupBy(fn ($p) => data_get($p->payload, $groupBy))->map(fn ($p) => $p->count())->map(fn ($key, $value) => [$value, $key])->values();
|
||||||
|
$s->sheet('Statistik', $stat->toArray());
|
||||||
|
|
||||||
|
return $s;
|
||||||
|
}
|
||||||
|
|
||||||
private function getfields()
|
private function getfields()
|
||||||
{
|
{
|
||||||
return collect($this->event->loadConfig('fields'));
|
return collect($this->event->loadConfig('fields'));
|
||||||
|
|
Loading…
Reference in New Issue