diff --git a/__init__.py b/__init__.py
index 31660d6a9650857f10c9dbdcd139145e0897ef6e..9fd0534aa4cf7c55c55a5948fa7926fb62096c62 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,3 +1,3 @@
 # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
 
-from . import models
+from . import models, wizard
diff --git a/__manifest__.py b/__manifest__.py
index 9982e987d0c8ab363d38b620ad9a0b5764b4b286..5759ab631f9c55c27fa70c49b5a8780b60c969f5 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -10,6 +10,9 @@
         "cgscop_partner",
     ],
     "data": [
+        # wizard
+        "wizard/scop_deces_wizard.xml",
+        # views
         "views/assets.xml",
         "views/res_partner.xml",
     ],
diff --git a/models/res_partner.py b/models/res_partner.py
index b0c7e97ea70021902e20e574ed96b089a155dc16..51f4c5639d12fb2feac982ac44d0116a85b8f72b 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -11,11 +11,10 @@ class SecondaryFacility(models.Model):
         selection_add=[("facility", "Etablissement")],
         ondelete={"resource": "set default"}
     )
-
     facility_ids = fields.One2many(
         "res.partner",
         "parent_id",
-        string="Etablissements Secondaires",
+        string="Etablissements",
         domain=[("active", "=", True), ("type", "=", "facility")],
     )
     other_child_ids = fields.One2many(
@@ -28,6 +27,36 @@ class SecondaryFacility(models.Model):
             ("type", "!=", "facility"),
         ],
     )
+    date_open_facility = fields.Date("Date ouverture établissement")
+    date_close_facility = fields.Date("Date fermeture établissement")
+    is_facility_closed = fields.Boolean(
+        string="Etablissement fermé",
+        compute="_compute_is_facility_closed",
+        search="_search_is_facility_closed",
+    )
+
+    # ------------------------------------------------------
+    # Override parent
+    # ------------------------------------------------------
+    def _compute_is_facility_closed(self):
+        for partner in self:
+            if partner.type == "facility" and partner.date_close_facility:
+                partner.is_facility_closed = True
+            else:
+                partner.is_facility_closed = False
+
+    def _search_is_facility_closed(self, operator, value):
+        if operator not in ["=", "!="]:
+            raise ValueError("This opérateur non supporté")
+        if not isinstance(value, bool):
+            raise ValueError("La valeur doit être Vrai ou Faux (pas %s)", value)
+
+        if (operator == "=" and value) or (operator == "!=" and not value):
+            domain = [("type", "=", "facility"), ('date_close_facility', '!=', False)]
+        else:
+            domain = [("type", "=", "facility"), ('date_close_facility', '=', False)]
+        partner_ids = self.search(domain)
+        return [("id", "in", partner_ids.ids)]
 
     # ------------------------------------------------------
     # Override parent
diff --git a/views/res_partner.xml b/views/res_partner.xml
index d385b752a31db71244a15ce1bd46fe26698dbe6c..8b9640c719be8a5cbd0b126bf00eaa522fa82e2e 100644
--- a/views/res_partner.xml
+++ b/views/res_partner.xml
@@ -13,7 +13,30 @@
             <field name="name">cooperative.facility.form</field>
             <field name="model">res.partner</field>
             <field name="inherit_id" ref="cgscop_partner.scop_contact_view_form" />
+            <field name="priority">100</field>
             <field name="arch" type="xml">
