clearcorp team mailing list archive
-
clearcorp team
-
Mailing list archive
-
Message #00631
[Merge] lp:~rr.clearcorp/openerp-ccorp-addons/6.1-project_reports into lp:openerp-ccorp-addons
Ronald Rubi has proposed merging lp:~rr.clearcorp/openerp-ccorp-addons/6.1-project_reports into lp:openerp-ccorp-addons.
Requested reviews:
CLEARCORP drivers (clearcorp-drivers)
For more details, see:
https://code.launchpad.net/~rr.clearcorp/openerp-ccorp-addons/6.1-project_reports/+merge/146965
Improve project_reports, add task ids and format
--
https://code.launchpad.net/~rr.clearcorp/openerp-ccorp-addons/6.1-project_reports/+merge/146965
Your team CLEARCORP development team is subscribed to branch lp:openerp-ccorp-addons.
=== modified file 'project_reports/__openerp__.py'
--- project_reports/__openerp__.py 2013-01-09 16:47:21 +0000
+++ project_reports/__openerp__.py 2013-02-06 21:29:27 +0000
@@ -20,7 +20,7 @@
#
##############################################################################
{
- 'name': 'Project Report',
+ 'name': 'Project Reports',
'version': '1.0',
'url': 'http://launchpad.net/openerp-ccorp-addons',
'author': 'ClearCorp S.A.',
@@ -29,9 +29,7 @@
'complexity': 'normal',
'description': """This module adds project reports
""",
- 'depends': [
- 'project',
- ],
+ 'depends': ['project_extended',],
'init_xml': [],
'demo_xml': [],
'update_xml': [
=== modified file 'project_reports/report/project_report.mako'
--- project_reports/report/project_report.mako 2013-01-09 16:47:21 +0000
+++ project_reports/report/project_report.mako 2013-02-06 21:29:27 +0000
@@ -42,7 +42,8 @@
setLang(user.context_lang)
start_date = data['form']['date_from']
end_date = data['form']['date_to']
- project_task_works = get_project_task_works_by_dates(cr, uid, start_date, end_date)
+ project_ids = data['form']['project_ids']
+ project_task_works = get_project_task_works_by_dates(cr, uid, start_date, end_date, project_ids)
project_tasks = get_project_tasks(cr, uid, project_task_works)
projects = get_projects(cr, uid, project_tasks)
user_hours_total = get_user_hours(cr, uid, project_task_works)
@@ -57,45 +58,53 @@
%for project in projects:
<br></br>
<% total_hours_project = 0.00 %>
- <div style="font-size: 16px; font-weight: bold; text-align: left;">${project.complete_name or ' '}</div>
+ <div style="font-size: 16px; font-weight: bold; text-align: left;">${project.shortcut_name or ' '}</div>
%for project_task in project_tasks:
<% total_hours_project_task = 0.00 %>
%if project_task.project_id.id == project.id:
<div class="act_as_table list_table">
<div class="act_as_thead">
<div class="act_as_row labels" style="font-weight: bold; font-size: 11x;">
- <div class="act_as_cell first_column" style="vertical-align: middle; text-align:center;">${_('Task Summary')}</div>
+ <div class="act_as_cell first_column" style="width:40px; vertical-align: middle; text-align:center;">${_('ID Task')}</div>
+ <div class="act_as_cell" style="vertical-align: middle; text-align:center;">${_('Task Summary')}</div>
<div class="act_as_cell amount" style="vertical-align: middle; text-align:center;">${_('Description')}</div>
</div>
</div>
<div class="act_as_tbody">
<div class="act_as_row lines">
- <div class="act_as_cell">${project_task.name or ' '}</div>
- <div class="act_as_cell">${project_task.description or ' '}</div>
+ <div class="act_as_cell" style="width:40px; text-align:center;">${project_task.id_task or ' '}</div>
+ <div class="act_as_cell" style="text-align:center;">${project_task.name or ' '}</div>
+ <div class="act_as_cell" style="text-align:justify;">${project_task.description or ' '}</div>
</div>
</div>
</div>
- <div class="act_as_table data_table " style="width: 500px; margin-left:auto; margin-right:auto;">
+ <div class="act_as_table data_table " style="width: 650px; margin-left:auto; margin-right:auto;">
<div class="act_as_thead" style="align:center">
<div class="act_as_row lines">
<div class="act_as_cell" style="text-align:center;"><b>${_('Work Summary ')}</b></div>
- <div class="act_as_cell" style="text-align:center;"><b>${_('Time Spent')}</b></div>
- <div class="act_as_cell" style="text-align:center;"><b>${_('Done by')}</b></div>
+ <div class="act_as_cell" style="width:70px; text-align:center;"><b>${_('Date')}</b></div>
+ <div class="act_as_cell" style="width:80px; text-align:center;"><b>${_('Time Spent')}</b></div>
+ <div class="act_as_cell" style="width:120px; text-align:center;"><b>${_('Done by')}</b></div>
</div>
</div>
<div class="act_as_tbody">
%for project_task_work in project_task.work_ids:
%if project_task_work in project_task_works:
<div class="act_as_row lines">
- <div class="act_as_cell"style="text-align:center;">${project_task_work.name or ' '}</div>
+ <div class="act_as_cell" style="text-align:justify;">${project_task_work.name or ' '}</div>
<%
+ datetime_project_task_work = project_task_work.date
+ date_project_task_work_list = datetime_project_task_work.split(' ')
+ date_project_task_work = date_project_task_work_list[0]
+
hours_project_task_work = round(project_task_work.hours, 2)
total_hours_project_task = total_hours_project_task + project_task_work.hours
user_hours_project[project_task_work.user_id.name] = user_hours_project[project_task_work.user_id.name] + project_task_work.hours
user_hours_total[project_task_work.user_id.name] = user_hours_total[project_task_work.user_id.name] + project_task_work.hours
%>
- <div class="act_as_cell"style="text-align:center;">${hours_project_task_work or ' '}</div>
- <div class="act_as_cell"style="text-align:center;">${project_task_work.user_id.name or ' '}</div>
+ <div class="act_as_cell" style="width:70px; text-align:center;">${date_project_task_work or ' '}</div>
+ <div class="act_as_cell" style="width:80px; text-align:center;">${hours_project_task_work or ' '}</div>
+ <div class="act_as_cell" style="width:120px; text-align:center;">${project_task_work.user_id.name or ' '}</div>
</div>
%endif
%endfor
=== modified file 'project_reports/report/project_report.py'
--- project_reports/report/project_report.py 2013-01-09 16:47:21 +0000
+++ project_reports/report/project_report.py 2013-02-06 21:29:27 +0000
@@ -42,9 +42,15 @@
'get_user_hours': self.get_user_hours,
})
- def get_project_task_works_by_dates(self, cr, uid, start_date, end_date):
+ def get_project_task_works_by_dates(self, cr, uid, start_date, end_date, project_ids=[]):
project_task_work_obj = self.pool.get('project.task.work')
- project_task_work_ids = project_task_work_obj.search(cr, uid, [('date','>=',start_date), ('date','<=',end_date)])
+
+ project_task_work_ids = []
+ if project_ids == []:
+ project_task_work_ids = project_task_work_obj.search(cr, uid, [('date','>=',start_date), ('date','<=',end_date)])
+ else:
+ project_task_work_ids = project_task_work_obj.search(cr, uid, [('date','>=',start_date), ('date','<=',end_date), ('project', 'in', project_ids)])
+
project_task_works = project_task_work_obj.browse(cr, uid, project_task_work_ids)
return project_task_works
=== modified file 'project_reports/wizard/project_report_wizard.py'
--- project_reports/wizard/project_report_wizard.py 2013-01-09 16:47:21 +0000
+++ project_reports/wizard/project_report_wizard.py 2013-02-06 21:29:27 +0000
@@ -22,11 +22,24 @@
from osv import osv, fields
-class project_report_wizard (osv.osv_memory):
+class Project(osv.osv):
+ _inherit = "project.project"
+ _columns = {
+ 'wizard_id' : fields.many2one('project.report.wizard', 'Wizard'),
+ }
+
+class ProjectWork(osv.osv):
+ _inherit = "project.task.work"
+ _columns = {
+ 'project': fields.related('task_id', 'project_id', type='many2one', relation='project.project', string='Project', store=False, readonly=True)
+ }
+
+class project_report_wizard (osv.osv):
_name = 'project.report.wizard'
_columns = {
'date_from' : fields.date('Start Date', required=True),
'date_to' : fields.date('End Date', required=True),
+ 'project_ids' : fields.one2many('project.project', 'wizard_id', 'Projects'),
}
@@ -44,7 +57,7 @@
datas = {}
datas['ids'] = context.get('active_ids', [])
datas['model'] = context.get('active_model', 'ir.ui.menu')
- datas['form'] = self.read(cr, uid, ids, ['date_from', 'date_to'], context=context)[0]
+ datas['form'] = self.read(cr, uid, ids, ['date_from', 'date_to', 'project_ids'], context=context)[0]
return self._print_report(cr, uid, ids, datas, context=context)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== modified file 'project_reports/wizard/project_report_wizard.xml'
--- project_reports/wizard/project_report_wizard.xml 2013-01-09 16:47:21 +0000
+++ project_reports/wizard/project_report_wizard.xml 2013-02-06 21:29:27 +0000
@@ -11,7 +11,14 @@
<form string="Project Report">
<separator string="Dates" colspan="4"/>
<field name="date_from" />
- <field name="date_to" />
+ <field name="date_to" />
+ <newline/>
+ <separator string="Projects" colspan="4" />
+ <field name="project_ids" nolabel="1" colspan="4" widget="many2many">
+ <tree string="Projects" editable="top">
+ <field name="shortcut_name" />
+ </tree>
+ </field>
<newline/>
<label/>
<newline/>
Follow ups