From 21b2edc61d38e7de4dcdff855c855bfc6b60d375 Mon Sep 17 00:00:00 2001 From: projectsodoo Date: Mon, 4 Jan 2021 22:21:58 +0530 Subject: [PATCH] Start and end time added --- cor_custom/models/project.py | 7 +++++++ cor_custom/views/project_view.xml | 2 ++ project_report/report/project_budget_hrs_analysis.py | 2 ++ 3 files changed, 11 insertions(+) diff --git a/cor_custom/models/project.py b/cor_custom/models/project.py index 22170af..cf101e6 100755 --- a/cor_custom/models/project.py +++ b/cor_custom/models/project.py @@ -38,6 +38,8 @@ class Project(models.Model): " them or by someone of their company.") allow_billable = fields.Boolean("Billable", default=True, help="Invoice your time and material from tasks.") + start_date = fields.Date(string='Start Date') + end_date = fields.Date(string='End Date') budgeted_hours = fields.Float(string='Total Budgeted Hours', digits=(16, 2)) budgeted_revenue = fields.Float(string='Budgeted Revenue', digits=(16, 2)) expenses_per = fields.Float(string='Expenses (%)', digits=(16, 2)) @@ -50,6 +52,11 @@ class Project(models.Model): profit_per = fields.Float(string='Porfit Percentage', digits=(16, 2), compute='_compute_calc', store=True) consultant_cost = fields.Float("Sum of Cost", compute='onchange_compute_values', store=True) + + _sql_constraints = [ + ('end_date_greater', 'check(end_date >= start_date)', 'Error ! Ending Date cannot be set before Beginning Date.') + ] + @api.onchange('budgeted_revenue', 'expenses_per') def onchange_expenses_per(self): if self.budgeted_revenue > 0 and self.expenses_per > 0: diff --git a/cor_custom/views/project_view.xml b/cor_custom/views/project_view.xml index 2ea00ad..2c11fdc 100755 --- a/cor_custom/views/project_view.xml +++ b/cor_custom/views/project_view.xml @@ -39,6 +39,8 @@ widget="radio"/> + + diff --git a/project_report/report/project_budget_hrs_analysis.py b/project_report/report/project_budget_hrs_analysis.py index b2ade6e..d24aa80 100755 --- a/project_report/report/project_budget_hrs_analysis.py +++ b/project_report/report/project_budget_hrs_analysis.py @@ -32,6 +32,8 @@ class BudgetHrsAnalysis(models.Model): Pro_emp.employee_id AS employee_id, 'Budgeted Hours' as hours_type, CASE + --WHEN Pro.project_type='hours_no_limit' THEN Pro.budgeted_hours + --WHEN Pro.project_type='hours_in_consultant' and Pro_emp.id is not null THEN Pro_emp.budgeted_qty WHEN Pro_emp.id is null THEN Pro.budgeted_hours ELSE Pro_emp.budgeted_qty END AS hours