Skip to content

Commit 7775386

Browse files
committed
[IMP] estate: add list view and form view
In estate module add basic views list view and form view Also add filter for new or offer received stage
1 parent d681d36 commit 7775386

File tree

6 files changed

+81
-11
lines changed

6 files changed

+81
-11
lines changed

estate/__init__.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
# empty
2-
31
from . import models
42

3+

estate/__manifest__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@
77
'views/estate_property_views.xml',
88
'views/estate_menus.xml'
99
]
10-
}
10+
}

estate/models/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
from . import estate_property
1+
from . import estate_property

estate/models/estate_property.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from odoo import models, fields
22
from dateutil.relativedelta import relativedelta
33

4+
45
class EstateProperty(models.Model):
56
_name = 'estate_property'
67
_description = "Real Estate Property"
@@ -12,12 +13,12 @@ class EstateProperty(models.Model):
1213
expected_price = fields.Float(required=True)
1314
selling_price = fields.Float(readonly=True, copy=False)
1415
bedrooms = fields.Integer(default=2)
15-
living_area = fields.Integer()
16+
living_area = fields.Integer(string="Living Area (sqm)")
1617
facades = fields.Integer()
1718
garage = fields.Boolean()
1819
garden = fields.Boolean()
19-
garden_area = fields.Integer()
20+
garden_area = fields.Integer(string="Garden Area (sqm)")
2021
garden_orientation=fields.Selection(string='Garden Orientation',selection=[('north', 'North'), ('south', 'South'), ('east','East'), ('west','West')])
2122
active=fields.Boolean(default=False)
2223
state=fields.Selection(selection=[('new','New'),('offer_received','Offer Received'),('offer_accepted','Offer Accepted'),('sold','Sold'),('cancelled','Cancelled')])
23-
24+

estate/views/estate_menus.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0"?>
22
<odoo>
33
<menuitem id="real_estate_menu" name="Real Estate">
4-
<menuitem id="advertisements_menu" name="Advertisements">
5-
<menuitem id="properties_menu_action" action="test_model_action"/>
4+
<menuitem id="advertisements_menu" name="Advertisements" sequence="1">
5+
<menuitem id="properties_menu_action" action="estate_property_action"/>
66
</menuitem>
77
</menuitem>
88
</odoo>
Lines changed: 72 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,79 @@
11
<?xml version="1.0"?>
22
<odoo>
3-
<record id="test_model_action" model="ir.actions.act_window">
3+
4+
<record id="estate_property_search" model="ir.ui.view">
5+
<field name="model">estate_property</field>
6+
<field name="arch" type="xml">
7+
<search string="Search Properties">
8+
<field name="postcode"/>
9+
<field name="bedrooms"/>
10+
<field name="living_area"/>
11+
<field name="expected_price"/>
12+
<field name="selling_price"/>
13+
<field name="facades"/>
14+
<filter string="Available" name="group_by_available" domain="['|' ,('state', '=', 'new'), ('state', '=', 'offer_received')]"/>
15+
</search>
16+
17+
</field>
18+
</record>
19+
20+
21+
<record id="estate_property_list" model="ir.ui.view">
22+
<field name="model">estate_property</field>
23+
<field name="arch" type="xml">
24+
<list string="List">
25+
<field name="name"/>
26+
<field name="postcode"/>
27+
<field name="bedrooms"/>
28+
<field name="living_area"/>
29+
<field name="selling_price"/>
30+
<field name="date_availability"/>
31+
</list>
32+
</field>
33+
</record>
34+
35+
36+
<record id="estate_property_form" model="ir.ui.view">
37+
<field name="model">estate_property</field>
38+
<field name="arch" type="xml">
39+
<form string="test">
40+
<sheet>
41+
<group>
42+
<group>
43+
<field name="name"/>
44+
<field name="date_availability"/>
45+
</group>
46+
<group>
47+
<field name="expected_price"/>
48+
<field name="selling_price"/>
49+
</group>
50+
</group>
51+
<notebook>
52+
<page string="Description">
53+
<group>
54+
<field name="description"/>
55+
<field name="postcode"/>
56+
<field name="bedrooms"/>
57+
<field name="living_area"/>
58+
<field name="facades"/>
59+
<field name="garage"/>
60+
<field name="garden"/>
61+
<field name="garden_area"/>
62+
<field name="garden_orientation"/>
63+
<field name="state"/>
64+
</group>
65+
</page>
66+
</notebook>
67+
</sheet>
68+
</form>
69+
</field>
70+
</record>
71+
72+
73+
<record id="estate_property_action" model="ir.actions.act_window">
474
<field name="name">Properties</field>
575
<field name="res_model">estate_property</field>
676
<field name="view_mode">list,form</field>
777
<field name="context">{"search_default_available":1}</field>
878
</record>
9-
</odoo>
79+
</odoo>

0 commit comments

Comments
 (0)