Files
crm_ecosplay/templates/pdf/rgpd_no_data.html.twig
Serreau Jovann 8b35e2b6d2 feat: comptabilite + prestataires + rapport financier + stats dynamiques
Comptabilite (Super Admin) :
- ComptabiliteController avec 7 exports CSV/JSON compatibles SAGE
  (journal ventes, grand livre, FEC, balance agee, reglements,
  commissions Stripe 1.5%+0.25E, couts services)
- Export PDF via ComptaPdf (FPDF) avec bloc legal pre-rempli,
  tableau pagine, champ signature DocuSeal
- Signature electronique DocuSeal + callback + envoi email signe
  avec template dedie (compta_export_signed.html.twig)
- Rapport financier public (RapportFinancierPdf) : recettes par
  service, depenses (Stripe, infra, prestataires), bilan excedent/deficit
- Codes comptables clients EC-XXXX (plus de 411xxx)

Prestataires (Super Admin) :
- Entite Prestataire (raisonSociale, siret, email, phone, adresse)
- Entite FacturePrestataire (numFacture, montantHt, montantTtc,
  year, month, isPaid, PDF via Vich)
- CRUD complet avec recherche SIRET via proxy API data.gouv.fr
- Commande cron app:reminder:factures-prestataire (5 du mois)
- Factures prestataires integrees dans export couts services
- Sidebar Super Admin : entree Prestataires + Comptabilite

Stats (/admin/stats) :
- Cout prestataire dynamique depuis FacturePrestataire
- Fusion Infra + Prestataire en "Cout de fonctionnement"
- Commission Stripe corrigee (1.5% + 0.25E par transaction)

Divers :
- DocuSealService::sendComptaForSignature() + getApi()
- Customer::generateCodeComptable() format EC-XXXX-XXXXX
- Protection double prefixe EC- a la creation client
- Bouton regenerer PDF cache quand advert state=accepted
- Modals sans script inline (data-modal-open/close dans app.js)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 23:39:31 +02:00

41 lines
2.4 KiB
Twig

{% extends 'pdf/_base.html.twig' %}
{% block title %}Attestation RGPD - Absence de donnees{% endblock %}
{% block font_size %}11px{% endblock %}
{% block info_grid_mb %}16px{% endblock %}
{% block info_cell_px %}12px{% endblock %}
{% block extra_styles %}
.info-cell { border-left: 3px solid #fabf04; }
.doc-type { background: #111827; color: #fabf04; }
.attestation-box { border: 1px solid #ddd; margin: 12px 0; }
.attestation-header { background: #111827; color: #fff; padding: 6px 16px; font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; }
.attestation-body { padding: 14px 16px; background: #fffbeb; }
.attestation-body p { line-height: 1.6; margin: 4px 0; font-size: 11px; }
.content p { line-height: 1.6; margin: 4px 0; font-size: 10px; }
{% endblock %}
{% block content %}
<span class="doc-type">Document officiel</span>
<h1>Attestation d'absence de donnees</h1>
<div class="subtitle">RGPD &mdash; Article 15</div>
<div class="info-grid">
<div class="info-row">
<div class="info-cell" style="width: 33%;"><span class="info-label">Reference</span><span class="info-value">{{ attestation.reference }}</span></div>
<div class="info-cell" style="width: 33%;"><span class="info-label">Date</span><span class="info-value">{{ date|date('d/m/Y a H:i') }}</span></div>
<div class="info-cell" style="width: 33%;"><span class="info-label">Adresse IP</span><span class="info-value">{{ ip }}</span></div>
</div>
</div>
<div class="attestation-box">
<div class="attestation-header">Attestation</div>
<div class="attestation-body">
<p><strong>La Association E-Cosplay atteste par la presente que :</strong></p>
<p>Aucune donnee de navigation associee a l'adresse IP <strong>{{ ip }}</strong> n'a ete trouvee dans nos systemes a la date du <strong>{{ date|date('d/m/Y') }}</strong> a <strong>{{ date|date('H:i') }}</strong>, conformement a l'<strong>article 15</strong> du RGPD (Reglement UE 2016/679).</p>
</div>
</div>
<div class="content">
<p>Aucune donnee personnelle (identifiants de session, evenements de navigation, informations techniques) n'est stockee dans nos bases de donnees pour cette adresse IP.</p>
</div>
{% endblock %}