44
55class EstatePropertyOffer (models .Model ):
66 _name = 'estate.property.offer'
7- _description = 'All offers '
7+ _description = 'Estate Offers '
88 _order = 'price desc'
99
1010 price = fields .Float (required = True )
@@ -18,7 +18,7 @@ class EstatePropertyOffer(models.Model):
1818 partner_id = fields .Many2one ('res.partner' , string = 'Partner' )
1919 property_id = fields .Many2one ('estate.property' , string = 'Property' )
2020 validity = fields .Integer (default = 7 )
21- date_deadline = fields .Date (compute = '_compute_deadline ' , inverse = "_inverse_deadline " )
21+ date_deadline = fields .Date (compute = '_compute_date_deadline ' , inverse = "_inverse_date_deadline " )
2222 property_type_id = fields .Many2one (related = "property_id.property_type_id" , store = True )
2323
2424 _check_price = models .Constraint (
@@ -27,13 +27,18 @@ class EstatePropertyOffer(models.Model):
2727 )
2828
2929 @api .depends ('create_date' , 'validity' )
30- def _compute_deadline (self ):
30+ def _compute_date_deadline (self ):
3131 for record in self :
3232 created_date = record .create_date or fields .Date .today ()
3333 record .date_deadline = fields .Date .add (
3434 created_date , days = record .validity ,
3535 )
3636
37+ def _inverse_date_deadline (self ):
38+ for record in self :
39+ created_date = record .create_date .date () or fields .Date .today ()
40+ record .validity = (record .date_deadline - created_date ).days
41+
3742 @api .model
3843 def create (self , val_lists ):
3944 for vals in val_lists :
@@ -44,16 +49,10 @@ def create(self, val_lists):
4449 linked_property .state = 'offer_received'
4550 return super ().create (val_lists )
4651
47- def _inverse_deadline (self ):
48- for record in self :
49- created_date = record .create_date .date () or fields .Date .today ()
50- record .validity = (record .date_deadline - created_date ).days
51-
5252 def action_mark_as_accepted (self ):
5353 for record in self :
5454 if (
55- record .property_id .state != 'new'
56- and record .property_id .state != 'offer_received'
55+ record .property_id .state not in ('new' , 'offer_received' )
5756 ):
5857 raise UserError ('Cannot accept offer in this state' )
5958
@@ -66,6 +65,6 @@ def action_mark_as_refused(self):
6665 for record in self :
6766 if record .status == 'accepted' :
6867 record .property_id .state = 'offer_received'
69- record .property_id .selling_price = None
68+ record .property_id .selling_price = 0.0
7069 record .property_id .buyer_id = None
7170 record .status = 'refused'
0 commit comments