Skip to content

Commit f93a29d

Browse files
committed
[IMP] estate: Added offer and tag and type models with their views and connections to the main model
1 parent 6ccbe0a commit f93a29d

12 files changed

+121
-5
lines changed

estate/__manifest__.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
11
{
22
'name': "Real estate",
33
'version': "0.1",
4-
'depends': ['base'],
4+
'depends': [
5+
'base'
6+
],
57
'descritpion': "A module for me to know how to develop modules at Odoo, also sell real estate",
68
'author': "yagho",
79
'application': True,
810
'installable': True,
911
'license': "LGPL-3",
1012
'data': [
1113
'security/ir.model.access.csv',
14+
'views/estate_property_offer_views.xml',
15+
'views/estate_property_type_views.xml',
16+
'views/estate_property_tag_views.xml',
1217
'views/estate_property_views.xml',
1318
'views/estate_property_menu_views.xml',
1419
]

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_property
2+
from . import estate_property_type
3+
from . import estate_property_tag
4+
from . import estate_property_offer

estate/models/estate_property.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from datetime import date
33
from dateutil.relativedelta import relativedelta
44

5+
56
class EstateProperty(models.Model):
67
_name = "estate.property"
78
_description = "property data"
@@ -30,3 +31,8 @@ class EstateProperty(models.Model):
3031
copy=False,
3132
default="New"
3233
)
34+
type_id = fields.Many2one("estate.property.type", string="type")
35+
buyer_id = fields.Many2one("res.partner", string="buyer",copy=False)
36+
salesperson_id = fields.Many2one("res.users", string="salesperson",default=lambda self: self.env.user)
37+
tag_ids = fields.Many2many("estate.property.tag", string="tag")
38+
offer_ids = fields.One2many("estate.property.offer", "property_id", string="offer")
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
from odoo import fields, models
2+
3+
4+
class EstatePropertyOffer(models.Model):
5+
_name = "estate.property.offer"
6+
_description = "property offer"
7+
8+
price = fields.Float('price')
9+
status = fields.Selection(
10+
string='status',
11+
selection=[('Accepted', 'Accepted'), ('Refused', 'Refused')],
12+
copy=False)
13+
partner_id = fields.Many2one("res.partner", string="partner",required=True)
14+
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 EstatePropertyTag(models.Model):
5+
_name = "estate.property.tag"
6+
_description = "property tags"
7+
8+
name = fields.Char('name', 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 EstatePropertyType(models.Model):
5+
_name = "estate.property.type"
6+
_description = "property types"
7+
8+
name = fields.Char('name', required=True)
Lines changed: 3 additions & 0 deletions
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
22
access_testate_property,access_estate_property,model_estate_property,base.group_user,1,1,1,1
3+
access_testate_property_type,access_estate_property_type,model_estate_property_type,base.group_user,1,1,1,1
4+
access_testate_property_tag,access_estate_property_tag,model_estate_property_tag,base.group_user,1,1,1,1
5+
access_testate_property_offer,access_estate_property_offer,model_estate_property_offer,base.group_user,1,1,1,1

estate/views/estate_property_menu_views.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,9 @@
44
<menuitem id="test_first_level_menu" name="ADs">
55
<menuitem id="estate_property_menu_action" action="estate_property_action"/>
66
</menuitem>
7+
<menuitem id="test_first_level_menu2" name="Settings">
8+
<menuitem id="estate_property_menu_action_3" action="estate_property_type_action_2"/>
9+
<menuitem id="estate_property_tag_menu_action" action="estate_property_tag_action"/>
10+
</menuitem>
711
</menuitem>
812
</odoo>
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?xml version="1.0"?>
2+
<odoo>
3+
<data>
4+
<record id="estate_property_offer_view_list" model="ir.ui.view">
5+
<field name="name">estate.property.offer.list</field>
6+
<field name="model">estate.property.offer</field>
7+
<field name="arch" type="xml">
8+
<list string="Channel">
9+
<field name="price"/>
10+
<field name="partner_id"/>
11+
<field name="status"/>
12+
</list>
13+
</field>
14+
</record>
15+
16+
<record id="estate_property_offer_view_form" model="ir.ui.view">
17+
<field name="name">estate.property.offer.form</field>
18+
<field name="model">estate.property.offer</field>
19+
<field name="arch" type="xml">
20+
<form string="Test">
21+
<sheet>
22+
<group>
23+
<field name="price"/>
24+
<field name="partner_id"/>
25+
<field name="status"/>
26+
</group>
27+
</sheet>
28+
</form>
29+
</field>
30+
</record>
31+
</data>
32+
</odoo>
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<?xml version="1.0"?>
2+
<odoo>
3+
<data>
4+
<record id="estate_property_tag_action" model="ir.actions.act_window">
5+
<field name="name">estate property tag</field>
6+
<field name="res_model">estate.property.tag</field>
7+
<field name="view_mode">list,form</field>
8+
</record>
9+
</data>
10+
</odoo>

0 commit comments

Comments
 (0)