{# templates/contributor/shipping_summary.html.twig #} {% extends 'base.html.twig' %} {% block title %}Récapitulatif des envois{% endblock %} {% block body %}
{{ stats.total_contributors }}
{{ stats.shipped }}
{{ ((stats.shipped / stats.total_contributors) * 100)|number_format(1) }}%
{{ stats.pending }}
{{ ((stats.pending / stats.total_contributors) * 100)|number_format(1) }}%
{{ stats.without_relay }}
{{ ((stats.without_relay / stats.total_contributors) * 100)|number_format(1) }}%
| Livre | Total | Envoyés | En attente | % Envoyés | % du total livres |
|---|---|---|---|---|---|
| 📚 {{ title }} | {{ data.total_quantity }} | {{ data.shipped_quantity }} | {{ data.pending_quantity }} |
{% set percentage = data.total_quantity > 0 ? ((data.shipped_quantity / data.total_quantity) * 100) : 0 %}
|
{% set totalPercentage = stats.books_stats.total_books > 0 ? ((data.total_quantity / stats.books_stats.total_books) * 100) : 0 %} {{ totalPercentage|number_format(1) }}% |
| 📚 TOTAL | {{ stats.books_stats.total_books }} | {{ stats.books_stats.shipped_books }} | {{ stats.books_stats.pending_books }} |
{% set globalPercentage = stats.books_stats.total_books > 0 ? ((stats.books_stats.shipped_books / stats.books_stats.total_books) * 100) : 0 %}
|
100% |
| Nombre de livres | Contributeurs | Envoyés | En attente |
|---|---|---|---|
| {% if bookCount == 0 %} 0 livre (numérique/pack uniquement) {% elseif bookCount == 1 %} 1 livre {% else %} {{ bookCount }} livres {% endif %} | {{ data.count }} contributeurs | {{ data.shipped }} | {{ data.pending }} |
| Nom | Livres | Détail | Statut |
|---|---|---|---|
|
{{ contributor.deliveryFirstName }} {{ contributor.deliveryLastName|upper }}
{{ contributor.email }}
|
{{ bookCount }} |
{% for reward in contributor.rewards %}
{% if reward.title in physical_books %}📚{% elseif reward.title == 'L\'epub' %}💻{% else %}📦{% endif %}
{{ reward.title }}
{% if reward.variation %} ({{ reward.variation }}){% endif %}
x{{ reward.quantity }}
{% endfor %}
|
{% if contributor.shipped %} ✅ Envoyé {% else %} {% if not contributor.relayName %} ❌ Sans relais {% else %} ⏳ En attente {% endif %} {% endif %} |