{% extends '@App/partials/base.html.twig' %} {% block content %}

Demandes partenaires

Gérez et suivez vos sollicitations de partenariat

Demandes actives

{{ kpi.active }}

En retard

{{ kpi.overdue }}

Partenaires en attente

{{ kpi.pendingPartners }}

{% for sollicitation in sollicitations %} {% set progress = workflowService.getProgress(sollicitation) %} {% set last = workflowService.getLastActivityAt(sollicitation) %} {% set status = sollicitation.statut %} {% set isOverdue = workflowService.isOverdue(sollicitation) %} {% set statusClass = { 'draft': 'bg-green-subtle text-green', 'sent': 'bg-success-subtle text-success', 'in_progress': 'bg-primary-subtle text-primary', 'completed': 'bg-info-subtle text-info' }[status]|default('bg-light text-secondary') %} {% set barClass = isOverdue ? 'bg-danger' : (progress.percent == 100 ? 'bg-success' : 'bg-primary') %} {% else %} {% endfor %}
Titre de la demande Projet lié Partenaires ciblés Échéance Statut Progression Dernière activité Actions
{{ sollicitation.titre }}
{{ sollicitation.type|replace({'_':' '})|title }}
{{ sollicitation.projet.titre }} {{ progress.total }} {{ sollicitation.deadlineAt ? sollicitation.deadlineAt|date('M d, Y') : '-' }} {% if isOverdue and status != 'completed' %} En retard {% else %} {% set statusLabel = { 'draft': 'Brouillon', 'sent': 'Envoyée', 'in_progress': 'En cours', 'completed': 'Terminée' }[status]|default(status|replace({'_':' '})|title) %} {{ statusLabel }} {% endif %}
{{ progress.percent }}%
{{ last ? last|date('d/m/Y H:i') : '-' }}
Voir {% if status == 'draft' %} Supprimer {% endif %}
Aucune demande trouvée.
Affichage {{ ((pagination.page - 1) * pagination.perPage) + 1 }}-{{ ((pagination.page - 1) * pagination.perPage) + sollicitations|length }} sur {{ pagination.total }} demandes
{% set prevPage = pagination.page - 1 %} {% set nextPage = pagination.page + 1 %} {{ pagination.page }}
{% endblock %}