From 2dc0a4c5f1a76d98622c7e1e3625380e985e2cfc Mon Sep 17 00:00:00 2001
From: "PAP(OpenERP)" <>
Date: Tue, 10 Aug 2010 16:02:59 +0530
Subject: [PATCH] [IMP] Project: Clean code and improvements on project related
modules
bzr revid: mra@mra-laptop-20100810103259-a12ooa602rpzw9nd
---
addons/project/__openerp__.py | 1 -
addons/project/project.py | 30 ++----
addons/project/project_report.xml | 6 --
addons/project/project_view.xml | 2 +-
addons/project/report/project_report.py | 2 +-
addons/project/report/project_report_view.xml | 6 +-
addons/project/wizard/project_close_task.py | 2 +-
.../project/wizard/project_task_delegate.py | 8 +-
.../project_long_term_view.xml | 3 +-
addons/project_messages/__openerp__.py | 2 +-
addons/project_messages/project_messages.py | 35 +++----
.../project_messages_view.xml | 97 +++++++++++++++++++
addons/project_mrp/project_procurement.py | 2 +-
addons/project_planning/__openerp__.py | 1 -
.../project_planning_view.xml | 4 +-
.../report_account_analytic.planning.csv | 10 --
addons/project_timesheet/project_timesheet.py | 2 +
.../project_timesheet/report/task_report.py | 2 +-
18 files changed, 137 insertions(+), 78 deletions(-)
delete mode 100644 addons/project/project_report.xml
create mode 100644 addons/project_messages/project_messages_view.xml
delete mode 100644 addons/project_planning/report_account_analytic.planning.csv
diff --git a/addons/project/__openerp__.py b/addons/project/__openerp__.py
index 3a6134b76ae..0fd8d3a0c04 100644
--- a/addons/project/__openerp__.py
+++ b/addons/project/__openerp__.py
@@ -42,7 +42,6 @@ work done on tasks, eso. It is able to render planning, order tasks, eso.
"security/ir.model.access.csv",
"project_data.xml",
"project_view.xml",
- "project_report.xml",
"process/task_process.xml",
"project_installer.xml",
"res_partner_view.xml",
diff --git a/addons/project/project.py b/addons/project/project.py
index 15c3f890f7b..195a6d37b8b 100644
--- a/addons/project/project.py
+++ b/addons/project/project.py
@@ -76,11 +76,11 @@ class project(osv.osv):
def get_all_child_projects(self, cr, uid, ids, context=None):
# Calculate child project for Given project id => For progress rate + planned time + Time spent
- cr.execute('''select prpc.id as id from account_analytic_account as p
- join account_analytic_account as c on p.id = c.parent_id
- join project_project as prp on prp.analytic_account_id = p.id
- join project_project as prpc on prpc.analytic_account_id = c.id
- where prp.id in %s''',(tuple(ids),))
+ cr.execute('''SELECT prpc.id AS id from account_analytic_account AS p
+ JOIN account_analytic_account AS c ON p.id = c.parent_id
+ JOIN project_project AS prp ON prp.analytic_account_id = p.id
+ JOIN project_project AS prpc ON prpc.analytic_account_id = c.id
+ WHERE prp.id IN %s''',(tuple(ids),))
child_ids = cr.fetchall()
if child_ids:
@@ -247,21 +247,6 @@ class project(osv.osv):
default['name'] = proj.name+_(' (copy)')
res = super(project, self).copy(cr, uid, id, default, context)
-# task_ids = task_obj.search(cr, uid, [('project_id','=', res), ('active','=',True)])
-# tasks = task_obj.browse(cr, uid, task_ids)
-# for task in tasks:
-# date_deadline = None
-# if task.date_start:
-# ds = date(*time.strptime(task.date_start,'%Y-%m-%d %H:%M:%S')[:3])
-# if task.date_deadline:
-# dd = date(*time.strptime(task.date_deadline,'%Y-%m-%d')[:3])
-# diff = dd-ds
-# date_deadline = (datetime.now()+diff).strftime('%Y-%m-%d %H:%M:%S')
-# task_obj.write(cr, uid, task.id, {'date_start': False,
-# 'date_end': False,
-# 'date_deadline':date_deadline,
-# })
-
return res
def duplicate_template(self, cr, uid, ids, context=None):
@@ -386,8 +371,9 @@ class task(osv.osv):
def copy_data(self, cr, uid, id, default={}, context=None):
default = default or {}
- default['work_ids'] = []
- default['remaining_hours'] = float(self.read(cr, uid, id, ['planned_hours'])['planned_hours'])
+ default.update({'work_ids':[], 'date_start': False, 'date_end': False, 'date_deadline': False})
+ if not default.get('remaining_hours', False):
+ default['remaining_hours'] = float(self.read(cr, uid, id, ['planned_hours'])['planned_hours'])
default['active'] = True
return super(task, self).copy_data(cr, uid, id, default, context)
diff --git a/addons/project/project_report.xml b/addons/project/project_report.xml
deleted file mode 100644
index 30816750035..00000000000
--- a/addons/project/project_report.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml
index 5e263f252f2..82b88716421 100644
--- a/addons/project/project_view.xml
+++ b/addons/project/project_view.xml
@@ -639,7 +639,7 @@ Issues like bugs in a system, client complain, materials breakdown are collected
- Messages
+ Project Messages
project.message
form
tree,form
diff --git a/addons/project/report/project_report.py b/addons/project/report/project_report.py
index bd1d12b7637..06ad777069e 100644
--- a/addons/project/report/project_report.py
+++ b/addons/project/report/project_report.py
@@ -55,7 +55,7 @@ class report_project_task_user(osv.osv):
'state': fields.selection([('draft', 'Draft'), ('open', 'In Progress'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')],'State', readonly=True),
'company_id': fields.many2one('res.company', 'Company', readonly=True, groups="base.group_multi_company"),
'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
- 'type': fields.many2one('project.task.type', 'Stage', readonly=True),
+ 'type_id': fields.many2one('project.task.type', 'Stage', readonly=True),
}
_order = 'name desc, project_id'
diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml
index 8d1dd450702..9db500d93ff 100644
--- a/addons/project/report/project_report_view.xml
+++ b/addons/project/report/project_report_view.xml
@@ -19,7 +19,7 @@
-
+
@@ -116,7 +116,7 @@
-
+
@@ -124,7 +124,7 @@
-
+
diff --git a/addons/project/wizard/project_close_task.py b/addons/project/wizard/project_close_task.py
index 78d18920abd..c82615e9e63 100644
--- a/addons/project/wizard/project_close_task.py
+++ b/addons/project/wizard/project_close_task.py
@@ -90,7 +90,7 @@ class project_close_task(osv.osv_memory):
if 'task_id' in context:
if context.get('send_manager', False) and not close_task.get('manager_email', False):
- raise osv.except_osv(_('Error'), _("Please specify the email address of Manager."))
+ raise osv.except_osv(_('Error'), _("Please specify the email address of Project Manager."))
elif context.get('send_partner', False) and not close_task.get('partner_email', False):
raise osv.except_osv(_('Error'), _("Please specify the email address of partner."))
diff --git a/addons/project/wizard/project_task_delegate.py b/addons/project/wizard/project_task_delegate.py
index cf4ccb80d29..6951a900008 100644
--- a/addons/project/wizard/project_task_delegate.py
+++ b/addons/project/wizard/project_task_delegate.py
@@ -43,7 +43,7 @@ class project_task_delegate(osv.osv_memory):
if 'active_id' in context:
task = self.pool.get('project.task').browse(cr, uid, context['active_id'])
if task.name.startswith(_('CHECK: ')):
- newname = task.name.strip(_('CHECK: '))
+ newname = str(task.name).replace(_('CHECK: '), '')
else:
newname = task.name or ''
return newname
@@ -63,10 +63,10 @@ class project_task_delegate(osv.osv_memory):
if 'active_id' in context:
task = self.pool.get('project.task').browse(cr, uid, context['active_id'])
if task.name.startswith(_('CHECK: ')):
- newname = task.name.strip(_('CHECK: '))
+ newname = str(task.name).replace(_('CHECK: '), '')
else:
newname = task.name or ''
- return _('CHECK: ')+ newname
+ return _('CHECK: ') + newname
return ''
def _get_new_desc(self, cr, uid, context=None):
@@ -129,7 +129,7 @@ class project_task_delegate(osv.osv_memory):
'planned_hours': delegate_data['planned_hours'],
'remaining_hours': delegate_data['planned_hours'],
'parent_ids': [(6, 0, [task.id])],
- 'state': 'open',
+ 'state': 'draft',
'description': delegate_data['new_task_description'] or '',
'child_ids': [],
'work_ids': []
diff --git a/addons/project_long_term/project_long_term_view.xml b/addons/project_long_term/project_long_term_view.xml
index 02f405131c6..b9122a72261 100644
--- a/addons/project_long_term/project_long_term_view.xml
+++ b/addons/project_long_term/project_long_term_view.xml
@@ -127,13 +127,14 @@
+