Skip to content

Commit 23db79f

Browse files
committed
[IMP] estate: Chapter 7
1 parent aa31e98 commit 23db79f

12 files changed

+114
-6
lines changed

estate/__manifest__.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@
77
'security/ir.model.access.csv',
88

99
'views/estate_property_views.xml',
10-
'views/estate_menus.xml'
10+
'views/estate_property_type_views.xml',
11+
'views/estate_property_tag_views.xml',
12+
'views/estate_property_offer_views.xml',
13+
'views/estate_menus.xml',
1114
],
1215
'application': True,
1316
'author': 'Odoo S.A.',

estate/models/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
11
from . import estate_properties
2+
from . import estate_property_types
3+
from . import estate_property_tags
4+
from . import estate_property_offers

estate/models/estate_properties.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ class PropertyModel(models.Model):
1818
garden = fields.Boolean()
1919
garden_area = fields.Integer()
2020
garden_orientation = fields.Selection(
21-
string='Orientation',
2221
selection=[
2322
('north', 'North'),
2423
('south', 'South'),
@@ -29,7 +28,6 @@ class PropertyModel(models.Model):
2928

3029
active = fields.Boolean(default=True)
3130
state = fields.Selection(
32-
string="State",
3331
selection=[
3432
("new", "New"),
3533
("received", "Offer Received"),
@@ -41,3 +39,8 @@ class PropertyModel(models.Model):
4139
copy=False,
4240
default="new"
4341
)
42+
property_type_id = fields.Many2one("estate.property.type")
43+
buyer = fields.Many2one("res.partner", copy=False)
44+
salesperson = fields.Many2one("res.users", default=lambda self: self.env.user)
45+
tag_ids = fields.Many2many("estate.property.tag")
46+
offer_ids = fields.One2many("estate.property.offer", "property_id")
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
from odoo import fields, models
2+
3+
4+
class PropertyOfferModel(models.Model):
5+
_name = "estate.property.offer"
6+
_description = "Estate Property Offer model"
7+
8+
price = fields.Float()
9+
status = fields.Selection(
10+
selection=[
11+
("accepted", "Accepted"),
12+
("refused", "Refused")
13+
],
14+
copy=False
15+
)
16+
partner_id = fields.Many2one("res.partner", required=True)
17+
property_id = fields.Many2one("estate.property", required=True)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
from odoo import fields, models
2+
3+
4+
class PropertyTagModel(models.Model):
5+
_name = "estate.property.tag"
6+
_description = "Estate Property Tag model"
7+
8+
name = fields.Char(required=True)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
from odoo import fields, models
2+
3+
4+
class PropertyTypeModel(models.Model):
5+
_name = "estate.property.type"
6+
_description = "Estate Property Type model"
7+
8+
name = fields.Char(required=True)
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
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,1,1,1
2+
estate.access_estate_property,access_estate_property,estate.model_estate_property,base.group_user,1,1,1,1
3+
estate.access_estate_property_type,access_estate_property_type,estate.model_estate_property_type,base.group_user,1,1,1,1
4+
estate.access_estate_property_tag,access_estate_property_tag,estate.model_estate_property_tag,base.group_user,1,1,1,1
5+
estate.access_estate_property_offer,access_estate_property_offer,estate.model_estate_property_offer,base.group_user,1,1,1,1

estate/views/estate_menus.xml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
<odoo>
22
<menuitem id="estate_menu_root" name="Real Estate">
3-
<menuitem id="estate_first_level_menu" name="Advertisements">
3+
<menuitem id="estate_advertisements_menu" name="Advertisements">
44
<menuitem id="estate_model_menu_action" action="estate_property_action"/>
55
</menuitem>
6+
<menuitem id="estate_settings_menu" name="Settings">
7+
<menuitem id="estate_property_types_menu" action="estate_property_type_action"/>
8+
<menuitem id="estate_property_tags_menu" action="estate_property_tag_action"/>
9+
</menuitem>
610
</menuitem>
7-
</odoo>
11+
</odoo>
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<odoo>
2+
<record id="estate_property_offer_list_view" model="ir.ui.view">
3+
<field name="name">estate.property.offer.list</field>
4+
<field name="model">estate.property.offer</field>
5+
<field name="arch" type="xml">
6+
<list string="Channel">
7+
<field name="price"/>
8+
<field name="partner_id"/>
9+
<field name="status"/>
10+
</list>
11+
</field>
12+
</record>
13+
14+
<record id="estate_property_offer_form_view" model="ir.ui.view">
15+
<field name="name">estate.property.offer.form</field>
16+
<field name="model">estate.property.offer</field>
17+
<field name="arch" type="xml">
18+
<form string="Property Offer">
19+
<sheet>
20+
<h1>
21+
<field name="property_id"/>
22+
</h1>
23+
<group>
24+
<field name="price"/>
25+
<field name="partner_id"/>
26+
<field name="status"/>
27+
</group>
28+
</sheet>
29+
</form>
30+
</field>
31+
</record>
32+
</odoo>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<odoo>
2+
<record id="estate_property_tag_action" model="ir.actions.act_window">
3+
<field name="name">Property Tags</field>
4+
<field name="res_model">estate.property.tag</field>
5+
<field name="view_mode">list,form</field>
6+
</record>
7+
</odoo>

0 commit comments

Comments
 (0)