From e4fbe9951261039a3fcdc1eb7d10e330e0502f7b Mon Sep 17 00:00:00 2001
From: Juliana <juliana@le-filament.com>
Date: Thu, 8 Sep 2022 15:26:09 +0200
Subject: [PATCH] [UPD]Send mail only if user portal partner

---
 models/acc_contract.py | 22 ++++++++++++++++------
 models/acc_counter.py  |  3 ++-
 2 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/models/acc_contract.py b/models/acc_contract.py
index e26338f..d10d9c9 100644
--- a/models/acc_contract.py
+++ b/models/acc_contract.py
@@ -55,15 +55,25 @@ class AccContract(models.Model):
 
         for doc in docs:
             if doc.seller_id:
-                template = self.env.ref(
-                    "acc_operation.email_template_document", raise_if_not_found=False
+                user_seller = self.env["res.users"].search(
+                    [("partner_id", "=", doc.seller_id.id)]
                 )
-                template.with_context().send_mail(doc.seller_id.id, force_send=True)
+                if user_seller.has_group("base.group_portal"):
+                    template = self.env.ref(
+                        "acc_operation.email_template_document",
+                        raise_if_not_found=False,
+                    )
+                    template.with_context().send_mail(doc.seller_id.id, force_send=True)
             if doc.buyer_id:
-                template = self.env.ref(
-                    "acc_operation.email_template_document", raise_if_not_found=False
+                user_buyer = self.env["res.users"].search(
+                    [("partner_id", "=", doc.buyer_id.id)]
                 )
-                template.with_context().send_mail(doc.buyer_id.id, force_send=True)
+                if user_buyer.has_group("base.group_portal"):
+                    template = self.env.ref(
+                        "acc_operation.email_template_document",
+                        raise_if_not_found=False,
+                    )
+                    template.with_context().send_mail(doc.buyer_id.id, force_send=True)
         return docs
 
     # ------------------------------------------------------
diff --git a/models/acc_counter.py b/models/acc_counter.py
index 36b100d..9d5a571 100644
--- a/models/acc_counter.py
+++ b/models/acc_counter.py
@@ -81,12 +81,13 @@ class AccCounter(models.Model):
                 counter.street2 = counter.partner_id.street2
                 counter.zip = counter.partner_id.zip
                 counter.city = counter.partner_id.city
+
     # ------------------------------------------------------
     # CRUD methods (ORM overrides)
     # ------------------------------------------------------
     def write(self, vals):
         for counter in self:
-            if 'partner_id' in vals:
+            if "partner_id" in vals:
                 partner_id = self.env["res.partner"].browse(vals.get("partner_id"))
                 counter.street = partner_id.street
                 counter.street2 = partner_id.street2
-- 
GitLab