From 3bf49a28294fafec66fdd556f3a9532b1668493b Mon Sep 17 00:00:00 2001 From: prakash Date: Tue, 9 Nov 2021 19:58:54 +0530 Subject: [PATCH 1/3] Report order by enddatetime added --- project_report/report/project_timesheet_report.py | 12 +++++++++--- .../report/project_timesheet_report_views.xml | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/project_report/report/project_timesheet_report.py b/project_report/report/project_timesheet_report.py index 5987a6f..f9367c9 100755 --- a/project_report/report/project_timesheet_report.py +++ b/project_report/report/project_timesheet_report.py @@ -10,11 +10,12 @@ class ProjectTimelineReport(models.Model): _name = "project.timesheet.report" _description = "Project Timesheet Report" #_order = 'start_date desc, duration, project_id desc' - _order = 'start_datetime desc, duration, project_id desc' + _order = 'start_datetime desc, end_datetime asc' _auto = False start_date = fields.Date(string='Start Time', readonly=True) start_datetime = fields.Datetime("Start DateTime", required=True) + end_datetime = fields.Datetime("End DateTime", required=True) employee_id = fields.Many2one('hr.employee', string='Employee', readonly=True) project_id = fields.Many2one('project.project', string='Project', readonly=True) sub_project = fields.Many2one('project.project', string='Sub Project', readonly=True) @@ -32,8 +33,12 @@ class ProjectTimelineReport(models.Model): @api.model def search_read(self, domain=None, fields=None, offset=0,limit=None, order=None): - if order and isinstance(order, str): - order = order.replace("timestamp ", "start_datetime ") + if order and isinstance(order, str) and order=='timestamp ASC': + #order = order.replace("timestamp ", "start_datetime ") + order = "start_datetime asc, end_datetime asc" + if order and isinstance(order, str) and order=='timestamp DESC': + #order = order.replace("timestamp ", "start_datetime ") + order = "start_datetime desc, end_datetime asc" res = super(ProjectTimelineReport, self).search_read(domain, fields, offset, limit, order) return res @@ -82,6 +87,7 @@ class ProjectTimelineReport(models.Model): ROW_NUMBER() OVER() as id, aal.start_datetime::date as start_date, aal.start_datetime as start_datetime, + aal.end_datetime as end_datetime, aal.employee_id, aal.project_id, aal.sub_project, diff --git a/project_report/report/project_timesheet_report_views.xml b/project_report/report/project_timesheet_report_views.xml index 5682060..19d340a 100755 --- a/project_report/report/project_timesheet_report_views.xml +++ b/project_report/report/project_timesheet_report_views.xml @@ -16,6 +16,7 @@ + From f892621326dd6755bf2cac3489650323f7197e9c Mon Sep 17 00:00:00 2001 From: prakash Date: Tue, 16 Nov 2021 12:04:00 +0530 Subject: [PATCH 2/3] Report export default date format updated --- project_report/report/project_timesheet_report.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/project_report/report/project_timesheet_report.py b/project_report/report/project_timesheet_report.py index 8cbbc50..c2a4d8a 100755 --- a/project_report/report/project_timesheet_report.py +++ b/project_report/report/project_timesheet_report.py @@ -48,11 +48,11 @@ class ProjectTimesheetReport(models.Model): fields_name = dict(zip(fields, index)) res = super(ProjectTimesheetReport, self).export_data(fields) for index, val in enumerate(res['datas']): - if fields_name.get('start_date') is not None: + """if fields_name.get('start_date') is not None: tdateindex = fields_name.get('start_date') tdate = res['datas'][index][tdateindex] if tdate: - res['datas'][index][tdateindex] = datetime.strftime(tdate, "%d/%m/%Y") + res['datas'][index][tdateindex] = datetime.strftime(tdate, "%d/%m/%Y")""" if fields_name.get('task_id') is not None: taskindex = fields_name.get('task_id') ttask = res['datas'][index][taskindex] From bd0b6344c5a78152a34cc22be220de80b9bc4d08 Mon Sep 17 00:00:00 2001 From: prakash Date: Wed, 17 Nov 2021 17:38:40 +0530 Subject: [PATCH 3/3] Report start and end time added --- project_report/report/project_timesheet_report.py | 6 +++++- project_report/report/project_timesheet_report_views.xml | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/project_report/report/project_timesheet_report.py b/project_report/report/project_timesheet_report.py index c2a4d8a..29acf75 100755 --- a/project_report/report/project_timesheet_report.py +++ b/project_report/report/project_timesheet_report.py @@ -13,7 +13,9 @@ class ProjectTimesheetReport(models.Model): _order = 'start_datetime desc, end_datetime asc' _auto = False - start_date = fields.Date(string='Start Time', readonly=True) + start_date = fields.Date(string='Start Date', readonly=True) + start_time = fields.Char(string='Start Time', readonly=True) + end_time = fields.Char(string='End Time', readonly=True) start_datetime = fields.Datetime("Start DateTime", required=True) end_datetime = fields.Datetime("End DateTime", required=True) employee_id = fields.Many2one('hr.employee', string='Employee', readonly=True) @@ -86,6 +88,8 @@ class ProjectTimesheetReport(models.Model): SELECT ROW_NUMBER() OVER() as id, aal.start_datetime::date as start_date, + to_char(start_datetime at time zone 'utc' at time zone 'Asia/Jerusalem', 'HH24:MI') as start_time, + to_char(end_datetime at time zone 'utc' at time zone 'Asia/Jerusalem', 'HH24:MI') as end_time, aal.start_datetime as start_datetime, aal.end_datetime as end_datetime, aal.employee_id, diff --git a/project_report/report/project_timesheet_report_views.xml b/project_report/report/project_timesheet_report_views.xml index 19d340a..4217c81 100755 --- a/project_report/report/project_timesheet_report_views.xml +++ b/project_report/report/project_timesheet_report_views.xml @@ -14,6 +14,8 @@ + +