summaryrefslogtreecommitdiff
path: root/addons/hr_timesheet/report/project_report.py
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/hr_timesheet/report/project_report.py
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/hr_timesheet/report/project_report.py')
-rw-r--r--addons/hr_timesheet/report/project_report.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/addons/hr_timesheet/report/project_report.py b/addons/hr_timesheet/report/project_report.py
new file mode 100644
index 00000000..85a5e433
--- /dev/null
+++ b/addons/hr_timesheet/report/project_report.py
@@ -0,0 +1,28 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import fields, models
+
+
+class ReportProjectTaskUser(models.Model):
+ _inherit = "report.project.task.user"
+
+ hours_planned = fields.Float('Planned Hours', readonly=True)
+ hours_effective = fields.Float('Effective Hours', readonly=True)
+ remaining_hours = fields.Float('Remaining Hours', readonly=True)
+ progress = fields.Float('Progress', group_operator='avg', readonly=True)
+
+ def _select(self):
+ return super(ReportProjectTaskUser, self)._select() + """,
+ progress as progress,
+ t.effective_hours as hours_effective,
+ t.planned_hours - t.effective_hours - t.subtask_effective_hours as remaining_hours,
+ planned_hours as hours_planned"""
+
+ def _group_by(self):
+ return super(ReportProjectTaskUser, self)._group_by() + """,
+ remaining_hours,
+ t.effective_hours,
+ progress,
+ planned_hours
+ """