Skip to content

Commit 35c3374

Browse files
committed
Add ticket name to export
1 parent 6dc8f68 commit 35c3374

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

backend/app/Exports/AttendeesExport.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@
55
use Carbon\Carbon;
66
use HiEvents\DomainObjects\AttendeeDomainObject;
77
use HiEvents\DomainObjects\Enums\QuestionTypeEnum;
8+
use HiEvents\DomainObjects\Enums\TicketType;
89
use HiEvents\DomainObjects\QuestionDomainObject;
10+
use HiEvents\DomainObjects\TicketDomainObject;
11+
use HiEvents\DomainObjects\TicketPriceDomainObject;
912
use HiEvents\Resources\Attendee\AttendeeResource;
1013
use HiEvents\Services\Domain\Question\QuestionAnswerFormatter;
1114
use Illuminate\Contracts\Pagination\LengthAwarePaginator;
@@ -51,6 +54,7 @@ public function headings(): array
5154
'Is Checked In',
5255
'Checked In At',
5356
'Ticket ID',
57+
'Ticket Name',
5458
'Event ID',
5559
'Public ID',
5660
'Short ID',
@@ -75,6 +79,16 @@ public function map($attendee): array
7579
);
7680
});
7781

82+
/** @var TicketDomainObject $ticket */
83+
$ticket = $attendee->getTicket();
84+
$ticketName = $ticket->getTitle();
85+
if ($attendee->getTicket()?->getType() === TicketType::TIERED->name) {
86+
$ticketName .= ' - ' . $ticket
87+
->getTicketPrices()
88+
->first(fn(TicketPriceDomainObject $tp) => $tp->getId() === $attendee->getTicketPriceId())
89+
->getLabel();
90+
}
91+
7892
return array_merge([
7993
$attendee->getId(),
8094
$attendee->getFirstName(),
@@ -86,6 +100,7 @@ public function map($attendee): array
86100
? Carbon::parse($attendee->getCheckIn()->getCreatedAt())->format('Y-m-d H:i:s')
87101
: '',
88102
$attendee->getTicketId(),
103+
$ticketName,
89104
$attendee->getEventId(),
90105
$attendee->getPublicId(),
91106
$attendee->getShortId(),

backend/app/Http/Actions/Attendees/ExportAttendeesAction.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
use HiEvents\DomainObjects\Enums\QuestionBelongsTo;
77
use HiEvents\DomainObjects\EventDomainObject;
88
use HiEvents\DomainObjects\QuestionAndAnswerViewDomainObject;
9+
use HiEvents\DomainObjects\TicketDomainObject;
10+
use HiEvents\DomainObjects\TicketPriceDomainObject;
911
use HiEvents\Exports\AttendeesExport;
1012
use HiEvents\Http\Actions\BaseAction;
1113
use HiEvents\Repository\Eloquent\Value\Relationship;
@@ -37,6 +39,15 @@ public function __invoke(int $eventId): BinaryFileResponse
3739
domainObject: AttendeeCheckInDomainObject::class,
3840
name: 'check_in',
3941
))
42+
->loadRelation(new Relationship(
43+
domainObject: TicketDomainObject::class,
44+
nested: [
45+
new Relationship(
46+
domainObject: TicketPriceDomainObject::class,
47+
),
48+
],
49+
name: 'ticket'
50+
))
4051
->findByEventIdForExport($eventId);
4152

4253
$questions = $this->questionRepository->findWhere([

0 commit comments

Comments
 (0)