From d1ae63e766b1cbe8f8895405d5c6e926c0f8c74f Mon Sep 17 00:00:00 2001
From: thibaud <thibaud@le-filament.com>
Date: Wed, 20 Mar 2024 18:24:26 +0100
Subject: [PATCH] [IMP] Moved contract generation into method for better
 inheritance

---
 models/financial_deal_tool.py | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/models/financial_deal_tool.py b/models/financial_deal_tool.py
index aad4375..d1118e6 100644
--- a/models/financial_deal_tool.py
+++ b/models/financial_deal_tool.py
@@ -4,7 +4,7 @@
 from odoo import models
 
 
-class TemplateModel(models.Model):
+class DealTool(models.Model):
     _inherit = "financial.deal.tool"
 
     # ------------------------------------------------------
@@ -35,19 +35,20 @@ class TemplateModel(models.Model):
     # Actions
     # ------------------------------------------------------
     def btn_init_contract(self):
-        self.deal_id.contract_ids = [
-            (
-                0,
-                0,
-                {
-                    "description": self.deal_id.description,
-                    "name": "An incoming sequence",
-                    "partner_id": self.deal_id.partner_id.id,
-                    "deal_tool_id": self.id,
-                },
-            )
-        ]
+        contract = self.generate_contract()
+        # TODO Show contract
 
     # ------------------------------------------------------
     # Business methods
     # ------------------------------------------------------
+    def generate_contract(self):
+        self.ensure_one()
+        contract = self.env["financial.contract"].create(
+            {
+                "description": self.deal_id.description,
+                "name": "An incoming sequence",
+                "partner_id": self.deal_id.partner_id.id,
+                "deal_tool_id": self.id,
+            }
+        )
+        return contract
-- 
GitLab