Add per-billet sales stats in stats tab
- Calculate sold count and revenue per billet from paid orders - Display 'Ventes par billet' card between KPIs and orders list Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -392,11 +392,20 @@ class AccountController extends AbstractController
|
||||
|
||||
$eventTotalHT = 0;
|
||||
$eventTotalSold = 0;
|
||||
$billetStats = [];
|
||||
$paidEventOrders = $em->getRepository(BilletBuyer::class)->findBy(['event' => $event, 'status' => BilletBuyer::STATUS_PAID]);
|
||||
foreach ($paidEventOrders as $paidOrder) {
|
||||
$eventTotalHT += $paidOrder->getTotalHT();
|
||||
foreach ($paidOrder->getItems() as $item) {
|
||||
$eventTotalSold += $item->getQuantity();
|
||||
$billetId = $item->getBillet()?->getId();
|
||||
if ($billetId) {
|
||||
if (!isset($billetStats[$billetId])) {
|
||||
$billetStats[$billetId] = ['name' => $item->getBilletName(), 'sold' => 0, 'revenue' => 0];
|
||||
}
|
||||
$billetStats[$billetId]['sold'] += $item->getQuantity();
|
||||
$billetStats[$billetId]['revenue'] += $item->getLineTotalHT();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -412,6 +421,7 @@ class AccountController extends AbstractController
|
||||
'event_total_ht' => $eventTotalHT / 100,
|
||||
'event_total_sold' => $eventTotalSold,
|
||||
'event_total_orders' => \count($paidEventOrders),
|
||||
'billet_stats' => $billetStats,
|
||||
'search_query' => $searchQuery,
|
||||
'breadcrumbs' => [
|
||||
self::BREADCRUMB_HOME,
|
||||
|
||||
Reference in New Issue
Block a user