From 1dc144c1862459dd97bc0bdc77ca69233187662b Mon Sep 17 00:00:00 2001 From: smee-odoo Date: Wed, 14 Aug 2024 17:31:16 +0530 Subject: [PATCH] [ADD] estate_account: added estate_account module After this commit -added estate_property model inherting from estate module -implemented sold button override -implemented invoice createion --- estate/__manifest__.py | 2 +- estate/views/estate_property_tag_view.xml | 2 +- estate/views/estate_property_type_view.xml | 2 +- estate_account/__init__.py | 1 + estate_account/__manifest__.py | 18 +++++++++++++++ estate_account/models/__init__.py | 1 + estate_account/models/estate_property.py | 25 +++++++++++++++++++++ estate_account/security/ir.model.access.csv | 2 ++ 8 files changed, 50 insertions(+), 3 deletions(-) create mode 100644 estate_account/__init__.py create mode 100644 estate_account/__manifest__.py create mode 100644 estate_account/models/__init__.py create mode 100644 estate_account/models/estate_property.py create mode 100644 estate_account/security/ir.model.access.csv diff --git a/estate/__manifest__.py b/estate/__manifest__.py index f2a42c5e4..41c397f6e 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -9,11 +9,11 @@ 'security/ir.model.access.csv', 'views/estate_property_views.xml', 'views/estate_property_menu.xml', + 'views/estate_property_offer_view.xml', 'views/estate_property_type_view.xml', 'views/estate_property_type_menu.xml', 'views/estate_property_tag_view.xml', 'views/estate_property_tag_menu.xml', - 'views/estate_property_offer_view.xml', 'views/res_users_view.xml' ], 'demo': [ diff --git a/estate/views/estate_property_tag_view.xml b/estate/views/estate_property_tag_view.xml index db1effefc..e86293709 100644 --- a/estate/views/estate_property_tag_view.xml +++ b/estate/views/estate_property_tag_view.xml @@ -29,7 +29,7 @@ estate.property.tag.tree estate.property.tag - + diff --git a/estate/views/estate_property_type_view.xml b/estate/views/estate_property_type_view.xml index 50ebc71ef..a5430fcb6 100644 --- a/estate/views/estate_property_type_view.xml +++ b/estate/views/estate_property_type_view.xml @@ -32,7 +32,7 @@ - + diff --git a/estate_account/__init__.py b/estate_account/__init__.py new file mode 100644 index 000000000..0650744f6 --- /dev/null +++ b/estate_account/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/estate_account/__manifest__.py b/estate_account/__manifest__.py new file mode 100644 index 000000000..ff98ebf08 --- /dev/null +++ b/estate_account/__manifest__.py @@ -0,0 +1,18 @@ +{ + 'name': "ESTATE_ACCOUNT", + 'version': "1.0", + 'description': "Support module to implement invoicing for the properties", + 'depends': [ + 'base_setup', + 'estate', + 'account' + ], + 'data': [ + + ], + 'demo': [ + + ], + 'installable': True, + 'license': 'LGPL-3' +} diff --git a/estate_account/models/__init__.py b/estate_account/models/__init__.py new file mode 100644 index 000000000..5e1963c9d --- /dev/null +++ b/estate_account/models/__init__.py @@ -0,0 +1 @@ +from . import estate_property diff --git a/estate_account/models/estate_property.py b/estate_account/models/estate_property.py new file mode 100644 index 000000000..25fb9ab51 --- /dev/null +++ b/estate_account/models/estate_property.py @@ -0,0 +1,25 @@ +from odoo import models, Command + + +class EstateProperty(models.Model): + _inherit = "estate.property" + + def action_sold_button(self): + super().action_sold_button() + move_vals = { + 'partner_id': self.buyer_id.id, + 'move_type': 'out_invoice', + 'invoice_line_ids': [ + Command.create({ + "name": "6% selling price", + "quantity": 1, + "price_unit": self.selling_price * 0.6 + }), + Command.create({ + "name": "Administration fee", + "quantity": 1, + "price_unit": 100 + }) + ] + } + self.env['account.move'].create(move_vals) diff --git a/estate_account/security/ir.model.access.csv b/estate_account/security/ir.model.access.csv new file mode 100644 index 000000000..0e11f47e5 --- /dev/null +++ b/estate_account/security/ir.model.access.csv @@ -0,0 +1,2 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_estate_property,access_estate_property,model_estate_property,base.group_user,1,1,1,1 \ No newline at end of file