diff --git a/__init__.py b/__init__.py
index 5b2ef480c07b807b141e836f50066c048468afb0..44fb71a00bc9b32aafc05249aa6b34e856874549 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,5 +1,4 @@
 # Copyright 2021 Le Filament (<http://www.le-filament.com>)
 # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
 
-from . import controllers
-from . import models
+from . import controllers, models
diff --git a/__manifest__.py b/__manifest__.py
index 93b08e06da8442a7ea7f7069febbe6a589fc6bb4..9b09b8e0558b690b91aa8188ff4c7a17b83cf0c3 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -23,7 +23,6 @@
         "views/afac_project_partner.xml",
         "views/res_company.xml",
         "views/res_partner.xml",
-
     ],
     "qweb": [
         "static/src/xml/base.xml",
diff --git a/controllers/main.py b/controllers/main.py
index 8834915753fc3e0f7d03f943f36ce6fb7f64f72b..ed77bd77bc9d25be0844c0b2633c1fa689004327 100644
--- a/controllers/main.py
+++ b/controllers/main.py
@@ -5,14 +5,12 @@ import operator
 from odoo.http import content_disposition, request, route
 
 from odoo.addons.web.controllers.main import (
-    ExportFormat,
-    GroupsTreeNode,
-    ExcelExport,
     CSVExport,
+    ExcelExport,
+    GroupsTreeNode,
     serialize_exception,
 )
 
-
 _logger = logging.getLogger(__name__)
 
 
@@ -20,19 +18,25 @@ class ExcelExport(ExcelExport):
     @route("/web/export/xlsx", type="http", auth="user")
     @serialize_exception
     def index(self, data, token):
-        return afac_base(self, data, token)
+        params = json.loads(data)
+        if params.get("model") == "res.partner" and params.get("afac"):
+            return afac_base(self, data, token)
+        else:
+            return super(ExcelExport, self).index(data, token)
 
 
 class CSVExport(CSVExport):
-
     @route("/web/export/csv", type="http", auth="user")
     @serialize_exception
     def index(self, data, token):
-        return afac_base(self, data, token)
+        params = json.loads(data)
+        if params.get("model") == "res.partner" and params.get("afac"):
+            return afac_base(self, data, token)
+        else:
+            return super(CSVExport, self).index(data, token)
 
 
 def afac_base(object, data, token):
-
     params = json.loads(data)
     model, fields, ids, domain, import_compat = operator.itemgetter(
         "model", "fields", "ids", "domain", "import_compat"
@@ -83,10 +87,7 @@ def afac_base(object, data, token):
     return request.make_response(
         response_data,
         headers=[
-            (
-                "Content-Disposition",
-                content_disposition(object.filename(model)),
-            ),
+            ("Content-Disposition", content_disposition(object.filename(model))),
             ("Content-Type", object.content_type),
         ],
         cookies={"fileToken": token},
diff --git a/models/afac_project.py b/models/afac_project.py
index 2546c5ec992212ab6eca462c13b4f449b348bad8..3e70ce69f7ba30df9a2d02f6630a0bb00219e58d 100644
--- a/models/afac_project.py
+++ b/models/afac_project.py
@@ -69,4 +69,3 @@ class AfacProject(models.Model):
                 "default_company_id": self.company_id.id,
             },
         }
-
diff --git a/models/afac_project_category.py b/models/afac_project_category.py
index 4a607d6f62f261cacc7a13ca608f411b45485e50..a6daf28b69520e92bec8a602190d377eebc9ea4b 100644
--- a/models/afac_project_category.py
+++ b/models/afac_project_category.py
@@ -10,10 +10,7 @@ class AfacProjectCategory(models.Model):
 
     name = fields.Char("Nom", required=True)
     project_id = fields.Many2one(
-        comodel_name="afac.project",
-        string="Projet",
-        ondelete="cascade",
-        required=True
+        comodel_name="afac.project", string="Projet", ondelete="cascade", required=True
     )
     active = fields.Boolean(related="project_id.active")
     company_id = fields.Many2one(
diff --git a/models/afac_project_partner.py b/models/afac_project_partner.py
index 85b000dbe212b5b80d3849573ff0850e9c1c58ef..3107f6313cf5f47aef9b90c97d08cc23d3272cd2 100644
--- a/models/afac_project_partner.py
+++ b/models/afac_project_partner.py
@@ -22,10 +22,7 @@ class AfacProjectPartner(models.Model):
         comodel_name="res.partner", string="Contact", ondelete="cascade", required=True
     )
     project_id = fields.Many2one(
-        comodel_name="afac.project",
-        string="Projet",
-        ondelete="cascade",
-        required=True
+        comodel_name="afac.project", string="Projet", ondelete="cascade", required=True
     )
     active = fields.Boolean(related="project_id.active")
     project_cat_ids = fields.Many2many(
diff --git a/models/res_partner.py b/models/res_partner.py
index 5506cc3fd2b672d6d484267d6331bab736623ad0..6c5aa506cfc512e313fe2547ac33bc9068429ed9 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -122,52 +122,6 @@ class ResPartner(models.Model):
     # Default methods
     # ------------------------------------------------------
 
-    def export_data(self, fields_to_export, afac=False):
-
-        out = super().export_data(fields_to_export)
-        if afac:
-            column = []
-            datas = out.get("datas", [])
-            all_projects = (
-                self.env["afac.project.partner"]
-                .search([("partner_id", "in", self.ids)])
-                .mapped("project_id")
-            )
-
-            if datas:
-                for afac_project in all_projects:
-                    data_index = 0
-                    column.append(afac_project.name)
-                    afac_project_category = self.env["afac.project.category"].search(
-                        [("project_id", "=", afac_project.id)]
-                    )
-                    for project_category in afac_project_category:
-                        column.append(project_category.name)
-
-                    for partner in self:
-                        project_partner = self.env["afac.project.partner"].search(
-                            [
-                                "&",
-                                ("partner_id", "=", partner.id),
-                                ("project_id", "=", afac_project.id),
-                            ]
-                        )
-                        if project_partner:
-                            datas[data_index].append(1)
-                        else:
-                            datas[data_index].append(0)
-
-                        for project_category in afac_project_category:
-                            if project_category in project_partner.project_cat_ids:
-                                datas[data_index].append(1)
-                            else:
-                                datas[data_index].append(0)
-                        data_index += 1
-            out["datas"] = datas
-            out["column"] = column
-            return out
-        return out
-
     # ------------------------------------------------------
     # Computed fields / Search Fields
     # ------------------------------------------------------
@@ -305,7 +259,7 @@ class ResPartner(models.Model):
         self.short_name = self.parent_id.short_name
 
     # ------------------------------------------------------
-    # CRUD methods (ORM overrides)
+    # ORM overrides
     # ------------------------------------------------------
     def write(self, vals):
         """
@@ -340,6 +294,54 @@ class ResPartner(models.Model):
 
         return res
 
+    def export_data(self, fields_to_export, afac=False):
+        """
+        Hérite la fonction de Model pour ajouter les projets et sous projets dans
+        l'export si la case est cochée
+        """
+        out = super().export_data(fields_to_export)
+        if afac:
+            column = []
+            datas = out.get("datas", [])
+            all_projects = (
+                self.env["afac.project.partner"]
+                .search([("partner_id", "in", self.ids)])
+                .mapped("project_id")
+            )
+            if datas:
+                for afac_project in all_projects:
+                    data_index = 0
+                    column.append(afac_project.name)
+                    afac_project_category = self.env["afac.project.category"].search(
+                        [("project_id", "=", afac_project.id)]
+                    )
+                    for project_category in afac_project_category:
+                        column.append(f"{afac_project.name}/{project_category.name}")
+
+                    for partner in self:
+                        project_partner = self.env["afac.project.partner"].search(
+                            [
+                                "&",
+                                ("partner_id", "=", partner.id),
+                                ("project_id", "=", afac_project.id),
+                            ]
+                        )
+                        if project_partner:
+                            datas[data_index].append(1)
+                        else:
+                            datas[data_index].append(0)
+
+                        for project_category in afac_project_category:
+                            if project_category in project_partner.project_cat_ids:
+                                datas[data_index].append(1)
+                            else:
+                                datas[data_index].append(0)
+                        data_index += 1
+            out["datas"] = datas
+            out["column"] = column
+            return out
+        return out
+
     # ------------------------------------------------------
     # Actions
     # ------------------------------------------------------
diff --git a/static/src/js/data_export.js b/static/src/js/data_export.js
index 100248b60227c2151d436ab4bb098da2f50355f1..4e30fb593d599d75e54f143189fc008c2f26ff4e 100644
--- a/static/src/js/data_export.js
+++ b/static/src/js/data_export.js
@@ -1,4 +1,4 @@
-odoo.define("base_export_async.DataExport", function (require) {
+odoo.define("afac_partner.DataExport", function (require) {
     "use strict";
 
     var core = require("web.core");
@@ -16,37 +16,34 @@ odoo.define("base_export_async.DataExport", function (require) {
         _exportData(exportedFields, exportFormat, idsToExport) {
             const afac = this.$("#o-export-afac-project");
             if (afac && afac.is(":checked")) {
-                console.log("CHECKED");
-                console.log(exportedFields);
-                console.log(exportFormat);
-                console.log(idsToExport);
                 if (_.isEmpty(exportedFields)) {
-                     Dialog.alert(this, _t("Please select fields to export..."));
-                     return;
+                    Dialog.alert(this, _t("Please select fields to export..."));
+                    return;
                 }
                 if (this.isCompatibleMode) {
-                    exportedFields.unshift({ name: 'id', label: _t('External ID') });
+                    exportedFields.unshift({name: "id", label: _t("External ID")});
                 }
 
-            framework.blockUI();
-            this.getSession().get_file({
-                url: '/web/export/' + exportFormat,
-                data: {
-                    data: JSON.stringify({
-                        model: this.record.model,
-                        fields: exportedFields,
-                        ids: idsToExport,
-                        domain: this.domain,
-                        groupby: this.groupby,
-                        context: pyUtils.eval('contexts', [this.record.getContext()]),
-                        import_compat: this.isCompatibleMode,
-                        afac: true
-                    })
-                },
-                complete: framework.unblockUI,
-                error: (error) => this.call('crash_manager', 'rpc_error', error),
-            });
-
+                framework.blockUI();
+                this.getSession().get_file({
+                    url: "/web/export/" + exportFormat,
+                    data: {
+                        data: JSON.stringify({
+                            model: this.record.model,
+                            fields: exportedFields,
+                            ids: idsToExport,
+                            domain: this.domain,
+                            groupby: this.groupby,
+                            context: pyUtils.eval("contexts", [
+                                this.record.getContext(),
+                            ]),
+                            import_compat: this.isCompatibleMode,
+                            afac: true,
+                        }),
+                    },
+                    complete: framework.unblockUI,
+                    error: (error) => this.call("crash_manager", "rpc_error", error),
+                });
             } else {
                 /*
                     Call the standard method if afac is not checked
diff --git a/static/src/xml/base.xml b/static/src/xml/base.xml
index a440b4691f4b7b4751931fa6d2994470e6a20f1f..c250e8c8c5d47584cdf5a88fffb6ca9db3fc438a 100644
--- a/static/src/xml/base.xml
+++ b/static/src/xml/base.xml
@@ -1,19 +1,19 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" ?>
 <templates id="template" xml:space="preserve">
-    <t
-        t-name="ExportDialog"
-        t-inherit="web.ExportDialog"
-        t-inherit-mode="extension"
->
+    <t t-name="ExportDialog" t-inherit="web.ExportDialog" t-inherit-mode="extension">
         <xpath expr="//div[hasclass('o_import_compat')]" position="after">
-            <p t-if="widget.record.model == 'res.partner'">
-                <div class="form-check">
-                    <input class="form-check-input" id="o-export-afac-project" type="checkbox"/>
-                    <label class="form-check-label" for="o-export-afac-project">
-                        Export AFAC project
+            <div t-if="widget.record.model == 'res.partner'" class="mt16 mb16">
+                <div class="o_boolean_toggle custom-control custom-checkbox">
+                    <input
+                        class="custom-control-input"
+                        id="o-export-afac-project"
+                        type="checkbox"
+                    />
+                    <label class="custom-control-label" for="o-export-afac-project">
+                        Exporter les projets AFAC
                     </label>
                 </div>
-            </p>
+            </div>
         </xpath>
     </t>
 </templates>
diff --git a/views/afac_project.xml b/views/afac_project.xml
index acc9bc791f2f10da266e8c9ecfae4dd342cd3e32..008f6da0c2c9cb47780562ad0b0919530a4d7a05 100644
--- a/views/afac_project.xml
+++ b/views/afac_project.xml
@@ -10,9 +10,17 @@
             <field name="model">afac.project</field>
             <field name="arch" type="xml">
                 <search string="Projets">
-                    <field name="name" string="Nom du projet"/>
-                    <filter name="active" string="Archivés" domain="[('active', '=', False)]"/>
-                    <filter name="active" string="Tous" domain="[('active', 'in', (True, False))]"/>
+                    <field name="name" string="Nom du projet" />
+                    <filter
+                        name="active"
+                        string="Archivés"
+                        domain="[('active', '=', False)]"
+                    />
+                    <filter
+                        name="active"
+                        string="Tous"
+                        domain="[('active', 'in', (True, False))]"
+                    />
                 </search>
             </field>
         </record>
diff --git a/views/afac_project_partner.xml b/views/afac_project_partner.xml
index a83e6da17d9fc4b884deecd14030e2c257fc49f7..cabda5330d4dbcc3ab536a33dcb8dfd6bbe9636c 100644
--- a/views/afac_project_partner.xml
+++ b/views/afac_project_partner.xml
@@ -9,7 +9,7 @@
             <field name="model">afac.project.partner</field>
             <field name="arch" type="xml">
                 <search string="Projets du contact">
-                    <field name="partner_id"/>
+                    <field name="partner_id" />
                     <field name="project_cat_ids" />
                     <field name="project_id" />
                     <searchpanel>