Merge lp:~openerp-community/openobject-addons/fix_726185_trunk into lp:openobject-addons/6.1

Proposed by Lorenzo Battistini
Status: Needs review
Proposed branch: lp:~openerp-community/openobject-addons/fix_726185_trunk
Merge into: lp:openobject-addons/6.1
Diff against target: 82 lines (+23/-2)
4 files modified
project/project.py (+5/-0)
project_long_term/project_long_term.py (+13/-0)
project_long_term/wizard/project_compute_phases.py (+4/-1)
project_long_term/wizard/project_compute_phases_view.xml (+1/-1)
To merge this branch: bzr merge lp:~openerp-community/openobject-addons/fix_726185_trunk
Reviewer Review Type Date Requested Status
OpenERP Core Team Pending
Review via email: mp+95856@code.launchpad.net
To post a comment you must log in.

Unmerged revisions

6384. By Lorenzo Battistini

[IMP] considering priorities in tasks scheduling

6383. By Lorenzo Battistini

[MERGE] fix_726185_trunk

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'project/project.py'
2--- project/project.py 2012-02-15 14:51:12 +0000
3+++ project/project.py 2012-03-05 07:56:26 +0000
4@@ -1082,6 +1082,11 @@
5 %s resource = %s
6 ''' % (ident, 'User_'+str(task.user_id.id))
7
8+ # http://faces.homeip.net/doc/node66.html
9+ priority = 500 + (50 - 10 * int(task.priority))
10+ result += '''%s priority = %s
11+''' % (ident, str(priority))
12+
13 result += "\n"
14 return result
15
16
17=== modified file 'project_long_term/project_long_term.py'
18--- project_long_term/project_long_term.py 2012-01-31 13:36:57 +0000
19+++ project_long_term/project_long_term.py 2012-03-05 07:56:26 +0000
20@@ -222,6 +222,8 @@
21 context = context or {}
22 if type(ids) in (long, int,):
23 ids = [ids]
24+ task_pool = self.pool.get('project.task')
25+ resource_pool = self.pool.get('resource.resource')
26 projects = self.browse(cr, uid, ids, context=context)
27 result = self._schedule_header(cr, uid, ids, context=context)
28 for project in projects:
29@@ -256,6 +258,17 @@
30 'date_start': p.start.strftime('%Y-%m-%d %H:%M:%S'),
31 'date_end': p.end.strftime('%Y-%m-%d %H:%M:%S')
32 }, context=context)
33+
34+ if phase.task_ids:
35+ for task in phase.task_ids:
36+ if task.state != 'done' and task.state != 'cancelled':
37+ vals = {}
38+ #Getting values of the Tasks
39+ temp = eval("p.Task_%s"%task.id)
40+ vals.update({'date_start' : temp.start.strftime('%Y-%m-%d %H:%M:%S')})
41+ vals.update({'date_end' : temp.end.strftime('%Y-%m-%d %H:%M:%S')})
42+ task_pool.write(cr, uid, task.id, vals, context=context)
43+
44 return True
45 project()
46
47
48=== modified file 'project_long_term/wizard/project_compute_phases.py'
49--- project_long_term/wizard/project_compute_phases.py 2011-12-19 16:54:40 +0000
50+++ project_long_term/wizard/project_compute_phases.py 2012-03-05 07:56:26 +0000
51@@ -26,7 +26,8 @@
52 _description = 'Project Compute Phases'
53 _columns = {
54 'target_project': fields.selection([
55- ('all', 'Compute All My Projects'),
56+ ('all', 'Compute All Projects'),
57+ ('my', 'Compute All My Projects'),
58 ('one', 'Compute a Single Project'),
59 ], 'Schedule', required=True),
60 'project_id': fields.many2one('project.project', 'Project')
61@@ -49,6 +50,8 @@
62
63 if data['target_project'] == 'one':
64 project_ids = [data['project_id'][0]]
65+ elif data['target_project'] == 'all':
66+ project_ids = project_pool.search(cr, uid, [('state', '!=', 'template')], context=context)
67 else:
68 project_ids = project_pool.search(cr, uid, [('user_id','=',uid)], context=context)
69
70
71=== modified file 'project_long_term/wizard/project_compute_phases_view.xml'
72--- project_long_term/wizard/project_compute_phases_view.xml 2011-10-27 21:11:24 +0000
73+++ project_long_term/wizard/project_compute_phases_view.xml 2012-03-05 07:56:26 +0000
74@@ -11,7 +11,7 @@
75 <group colspan="4" col="4">
76 <separator colspan="4" string="Schedule Phases" />
77 <field name="target_project" colspan="4"/>
78- <field name="project_id" colspan="4" attrs="{'invisible':[('target_project','=','all')], 'required':[('target_project','!=','all')]}"/>
79+ <field name="project_id" colspan="4" attrs="{'invisible':['|',('target_project','=','all'),('target_project','=','my')], 'required':[('target_project','!=','all'),('target_project','!=','my')]}"/>
80 <separator colspan="4"/>
81 <group colspan="2" col="2">
82 </group>