Serreau Jovann
0f2712bb36
feat: echeancier de paiement (entites + controller + template + email)
Entites :
- Echeancier : customer, description, totalAmountHt, state (draft/send/
signed/active/completed/cancelled/default), stripeSubscriptionId,
stripePriceId, submitterCompanyId/CustomerId, 3 PDF Vich (unsigned/
signed/audit), submissionId (DocuSeal)
- EcheancierLine : position, amount, scheduledAt, state (prepared/ok/ko),
stripeInvoiceId, paidAt, failureReason
Controller EcheancierController :
- create : cree echeancier avec N echeances mensuelles (montant reparti)
- show : detail echeancier avec progression
- send : envoie email proposition au client
- cancel : annule echeancier + subscription Stripe
- activate : cree Stripe Subscription (price + subscription + cancel_at)
Templates :
- admin/echeancier/show.html.twig : detail avec resume, progression,
tableau echeances, actions (envoyer/activer/annuler)
- admin/clients/show.html.twig : onglet echeancier avec liste + modal creation
- emails/echeancier_proposition.html.twig : email proposition avec detail
Vich mappings : echeancier_pdf, echeancier_signed_pdf, echeancier_audit_pdf
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 19:31:28 +02:00
..
2026-03-30 18:52:03 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-01 15:42:52 +02:00
2026-04-02 22:19:54 +02:00
2026-04-02 22:26:15 +02:00
2026-04-02 22:27:12 +02:00
2026-04-02 22:28:30 +02:00
2026-04-02 22:32:18 +02:00
2026-04-02 22:33:47 +02:00
2026-04-02 22:36:38 +02:00
2026-04-02 22:37:20 +02:00
2026-04-02 22:42:43 +02:00
2026-04-02 22:59:51 +02:00
2026-04-02 23:04:41 +02:00
2026-04-02 23:11:34 +02:00
2026-04-04 00:02:30 +02:00
2026-04-04 00:05:00 +02:00
2026-04-04 10:59:24 +02:00
2026-04-04 11:04:43 +02:00
2026-04-04 11:13:33 +02:00
2026-04-04 11:24:52 +02:00
2026-04-04 21:06:41 +02:00
2026-04-04 21:39:26 +02:00
2026-04-04 21:39:26 +02:00
2026-04-07 09:44:35 +02:00
2026-04-07 09:44:35 +02:00
2026-04-07 09:44:35 +02:00
2026-04-07 09:44:35 +02:00
2026-04-07 09:44:35 +02:00
2026-04-07 23:39:31 +02:00
2026-04-07 23:39:31 +02:00
2026-04-07 23:39:31 +02:00
2026-04-07 23:39:31 +02:00
2026-04-07 23:39:31 +02:00
2026-04-07 23:39:31 +02:00
2026-04-07 23:39:31 +02:00
2026-04-08 19:31:28 +02:00