+                <xpath expr="//div[hasclass('oe_title')]" position="before">
+                    <field name="is_facility_closed" invisible="1" />
+                    <span
+                        class="badge bg-danger"
+                        attrs="{'invisible': [('is_facility_closed', '!=', True)]}"
+                    >
+                        Établissement fermé
+                    </span>
+                </xpath>
+                <!-- parent_id obligatoire pour les établissements secondaires -->
+                <xpath expr="//div[hasclass('oe_title')]//field[@name='parent_id']" position="attributes">
+                    <attribute name="attrs">{'required': [('type', '=', 'facility')]}</attribute>
+                </xpath>
+                <!-- sire obligatoire pour les établissements secondaires -->
+                <xpath expr="//field[@name='siret']" position="attributes">
+                    <attribute name="attrs">{'required': [('type', '=', 'facility')]}</attribute>
+                </xpath>
+                <xpath expr="//field[@name='registration_date']" position="after">
+                    <field name="date_open_facility" attrs="{'invisible': [('type', '!=', 'facility')]}" />
+                    <field name="date_close_facility" attrs="{'invisible': [('type', '!=', 'facility')]}" />
+                </xpath>
+
                 <xpath expr="//group[@name='partner_segment_info']" position="after">
                     <group
                         name="facility_info"
@@ -29,18 +52,6 @@
                             options="{'no_open': True, 'no_create': True}"
                             domain="[('active', '=', True),('ur_id', '=', ur_id)]"
                         />
-                        <label for='siret' string="SIRET" class="oe_edit_only" />
-                        <div>
-                            <field name="siret" class="oe_edit_only" />
-                        </div>
-                        <label
-                            for='formatted_siret'
-                            string="SIRET"
-                            class="oe_read_only"
-                        />
-                        <div>
-                            <field name="formatted_siret" class="oe_read_only" />
-                        </div>
                         <field
                             name="naf_id"
                             options='{"no_create": True, "no_open": True}'
@@ -83,7 +94,7 @@
                     <field name="naf_id" />
                 </xpath>
                 <page name="scop_contacts" position="inside">
-                    <label for="facility_ids" string="Etablissements Secondaires" />
+                    <label for="facility_ids" string="Etablissements" />
                     <p>
                         <button
                             name="add_facility"
@@ -173,7 +184,7 @@
                 >
                     <attribute
                         name="attrs"
-                        eval="{'invisible': [('company_name', '!=', False),('company_name', '!=', '')]}"
+                        eval="{'invisible': [('company_name', '!=', False),('company_name', '!=', '')], 'required': [('type', '=', 'facility')]}"
                     />
                 </xpath>
             </field>
@@ -182,14 +193,12 @@
         <!-- ******************************
         ***    Custom Views
         ****************************** -->
-        <!--
-            CG Scop Facility View Tree
-        -->
+        <!-- Tree -->
         <record id="scop_partner_tree_view" model="ir.ui.view">
             <field name="name">scop partner tree view</field>
             <field name="model">res.partner</field>
             <field name="arch" type="xml">
-                <tree string="Etablissements secondaires">
+                <tree string="Etablissements">
                     <field name="display_name" />
                     <field name="parent_id" string="Etablissement principal" />
                     <field name="zip" />
@@ -200,18 +209,54 @@
             </field>
         </record>
 
