From c45910d24ef909f52f26fa4817169ed00649e84d Mon Sep 17 00:00:00 2001 From: Matt Marcha Date: Wed, 31 Jul 2024 17:10:54 -1000 Subject: [PATCH] Chapter 15 --- estate/__manifest__.py | 2 +- estate/models/estate_property.py | 10 ++++++++-- estate/models/estate_property_offer.py | 2 +- estate/models/estate_property_type.py | 2 +- estate/views/estate_menus.xml | 10 ++++++++++ estate/views/estate_menus_view.xml | 10 ---------- estate/views/res_users_views.xml | 2 +- 7 files changed, 22 insertions(+), 16 deletions(-) create mode 100644 estate/views/estate_menus.xml delete mode 100644 estate/views/estate_menus_view.xml diff --git a/estate/__manifest__.py b/estate/__manifest__.py index ab70a45..840d0f6 100644 --- a/estate/__manifest__.py +++ b/estate/__manifest__.py @@ -14,7 +14,7 @@ 'views/estate_property_tag_views.xml', 'views/estate_property_views.xml', 'views/res_users_views.xml', - 'views/estate_menus_view.xml', + 'views/estate_menus.xml', 'security/ir.model.access.csv', ], 'license': 'AGPL-3', diff --git a/estate/models/estate_property.py b/estate/models/estate_property.py index f56e904..0d87087 100644 --- a/estate/models/estate_property.py +++ b/estate/models/estate_property.py @@ -1,5 +1,7 @@ # -*- coding: utf-8 -*- -from odoo import api, fields, models, exceptions +from dateutil.relativedelta import relativedelta + +from odoo import api, exceptions, fields, models from odoo.tools import float_utils as floatTool class EstateProperty(models.Model): @@ -18,12 +20,15 @@ class EstateProperty(models.Model): # ------------- Fields ------------------------- # + def _default_date_availability(self): + return fields.Date.context_today(self) + relativedelta(months=3) + name = fields.Char(required=True) description = fields.Text() active = fields.Boolean(default=True) state = fields.Selection(selection=[('new','New'), ('offer_received', 'Offer Received'), ('offer_accepted', 'Offer Accepted'), ('sold', 'Sold'), ('cancelled', 'Cancelled')], required=True, copy=False, default='new') postcode = fields.Char() - date_availability = fields.Date(copy=False, default=fields.Date.add(fields.Date.today(), months=3)) + date_availability = fields.Date(copy=False, default=lambda self: self._default_date_availability()) expected_price = fields.Float(required=True) selling_price = fields.Float(readonly=True, copy=False) bedrooms = fields.Integer(default=2) @@ -41,6 +46,7 @@ class EstateProperty(models.Model): total_area = fields.Integer(compute="_get_total_area", readonly=True) best_price = fields.Float(compute="_compute_best_price") + # ----------------- CRUD methods --------------------------- # @api.ondelete(at_uninstall=False) diff --git a/estate/models/estate_property_offer.py b/estate/models/estate_property_offer.py index d38edb0..83c8535 100644 --- a/estate/models/estate_property_offer.py +++ b/estate/models/estate_property_offer.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -from odoo import api, fields, models, exceptions +from odoo import api, exceptions, fields, models from odoo.tools import float_utils as floatTool class EstatePropertyOffer(models.Model): diff --git a/estate/models/estate_property_type.py b/estate/models/estate_property_type.py index 1402d42..30a2044 100644 --- a/estate/models/estate_property_type.py +++ b/estate/models/estate_property_type.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- from itertools import count -from odoo import fields, models, api +from odoo import api, fields, models class EstatePropertyType(models.Model): diff --git a/estate/views/estate_menus.xml b/estate/views/estate_menus.xml new file mode 100644 index 0000000..3961fcf --- /dev/null +++ b/estate/views/estate_menus.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/estate/views/estate_menus_view.xml b/estate/views/estate_menus_view.xml deleted file mode 100644 index 0641ee8..0000000 --- a/estate/views/estate_menus_view.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/estate/views/res_users_views.xml b/estate/views/res_users_views.xml index 41efd20..4cc443c 100644 --- a/estate/views/res_users_views.xml +++ b/estate/views/res_users_views.xml @@ -1,7 +1,7 @@ - res.users.view.form.inherit.estate + res.users.view.form.inherit.estate.properties res.users