Merge branch 'pawan_branch' into 'development'

compute some field values

See merge request prakash.jain/cor-odoo!42
This commit is contained in:
pawan.sharma 2020-12-30 05:45:47 -08:00
commit 43b543e059
2 changed files with 23 additions and 19 deletions

View File

@ -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')

View File

@ -65,9 +65,11 @@
<field name="company_id" invisible="1"/>
<field name="project_id" invisible="1"/>
<field name="employee_id" options="{'no_create': True}" string="Consultant Name"/>
<field name="sale_line_id" options="{'no_create': True}"
<!--<field name="sale_line_id" options="{'no_create': True}"
attrs="{'column_invisible': [('parent.sale_order_id', '=', False)]}"
domain="[('order_id','=',parent.sale_order_id), ('is_service', '=', True)]"/>
<field name="price_unit" widget="monetary" options="{'currency_field': 'currency_id'}"
attrs="{'readonly': [('parent.sale_order_id', '!=', False)]}"/>-->
<field name="price_unit" widget="monetary" options="{'currency_field': 'currency_id'}"
attrs="{'readonly': [('parent.sale_order_id', '!=', False)]}"/>
<field name="budgeted_qty"