+        <!-- Search -->
+        <record id="scop_partner_facility_view_search" model="ir.ui.view">
+            <field name="name">scop.partner.facility.search</field>
+            <field name="model">res.partner</field>
+            <field name="arch" type="xml">
+                <search string="Etablissements">
+                    <field name="name" filter_domain="['|', '|', '|', '|', ('display_name', 'ilike', self), ('ref', '=', self), ('email', 'ilike', self), ('member_number','=like',self), ('nickname', 'ilike', self)]"/>
+                    <field name="phone" filter_domain="['|',('phone','ilike',self),('mobile','=',self)]"/>
+                    <field name="followup_delegate_id" string="Délégué" filter_domain="['|', '|', '|', ('followup_delegate_id', 'ilike', self), ('creation_delegate_id', 'ilike', self), ('revision_person_id', 'ilike', self), ('revision_certified_person_id', 'ilike', self)]"/>
+                    <field name="member_number_int" filter_domain="[('member_number','=like',self)]"/>
+                    <field name="siret" filter_domain="[('siret','ilike',self)]"/>
+                    <filter string="Mes organismes" name="my_partners" domain="['|', ('creation_delegate_id','=',uid), ('followup_delegate_id','=',uid)]"/>
+                    <filter string="Mon UR" name="my_ur" domain="[('current_user_ur_id', '=', 'ur_id')]"/>
+                    <separator/>
+                    <filter string="Adhérents" name="is_adherent" domain="[('parent_id.membership_status', '=', 'member')]"/>
+                    <filter string="Adhérents de mon UR" name="my_ur_adherent" domain="[('current_user_ur_id', '=', 'ur_id'), ('parent_id.membership_status', '=', 'member')]"/>
+                    <separator/>
+                    <filter string="Date d'ouverture" name="date_open_facility" date="date_open_facility"/>
+                    <filter string="Date de fermeture" name="date_close_facility" date="date_close_facility"/>
+                    <separator/>
+                    <filter string="Établissements fermés" name="facility_closed" domain="[('is_facility_closed','=',True)]"/>
+                    <filter string="Établissements ouverts" name="facility_open" domain="[('is_facility_closed','=',False)]"/>
+                    <filter string="Archivés" name="inactive" domain="[('active','=',False)]"/>
+                    <separator/>
+                    <filter string="Mes Activités" name="activities_my" domain="[('activity_ids.user_id', '=', uid)]"/>
+                    <separator/>
+                    <group expand="0" name="group_by" string="Group By">
+                       <filter name="group_company" string="Structure" context="{'group_by': 'parent_id'}"/>
+                       <filter name="group_city" string="Ville" context="{'group_by': 'city'}"/>
+                       <filter name="group_departement" string="Département" context="{'group_by': 'zip_departement'}"/>
+                       <filter name="group_country" string="Pays" context="{'group_by': 'country_id'}"/>
+                    </group>
+                </search>
+            </field>
+        </record>
+
         <!-- ******************************
         ***    Action
         ****************************** -->
 
         <!-- Organismes Action -->
         <record model="ir.actions.act_window" id="scop_facility_act">
-            <field name="name">Etablissements secondaires</field>
+            <field name="name">Etablissements</field>
             <field name="res_model">res.partner</field>
             <field name="view_mode">tree,form,activity,pivot,graph</field>
             <field
                 name="search_view_id"
-                ref="cgscop_partner.scop_partner_view_search"
+                ref="scop_partner_facility_view_search"
             />
             <field
                 name="domain"
diff --git a/wizard/__init__.py b/wizard/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..0faf2b899412000e63514bf19e7e6da4097f16cd
--- /dev/null
+++ b/wizard/__init__.py
@@ -0,0 +1,4 @@
+# © 2019 Le Filament (<http://www.le-filament.com>)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from . import scop_deces_wizard
diff --git a/wizard/scop_deces_wizard.py b/wizard/scop_deces_wizard.py
new file mode 100644
index 0000000000000000000000000000000000000000..e0f62f579eba3cd08d04267cecc94d22a35d281f
--- /dev/null
+++ b/wizard/scop_deces_wizard.py
@@ -0,0 +1,13 @@
+# © 2019 Le Filament (<http://www.le-filament.com>)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from odoo import models
+
+
+class ScopDecesWizard(models.TransientModel):
+    _inherit = "scop.deces.wizard"
+
+    def deces_action(self):
+        super().deces_action()
+        partner_id = self.env["res.partner"].browse(self.partner_id)
+        partner_id.facility_ids.update({"date_close_facility": self.end})
diff --git a/wizard/scop_deces_wizard.xml b/wizard/scop_deces_wizard.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e3534c97cc9c07010bbe7be95d533def891cb3e3
--- /dev/null
+++ b/wizard/scop_deces_wizard.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<odoo>
+    <data>
+        <!-- WIZARD FORM -->
+        <record id="scop_deces_wizard_view_form_inherit" model="ir.ui.view">
+            <field name="name">scop.deces.wizard.form.inherit</field>
+            <field name="model">scop.deces.wizard</field>
+            <field name="inherit_id" ref="cgscop_partner.scop_deces_wizard_view_form" />
+            <field name="arch" type="xml">
+                <xpath expr="//ul" position="inside">
+                    <li>fermeture des établissements secondaires</li>
+                </xpath>
+            </field>
+        </record>
+    </data>
+</odoo>