update code for budgeted hour

This commit is contained in:
Pawan Kumar 2021-01-07 14:52:15 +05:30
parent 7eb4b1c6d9
commit a389daa5f5
2 changed files with 7 additions and 16 deletions

View File

@ -42,6 +42,7 @@ class Project(models.Model):
start_date = fields.Date(string='Start Date')
end_date = fields.Date(string='End Date')
budgeted_hours = fields.Float(string='Total Budgeted Hours', compute='_compute_consultant_timesheet_hours')
budgeted_hours2 = fields.Float(string='Total Budgeted Hours')
budgeted_revenue = fields.Float(string='Budgeted Revenue', digits=(16, 2))
expenses_per = fields.Float(string='Expenses (%)', digits=(16, 2))
expenses_amt = fields.Float(string='Expenses Amount', digits=(16, 2))
@ -65,7 +66,6 @@ class Project(models.Model):
employee_hour = fields.Float(string='Employee Hour')
def _compute_consultant_timesheet_hours(self):
print('222222222222')
for record in self:
consultant_cost = 0.0
hour = 0.0
@ -76,8 +76,10 @@ class Project(models.Model):
record.budgeted_hours = hour
total_exp = record.consultant_cost + record.expenses_amt
record.total_expenses = total_exp
if record.budgeted_hours > 0.0:
if record.project_type == 'hours_in_consultant' and record.budgeted_hours > 0.0:
record.hourly_rate = (record.budgeted_revenue / record.budgeted_hours)
if record.project_type == 'hours_no_limit' and record.budgeted_hours2 > 0.0:
record.hourly_rate = (record.budgeted_revenue / record.budgeted_hours2)
@api.depends('manager_per', 'hour_distribution')
def compute_percentage_hours(self):
@ -107,11 +109,7 @@ class Project(models.Model):
hour = 0.0
for rec in self.sale_line_employee_ids:
hour = hour + rec.budgeted_qty
print('TTTTTTTTTTTTTTT', hour, rec.budgeted_qty)
print('SSSSSSSSS', hour)
self.budgeted_hours = hour
print('TTTTTTTTTTTTTTT', hour)
print('UUUUUUUUUUU', self.budgeted_hours)
if self.budgeted_hours > 0.0:
self.hourly_rate = (self.budgeted_revenue / self.budgeted_hours)
@ -128,20 +126,13 @@ class Project(models.Model):
@api.depends('sale_line_employee_ids')
def onchange_compute_values(self):
for record in self:
# hour = 0.0
cost = 0.0
budgeted_hour_week = 0.0
for rec in record.sale_line_employee_ids:
# hour = hour + rec.budgeted_qty
cost = cost + rec.cost
budgeted_hour_week = budgeted_hour_week + rec.budgeted_hour_week
if record.project_type == 'hours_in_consultant':
record.cost = cost
# record.budgeted_hours = hour
# if hour > 0.0:
# record.hourly_rate = (cost / hour)
# else:
# record.cost = record.budgeted_hours * record.hourly_rate
record.budgeted_hour_week = budgeted_hour_week
@ -178,8 +169,6 @@ class InheritProjectProductEmployeeMap(models.Model):
else:
val.timesheet_hour = 0.0
val.consultant_cost = val.timesheet_hour * val.employee_price
# Run another method
# val.project_id.onchange_compute_values()
def _compute_budgeted_hour_week(self):
for val in self:

View File

@ -107,7 +107,9 @@
<field name="profit_per"/>
</group>
<group>
<field name="budgeted_hours"/>
<field name="budgeted_hours" attrs="{'invisible': [('project_type','!=','hours_in_consultant')]}"/>
<field name="budgeted_hours2" attrs="{'invisible': [('project_type','!=','hours_no_limit')],
'required': [('project_type','=','hours_no_limit')]}"/>
<field name="hourly_rate" readonly="1"/>
<field name="budgeted_hour_week"/>
</group>