File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -15,6 +15,12 @@ def _compute_total_area(self):
1515 for record in self :
1616 record .total_area = record .garden_area + record .living_area
1717
18+ @api .depends ("offer_ids.price" )
19+ def _compute_best_price (self ):
20+ for record in self :
21+ prices = record .offer_ids .mapped ("price" )
22+ record .best_price = max (prices ) if prices else 0
23+
1824 name = fields .Char (required = True , default = "UNKNOWN" )
1925 description = fields .Text ()
2026 postcode = fields .Char ()
@@ -71,3 +77,13 @@ def _compute_total_area(self):
7177 "property_id" ,
7278 )
7379 total_area = fields .Float (compute = "_compute_total_area" )
80+ best_price = fields .Float (compute = "_compute_best_price" )
81+
82+ @api .onchange ("garden" )
83+ def _onchange_garden (self ):
84+ if self .garden :
85+ self .garden_area = 10
86+ self .garden_orientation = 'north'
87+ else :
88+ self .garden_area = 0
89+ self .garden_orientation = False
Original file line number Diff line number Diff line change 1- from odoo import fields , models
1+ from datetime import timedelta
2+
3+ from odoo import api , fields , models
24
35
46class EstatePropertyOffer (models .Model ):
57 _name = "estate.property.offer"
68 _description = "estate property offers"
79
10+ @api .depends ("create_date" , "validity" )
11+ def _compute_date_deadline (self ):
12+ for record in self :
13+ if record .create_date :
14+ record .date_deadline = record .create_date + timedelta (days = record .validity )
15+ else :
16+ record .date_deadline = fields .Date .today () + timedelta (days = record .validity )
17+
18+ def _inverse_date_deadline (self ):
19+ for record in self :
20+ if record .create_date and record .date_deadline :
21+ record .validity = (record .date_deadline - record .create_date .date ()).days
22+
23+
824 price = fields .Float ()
925 status = fields .Selection (
1026 [
@@ -22,3 +38,8 @@ class EstatePropertyOffer(models.Model):
2238 "estate.property" ,
2339 required = True
2440 )
41+ validity = fields .Integer (default = 7 )
42+ date_deadline = fields .Date (
43+ compute = "_compute_date_deadline" ,
44+ inverse = "_inverse_date_deadline"
45+ )
Original file line number Diff line number Diff line change 99 <field name =" price" />
1010 <field name =" partner_id" />
1111 <field name =" status" />
12+ <field name =" validity" />
13+ <field name =" date_deadline" />
1214 </list >
1315 </field >
1416 </record >
2224 <field name =" status" />
2325 <field name =" partner_id" />
2426 <field name =" price" />
27+ <field name =" validity" />
28+ <field name =" date_deadline" />
2529 </group >
2630 </form >
2731 </field >
Original file line number Diff line number Diff line change 4141 </group >
4242 <group >
4343 <field name =" expected_price" />
44+ <field name =" best_price" />
4445 <field name =" selling_price" />
4546 </group >
4647 </group >
You can’t perform that action at this time.
0 commit comments