From 34c12ce975cbbd613a33aa12b0165ee74aff8e87 Mon Sep 17 00:00:00 2001
From: Benjamin <benjamin@le-filament.com>
Date: Fri, 24 Jul 2020 11:34:51 +0200
Subject: [PATCH] [cgscop #226] gestion CP des DOM-TOM

---
 __manifest__.py             |  1 +
 datas/res_country_state.xml | 10 ++++++++++
 models/res_partner.py       |  7 +++++--
 3 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 datas/res_country_state.xml

diff --git a/__manifest__.py b/__manifest__.py
index 8d1781d..3dbaf4d 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -35,6 +35,7 @@
         "views/scop_period_views.xml",
         "views/scop_federation_activity.xml",
         "datas/union_regionale_data.xml",
+        "datas/res_country_state.xml",
         "datas/res_partner_certification_data.xml",
         "datas/res_partner_company_type_data.xml",
         "datas/res_partner_cooperative_form_data.xml",
diff --git a/datas/res_country_state.xml b/datas/res_country_state.xml
new file mode 100644
index 0000000..8a1e4db
--- /dev/null
+++ b/datas/res_country_state.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<odoo>
+    <data noupdate="1">
+        <record id="domtom" model="res.country.state">
+            <field name="name">DOM-TOM</field>
+            <field name="code">DT</field>
+            <field name="country_id" eval="75"/>
+        </record>
+    </data>
+</odoo>
diff --git a/models/res_partner.py b/models/res_partner.py
index 132edbf..4228cdb 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -657,11 +657,14 @@ class ScopPartner(models.Model):
                                            + company.siret[6:9] + " "
                                            + company.siret[9:])
 
-    @api.depends('zip')
+    @api.depends('zip', 'state_id')
     def _compute_num_departement(self):
         for company in self:
             if company.zip:
-                company.zip_departement = company.zip[:2]
+                if company.state_id == self.env.ref('cgscop_partner.domtom'):
+                    company.zip_departement = company.zip[:3]
+                else:
+                    company.zip_departement = company.zip[:2]
 
     @api.depends('zip')
     def _compute_region(self):
-- 
GitLab