From bf0104bde9befc599ee376135976b730b147c05a Mon Sep 17 00:00:00 2001
From: thibaud <thibaud@le-filament.com>
Date: Tue, 19 Mar 2024 14:38:39 +0100
Subject: [PATCH] [IMP] Added loan_manager interfaces

---
 __manifest__.py              |  1 +
 models/__init__.py           |  2 +-
 models/financial_contract.py |  1 +
 models/loan_manager_loan.py  | 42 ++++++++++++++++++++++++++++++++++++
 views/loan_manager_loan.xml  | 21 ++++++++++++++++++
 5 files changed, 66 insertions(+), 1 deletion(-)
 create mode 100644 models/loan_manager_loan.py
 create mode 100644 views/loan_manager_loan.xml

diff --git a/__manifest__.py b/__manifest__.py
index e569e51..9256174 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -11,6 +11,7 @@
         # datas
         # views
         "views/financial_contract.xml",
+        "views/loan_manager_loan.xml"
         # views menu
         # wizard
     ],
diff --git a/models/__init__.py b/models/__init__.py
index bd471cc..4c846b7 100644
--- a/models/__init__.py
+++ b/models/__init__.py
@@ -1 +1 @@
-from . import financial_manager, financial_contract
+from . import financial_manager, financial_contract, loan_manager_loan
diff --git a/models/financial_contract.py b/models/financial_contract.py
index 051f0e1..be72c73 100644
--- a/models/financial_contract.py
+++ b/models/financial_contract.py
@@ -86,6 +86,7 @@ class FinancialContract(models.Model):
             "periodicity": "6",
             "rate": 1.60,
             "partner_id": self.deal_id.partner_id.id,
+            "contract_id": self.id,
         }
 
         # Create financial tool associated
diff --git a/models/loan_manager_loan.py b/models/loan_manager_loan.py
new file mode 100644
index 0000000..b8578a9
--- /dev/null
+++ b/models/loan_manager_loan.py
@@ -0,0 +1,42 @@
+# Copyright 2023- Le Filament (https://le-filament.com)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)
+
+from odoo import models, fields
+
+
+class Loan(models.Model):
+    _inherit = "loan.manager.loan"
+
+    # ------------------------------------------------------
+    # Fields declaration
+    # ------------------------------------------------------
+    contract_id = fields.Many2one(
+        "financial.contract", readonly=True, ondelete="cascade"
+    )
+    # ------------------------------------------------------
+    # SQL Constraints
+    # ------------------------------------------------------
+
+    # ------------------------------------------------------
+    # Default methods
+    # ------------------------------------------------------
+
+    # ------------------------------------------------------
+    # Computed fields / Search Fields
+    # ------------------------------------------------------
+
+    # ------------------------------------------------------
+    # Onchange / Constraints
+    # ------------------------------------------------------
+
+    # ------------------------------------------------------
+    # CRUD methods (ORM overrides)
+    # ------------------------------------------------------
+
+    # ------------------------------------------------------
+    # Actions
+    # ------------------------------------------------------
+
+    # ------------------------------------------------------
+    # Business methods
+    # ------------------------------------------------------
diff --git a/views/loan_manager_loan.xml b/views/loan_manager_loan.xml
new file mode 100644
index 0000000..0b5b5e6
--- /dev/null
+++ b/views/loan_manager_loan.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+    <data>
+
+        <!-- Inherit Form View to Modify it -->
+        <record id="loan_manager_loan_form_inherit_manager_tool" model="ir.ui.view">
+            <field name="name">loan_manager_loan_form_inherit_manager_tool</field>
+            <field name="model">loan.manager.loan</field>
+            <field name="inherit_id" ref="loan_manager.loan_manager_loan_form"/>
+            <field name="arch" type="xml">
+
+                <xpath expr="//group[position()=1]/group" position="after">
+                    <group>
+                        <field name="contract_id"/>
+                    </group>
+                </xpath>
+
+            </field>
+        </record>
+    </data>
+</odoo>
-- 
GitLab