Skip to content

Commit 709dd42

Browse files
committed
[IMP] estate: Implemet menus and new model customizations
Chapter 5
1 parent f2a9463 commit 709dd42

File tree

5 files changed

+41
-4
lines changed

5 files changed

+41
-4
lines changed

estate/__manifest__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,7 @@
1111
"installable": True,
1212
"data": [
1313
"data/ir.model.access.csv",
14+
"views/estate_property_views.xml",
15+
"views/estate_menus.xml",
1416
],
1517
}

estate/data/ir.model.access.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
2-
estate.access_estate_property,access_estate_property,estate.model_estate_property,base.group_user,1,0,0,0
2+
estate.access_estate_property,access_estate_property,estate.model_estate_property,base.group_user,1,1,1,1

estate/models/estate_property.py

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
from datetime import datetime
2+
3+
from dateutil.relativedelta import relativedelta
14
from odoo import fields, models
25

36

@@ -7,11 +10,14 @@ class EstateProperty(models.Model):
710

811
name = fields.Char(required=True)
912
description = fields.Text()
13+
active = fields.Boolean(default=True)
1014
postcode = fields.Char()
11-
date_availability = fields.Date()
15+
date_availability = fields.Date(
16+
copy=False, default=datetime.now() + relativedelta(month=3)
17+
)
1218
expected_price = fields.Float(required=True)
13-
selling_price = fields.Float()
14-
bedrooms = fields.Integer()
19+
selling_price = fields.Float(readonly=True, copy=False)
20+
bedrooms = fields.Integer(default=2)
1521
living_area = fields.Integer()
1622
facades = fields.Integer()
1723
garage = fields.Boolean()
@@ -26,3 +32,16 @@ class EstateProperty(models.Model):
2632
],
2733
help="Indicates the direction the garden is facing with respect to the house",
2834
)
35+
state = fields.Selection(
36+
[
37+
("new", "New"),
38+
("offer_received", "Offer Received"),
39+
("offer_accepted", "Offer Accepted"),
40+
("sold", "Sold"),
41+
("cancelled", "Cancelled"),
42+
],
43+
required=True,
44+
copy=False,
45+
default="new",
46+
help="State of the proprty listing lifecycle",
47+
)

estate/views/estate_menus.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0"?>
2+
<odoo>
3+
<menuitem id="estate_property_menu_root" name="Real Estate">
4+
<menuitem id="estate_property_first_level_menu" name="First Level">
5+
<menuitem id="estate_property_model_menu_action" action="estate_property_action" />
6+
</menuitem>
7+
</menuitem>
8+
</odoo>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0"?>
2+
<odoo>
3+
<record id="estate_property_action" model="ir.actions.act_window">
4+
<field name="name">estate property action</field>
5+
<field name="res_model">estate_property</field>
6+
<field name="view_mode">list,form</field>
7+
</record>
8+
</odoo>

0 commit comments

Comments
 (0)