Cobra · Email Odoo + routing conditionnel
Routing email PO Drop vs Réassort + templates Cobra
Contexte
Les emails de confirmation de commande fournisseur utilisaient le template générique Odoo. Aucune distinction Drop (livraison directe client) vs Réassort (livraison entrepôt) — le message fournisseur est fondamentalement différent.
Ce qui a été construit
- Redirection de
purchase.email_template_edi_purchasevers le template Cobra (12) via XML-RPC - Template 12 Réassort (FR+EN) : badge « Livraison entrepôt Cobra », bloc Points à confirmer, proforma
- Template 80 Drop (FR+EN) : badge « Livraison directe », bloc adresse client, suivi/tracking
- Override
_send_confirmation_mail()(v1.4.2) : six_order_type == 'drop'→ template 80, sinonsuper()→ 12 - Cherry-pick sur main → en prod
Ce qui était difficile
- Le layout
mail_notification_lightécrase lesbackground-colorsur les<td>— fonds colorés invisibles. Solution : encapsuler le fond dans un<div>imbriqué - La prévisualisation Odoo ne reflète pas le rendu réel (Apple Mail) — test par envoi réel nécessaire
Stack
Python XML-RPC, cobra_purchase Odoo 18, mail.template, ir.model.data, HTML email (tables imbriquées, inline CSS), Git (cherry-pick ciblé).
Ce que ça illustre
Session bout en bout : Claude pilote Odoo via API, debug itératif sur rendu email non documenté, livraison prod avec cherry-pick ciblé. Autonomie sur un problème mêlant config Odoo, HTML email et déploiement Git.