From cee6d6d58cc287777b952060e04454c513495c09 Mon Sep 17 00:00:00 2001
From: "nel@tinyerp.com" <>
Date: Wed, 14 Apr 2010 23:07:54 +0200
Subject: [PATCH] [IMP] graph of timesheets by month
bzr revid: nel@tinyerp.com-20100414210754-pyzv0fl3ghoftz9g
---
addons/board_hr/board_hr_view.xml | 3 +-
.../hr_holidays/report/hr_holidays_report.py | 7 ++--
.../report/hr_holidays_report_view.xml | 3 ++
.../report/timesheet_report.py | 36 +++++++++++--------
.../report/timesheet_report_view.xml | 14 +++++---
addons/project/project_view.xml | 8 +++--
addons/project/report/project_report_view.xml | 2 +-
7 files changed, 48 insertions(+), 25 deletions(-)
diff --git a/addons/board_hr/board_hr_view.xml b/addons/board_hr/board_hr_view.xml
index ed27a93a326..968aafd8efc 100644
--- a/addons/board_hr/board_hr_view.xml
+++ b/addons/board_hr/board_hr_view.xml
@@ -31,6 +31,7 @@
hr.holidays
form
tree,form
+ [('user_id','=',uid)]
@@ -39,7 +40,7 @@
timesheet.report
form
graph,tree
- [('user_id','=',uid)]
+ [('user_id','=',uid), ('month', '=' , time.strftime('%m')), ('year', '=', time.strftime('%Y'))]
diff --git a/addons/hr_holidays/report/hr_holidays_report.py b/addons/hr_holidays/report/hr_holidays_report.py
index a9ad1e0b161..435eee71ea5 100644
--- a/addons/hr_holidays/report/hr_holidays_report.py
+++ b/addons/hr_holidays/report/hr_holidays_report.py
@@ -90,7 +90,7 @@ class hr_holidays_remaining_leaves_user(osv.osv):
min(hrs.id) as id,
rr.name as name,
sum(hrs.number_of_days) as no_of_leaves,
- hrs.user_id,
+ rr.user_id as user_id,
hhs.name as leave_type
from
hr_holidays as hrs, hr_employee as hre,
@@ -98,9 +98,10 @@ class hr_holidays_remaining_leaves_user(osv.osv):
where
hrs.employee_id = hre.id and
hre.resource_id = rr.id and
- hhs.id = hrs.holiday_status_id
+ hhs.id = hrs.holiday_status_id
group by
- rr.name,hrs.user_id,hhs.name
+ rr.name,rr.user_id,hhs.name
)
""")
+
hr_holidays_remaining_leaves_user()
diff --git a/addons/hr_holidays/report/hr_holidays_report_view.xml b/addons/hr_holidays/report/hr_holidays_report_view.xml
index f0d33bc7b98..56652cd1f99 100644
--- a/addons/hr_holidays/report/hr_holidays_report_view.xml
+++ b/addons/hr_holidays/report/hr_holidays_report_view.xml
@@ -115,5 +115,8 @@
+
diff --git a/addons/hr_timesheet_sheet/report/timesheet_report.py b/addons/hr_timesheet_sheet/report/timesheet_report.py
index a299f099f80..cd657e763ad 100644
--- a/addons/hr_timesheet_sheet/report/timesheet_report.py
+++ b/addons/hr_timesheet_sheet/report/timesheet_report.py
@@ -31,23 +31,31 @@ class timesheet_report(osv.osv):
('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
'no_of_timesheet': fields.integer('Total Timesheet',readonly=True),
+ 'total_att': fields.float('Total Attendance'),
+ 'total_ts': fields.float('Total Timesheet'),
+ 'year': fields.char('Remaining leaves', size=4),
+ 'name': fields.char('Name', size=64),
+ 'user_id': fields.many2one('res.users','User'),
+ 'leave_type': fields.char('Leave Type',size=64),
+ 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
}
def init(self, cr):
tools.drop_view_if_exists(cr, 'timesheet_report')
cr.execute("""
create or replace view timesheet_report as (
- select
- min(id) as id,
- to_char(create_date, 'MM') as month,
- user_id,
- count(*) as no_of_timesheet
- from
- hr_timesheet_sheet_sheet
- where
- to_char(create_date,'YYYY') = to_char(current_date,'YYYY')
- group by
- to_char(create_date,'MM'),user_id
- )
- """)
-timesheet_report()
\ No newline at end of file
+ SELECT sheet.name as name,
+ min(sheet.id) as id,
+ to_char(sheet.date_current, 'YYYY') as year,
+ to_char(sheet.date_current, 'MM') as month,
+ sum(day.total_attendance) as total_att,
+ sum(day.total_timesheet) as total_ts,
+ sheet.user_id as user_id
+ FROM hr_timesheet_sheet_sheet AS sheet
+ LEFT JOIN hr_timesheet_sheet_sheet_day AS day
+ ON (sheet.id = day.sheet_id)
+ GROUP BY sheet.name, year, month, user_id
+ ) """)
+
+timesheet_report()
diff --git a/addons/hr_timesheet_sheet/report/timesheet_report_view.xml b/addons/hr_timesheet_sheet/report/timesheet_report_view.xml
index d557c094e5d..6afd15d2e09 100644
--- a/addons/hr_timesheet_sheet/report/timesheet_report_view.xml
+++ b/addons/hr_timesheet_sheet/report/timesheet_report_view.xml
@@ -8,8 +8,11 @@
tree
+
+
+
+
-
@@ -20,8 +23,11 @@
graph
-
-
+
+
+
+
+
@@ -29,4 +35,4 @@
-
\ No newline at end of file
+
diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml
index 87c15225a42..4da4cbb91f7 100644
--- a/addons/project/project_view.xml
+++ b/addons/project/project_view.xml
@@ -123,7 +123,8 @@
-
+
+
@@ -156,6 +157,7 @@
[]
+ {'search_default_Users':1}
@@ -422,7 +424,7 @@
-
+
@@ -443,6 +445,8 @@
+ {'search_default_user_id': 1}
+
diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml
index 8917837530d..c5ebec4fb88 100644
--- a/addons/project/report/project_report_view.xml
+++ b/addons/project/report/project_report_view.xml
@@ -68,7 +68,7 @@
-
+