Chapter 15

This commit is contained in:
Matt Marcha 2024-07-31 17:10:54 -10:00
parent 135513d59c
commit c45910d24e
7 changed files with 22 additions and 16 deletions

View file

@ -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',

View file

@ -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)

View file

@ -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):

View file

@ -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):

View file

@ -0,0 +1,10 @@
<?xml version="1.0"?>
<odoo>
<menuitem id="estate_menu_root" name="Real Estate" />
<menuitem id="estate_property_menu" name="Advertisements" parent="estate_menu_root" />
<menuitem id="estate_property_menu_action" action="estate_property_action" parent="estate_property_menu"/>
<menuitem id="estate_property_menu_settings" name="Settings" parent="estate_menu_root" />
<menuitem id="estate_property_type_menu_action" action="estate_property_type_action" name="Property Types" parent="estate_property_menu_settings"/>
<menuitem id="estate_property_tag_menu_action" action="estate_property_tag_action" name="Property Tags" parent="estate_property_menu_settings"/>
</odoo>

View file

@ -1,10 +0,0 @@
<?xml version="1.0"?>
<odoo>
<menuitem id="estate_menu_root" name="Real Estate" />
<menuitem id="estate_first_level_menu_advertisements" name="Advertisements" parent="estate_menu_root" />
<menuitem id="estate_property_menu_action" action="estate_property_action" parent="estate_first_level_menu_advertisements"/>
<menuitem id="estate_first_level_menu_settings" name="Settings" parent="estate_menu_root" />
<menuitem id="estate_property_type_menu_action" action="estate_property_type_action" name="Property Types" parent="estate_first_level_menu_settings"/>
<menuitem id="estate_property_tag_menu_action" action="estate_property_tag_action" name="Property Tags" parent="estate_first_level_menu_settings"/>
</odoo>

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="res_users_view_form" model="ir.ui.view">
<field name="name">res.users.view.form.inherit.estate</field>
<field name="name">res.users.view.form.inherit.estate.properties</field>
<field name="model">res.users</field>
<field name="inherit_id" ref="base.view_users_form"/>
<field name="arch" type="xml">