diff --git a/cor_custom/models/project.py b/cor_custom/models/project.py
index 055b14b..2f92558 100755
--- a/cor_custom/models/project.py
+++ b/cor_custom/models/project.py
@@ -40,24 +40,26 @@ class Project(models.Model):
budgeted_hours = fields.Float(string='Total Budgeted Hours', digits=(16, 2))
budgeted_revenue = fields.Float(string='Budgeted Revenue', digits=(16, 2))
- cost = fields.Float("Sum of Cost", compute='onchange_compute_hours')
- hourly_rate = fields.Float("Sum of Hourly rate", compute='onchange_compute_hours')
- budgeted_hour_week = fields.Float("Budgeted Hours(per week)", compute='onchange_compute_hours')
+ cost = fields.Float("Sum of Cost", compute='onchange_compute_values', store=True)
+ hourly_rate = fields.Float("Sum of Hourly rate", compute='onchange_compute_values', store=True)
+ budgeted_hour_week = fields.Float("Budgeted Hours(per week)", compute='onchange_compute_values', store=True)
- @api.depends('sale_line_employee_ids.budgeted_qty', 'sale_line_employee_ids.budgeted_qty')
- def onchange_compute_hours(self):
- if self.project_type == 'hours_in_consultant':
- val = 0.0
- cost = 0.0
- budgeted_hour_week = 0.0
- for rec in self.sale_line_employee_ids:
- val = val + rec.budgeted_qty
- cost = cost + rec.cost
- budgeted_hour_week = budgeted_hour_week + rec.budgeted_hour_week
- self.budgeted_hours = val
- self.cost = cost
- self.hourly_rate = (self.cost/self.budgeted_hours)
- self.budgeted_hour_week = budgeted_hour_week
+ @api.depends('sale_line_employee_ids')
+ def onchange_compute_values(self):
+ for record in self:
+ if record.project_type == 'hours_in_consultant':
+ val = 0.0
+ cost = 0.0
+ budgeted_hour_week = 0.0
+ for rec in record.sale_line_employee_ids:
+ val = val + rec.budgeted_qty
+ cost = cost + rec.cost
+ budgeted_hour_week = budgeted_hour_week + rec.budgeted_hour_week
+ record.budgeted_hours = val
+ record.cost = cost
+ if val > 0.0:
+ record.hourly_rate = (cost/val)
+ record.budgeted_hour_week = budgeted_hour_week
class InheritProjectProductEmployeeMap(models.Model):
@@ -68,7 +70,7 @@ class InheritProjectProductEmployeeMap(models.Model):
budgeted_uom = fields.Many2one('uom.uom', string='Budgeted UOM', related='sale_line_id.product_uom', readonly=True)
# budgeted_uom = fields.Many2one('uom.uom', string='Budgeted UOM', related='timesheet_product_id.uom_id', readonly=True)
timesheet_hour = fields.Float("Timesheet Hour", compute='_compute_timesheet_hour', default=0.0)
- budgeted_hour_week = fields.Float("Budgeted Hours per week ", compute='_compute_budgeted_hour_week')
+ budgeted_hour_week = fields.Float("Budgeted Hours per week", compute='_compute_budgeted_hour_week')
price_unit = fields.Float("Hourly rate", compute='_compute_price_unit', store=True, readonly=True)
sale_line_id = fields.Many2one('sale.order.line', "Service", domain=[('is_service', '=', True)])
cost = fields.Float("Cost", compute='_compute_total_cost')
diff --git a/cor_custom/views/project_view.xml b/cor_custom/views/project_view.xml
index 14ca10b..605c378 100755
--- a/cor_custom/views/project_view.xml
+++ b/cor_custom/views/project_view.xml
@@ -65,9 +65,11 @@
-
+ -->