summaryrefslogtreecommitdiff
path: root/addons/project_long_term/wizard
diff options
context:
space:
mode:
authorMustufa Rangwala <mra@mra-laptop>2010-07-02 20:15:03 +0530
committerMustufa Rangwala <mra@mra-laptop>2010-07-02 20:15:03 +0530
commit2d63bd763496a9b7399d02ca2a4e1e9790442fcb (patch)
treea8f1655a658bed949f044c723e43b952d812222b /addons/project_long_term/wizard
parent8c8a9c4b92b7901d2871e3a50decca9689c0c96e (diff)
parentdb470305838faecdf26e5535b890b86f7aab2931 (diff)
[MERGE] Merge Team3 work from addons3 branch
bzr revid: mra@mra-laptop-20100702144503-0yynbrlkxn0v76lt
Diffstat (limited to 'addons/project_long_term/wizard')
-rw-r--r--addons/project_long_term/wizard/__init__.py1
-rw-r--r--addons/project_long_term/wizard/project_compute_phases.py5
-rw-r--r--addons/project_long_term/wizard/project_compute_phases_view.xml32
-rw-r--r--addons/project_long_term/wizard/project_compute_tasks.py4
-rw-r--r--addons/project_long_term/wizard/project_compute_tasks_view.xml2
-rw-r--r--addons/project_long_term/wizard/project_schedule_tasks.py6
-rw-r--r--addons/project_long_term/wizard/project_schedule_tasks_view.xml4
-rw-r--r--addons/project_long_term/wizard/working_calendar.py21
8 files changed, 45 insertions, 30 deletions
diff --git a/addons/project_long_term/wizard/__init__.py b/addons/project_long_term/wizard/__init__.py
index fb8a29449f7..5056cad3b77 100644
--- a/addons/project_long_term/wizard/__init__.py
+++ b/addons/project_long_term/wizard/__init__.py
@@ -25,4 +25,3 @@ import project_schedule_tasks
import working_calendar
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/project_long_term/wizard/project_compute_phases.py b/addons/project_long_term/wizard/project_compute_phases.py
index ce2e2c0bbb1..3b4ac2d7b23 100644
--- a/addons/project_long_term/wizard/project_compute_phases.py
+++ b/addons/project_long_term/wizard/project_compute_phases.py
@@ -18,6 +18,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
+
import datetime
from resource.faces import *
from new import classobj
@@ -48,6 +49,8 @@ class project_compute_phases(osv.osv_memory):
return self.compute_date(cr, uid, ids, context=context)
def _phase_schedule(self, cr, uid, phase, start_date, calendar_id=False, context=None):
+ if context is None:
+ context = {}
"""Schedule phase with the start date till all the next phases are completed.
Arguements: start_dsate -- start date for the phase
@@ -118,7 +121,7 @@ class project_compute_phases(osv.osv_memory):
context=ctx)
# Recursive call till all the next phases scheduled
for phase in phase.next_phase_ids:
- if phase.state in ['draft','open','pending']:
+ if phase.state in ['draft', 'open', 'pending']:
id_cal = phase.project_id.resource_calendar_id and phase.project_id.resource_calendar_id.id or False
self._phase_schedule(cr, uid, phase, date_start, id_cal, context=context)
else:
diff --git a/addons/project_long_term/wizard/project_compute_phases_view.xml b/addons/project_long_term/wizard/project_compute_phases_view.xml
index 6bbb01ca7e4..8a9ce15e772 100644
--- a/addons/project_long_term/wizard/project_compute_phases_view.xml
+++ b/addons/project_long_term/wizard/project_compute_phases_view.xml
@@ -9,20 +9,20 @@
<field name="arch" type="xml">
<form string="Compute Scheduling of Phases">
<group width="380" height="180">
- <group colspan="4" col="4">
- <label colspan="4" string="This wizard will schedule phases for all or specified project" />
- <newline />
- <field name="target_project" colspan="4"/>
- </group>
- <newline />
- <group colspan="4" col="6" attrs="{'invisible':[('target_project','=','all')]}">
- <field name="project_id"/>
- </group>
- <separator colspan="4"/>
- <group colspan="4" col="6"> <!-- Improve me -->
- <button icon="gtk-cancel" special="cancel" string="_Cancel"/>
- <button icon="gtk-ok" name="check_selection" string="_Compute" type="object"/>
- </group>
+ <group colspan="4" col="4">
+ <label colspan="4" string="This wizard will schedule phases for all or specified project" />
+ <newline />
+ <field name="target_project" colspan="4"/>
+ </group>
+ <newline />
+ <group colspan="4" col="6" attrs="{'invisible':[('target_project','=','all')]}">
+ <field name="project_id"/>
+ </group>
+ <separator colspan="4"/>
+ <group colspan="4" col="6"> <!-- Improve me -->
+ <button icon="gtk-cancel" special="cancel" string="_Cancel"/>
+ <button icon="gtk-ok" name="check_selection" string="_Compute" type="object"/>
+ </group>
</group>
</form>
</field>
@@ -35,7 +35,7 @@
<field name="view_type">form</field>
<field name="view_mode">form</field>
<field name="view_id" ref="view_project_compute_phases_select"/>
- <field name="context">{'record_id' : active_id}</field>
+ <field name="context">{'record_id': active_id}</field>
<field name="target">new</field>
</record>
@@ -43,4 +43,4 @@
parent="menu_phase_schedule" action="action_project_compute_phases"/>
</data>
-</openerp> \ No newline at end of file
+</openerp>
diff --git a/addons/project_long_term/wizard/project_compute_tasks.py b/addons/project_long_term/wizard/project_compute_tasks.py
index bd569abf90e..f7f1c9dc613 100644
--- a/addons/project_long_term/wizard/project_compute_tasks.py
+++ b/addons/project_long_term/wizard/project_compute_tasks.py
@@ -69,7 +69,7 @@ class project_compute_tasks(osv.osv_memory):
resource_id = resource_obj.search(cr, uid, [('user_id', '=', user.id)], context=context)
if resource_id:
# resource = resource_obj.browse(cr, uid, resource_id, context=context)[0]
- resource = resource_obj.read(cr, uid, resource_id, ['calendar_id','time_efficiency'], context=context)[0]
+ resource = resource_obj.read(cr, uid, resource_id, ['calendar_id', 'time_efficiency'], context=context)[0]
if resource.get('calendar_id', False):
leaves = wkcal.compute_leaves(cr, uid, calendar_id , resource_id[0], resource['calendar_id'] and resource['calendar_id'][0] or False)
time_efficiency = resource.get('time_efficiency')
@@ -126,7 +126,7 @@ class project_compute_tasks(osv.osv_memory):
s_date = t.start.to_datetime()
e_date = t.end.to_datetime()
if loop_no == 0:
- project_obj.write(cr, uid, [project_id], {'date' : e_date}, context=context)
+ project_obj.write(cr, uid, [project_id], {'date': e_date}, context=context)
else:
ctx = context.copy()
ctx.update({'scheduler': True})
diff --git a/addons/project_long_term/wizard/project_compute_tasks_view.xml b/addons/project_long_term/wizard/project_compute_tasks_view.xml
index eff475b4f11..bf6fe379048 100644
--- a/addons/project_long_term/wizard/project_compute_tasks_view.xml
+++ b/addons/project_long_term/wizard/project_compute_tasks_view.xml
@@ -34,4 +34,4 @@
parent="menu_phase_schedule" action="action_project_compute_tasks"/>
</data>
-</openerp> \ No newline at end of file
+</openerp>
diff --git a/addons/project_long_term/wizard/project_schedule_tasks.py b/addons/project_long_term/wizard/project_schedule_tasks.py
index 78ad2166698..f0ad7c51dae 100644
--- a/addons/project_long_term/wizard/project_schedule_tasks.py
+++ b/addons/project_long_term/wizard/project_schedule_tasks.py
@@ -40,6 +40,8 @@ class project_schedule_task(osv.osv_memory):
}
def default_get(self, cr, uid, fields_list, context=None):
+ if context is None:
+ context = {}
res = super(project_schedule_task, self).default_get(cr, uid, fields_list, context)
self.compute_date(cr, uid, context=context)
return res
@@ -70,6 +72,8 @@ class project_schedule_task(osv.osv_memory):
return resource_objs
def compute_date(self, cr, uid, context=None):
+ if context is None:
+ context = {}
"""
Schedule the tasks according to resource available and priority.
"""
@@ -152,7 +156,7 @@ class project_schedule_task(osv.osv_memory):
'date_end': e_date.strftime('%Y-%m-%d %H:%M:%S'),
'user_id': user_id[0]},
context=ctx)
- loop_no +=1
+ loop_no += 1
return {}
project_schedule_task()
diff --git a/addons/project_long_term/wizard/project_schedule_tasks_view.xml b/addons/project_long_term/wizard/project_schedule_tasks_view.xml
index b62a3c107d9..f8e2f2d828b 100644
--- a/addons/project_long_term/wizard/project_schedule_tasks_view.xml
+++ b/addons/project_long_term/wizard/project_schedule_tasks_view.xml
@@ -25,9 +25,9 @@
<field name="view_type">form</field>
<field name="view_mode">form</field>
<field name="view_id" ref="view_project_schedule_tasks"/>
- <field name="context">{'record_id' : active_id}</field>
+ <field name="context">{'record_id': active_id}</field>
<field name="target">new</field>
</record>
</data>
-</openerp> \ No newline at end of file
+</openerp>
diff --git a/addons/project_long_term/wizard/working_calendar.py b/addons/project_long_term/wizard/working_calendar.py
index ba8ec7db150..d52bd54b437 100644
--- a/addons/project_long_term/wizard/working_calendar.py
+++ b/addons/project_long_term/wizard/working_calendar.py
@@ -18,21 +18,27 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
+
import datetime
import pooler
-def convert_timeformat(cr, uid, time_string, context={}):
+def convert_timeformat(cr, uid, time_string, context=None):
+ if context is None:
+ context = {}
""" Convert input time string: 8.5 to output time string 8:30."""
split_list = str(time_string).split('.')
hour_part = split_list[0]
mins_part = split_list[1]
- round_mins = int(round(float(mins_part) * 60,-2))
+ round_mins = int(round(float(mins_part) * 60,-2))
converted_string = hour_part + ':' + str(round_mins)[0:2]
return converted_string
-def compute_leaves(cr, uid, calendar_id, resource_id=False, resource_calendar=False, context={}):
+def compute_leaves(cr, uid, calendar_id, resource_id=False, resource_calendar=False, context=None):
+
+ if context is None:
+ context = {}
"""Compute the leaves from the working calendar of the resource.
@@ -63,7 +69,10 @@ def compute_leaves(cr, uid, calendar_id, resource_id=False, resource_calendar=Fa
leave_list.sort()
return leave_list
-def compute_working_calendar(cr, uid, calendar_id, context={}):
+def compute_working_calendar(cr, uid, calendar_id, context=None):
+
+ if context is None:
+ context = {}
"""Change the format of working calendar from 'Openerp' format to bring it into 'Faces' format.
@@ -103,7 +112,7 @@ def compute_working_calendar(cr, uid, calendar_id, context={}):
for k,v in wk_time.items():
wktime_cal.append(tuple(v))
# Add for the non-working days like: [('sat, sun', '8:00-8:00')]
- for k,v in wk_days.items():
+ for k, v in wk_days.items():
if week_days.has_key(k):
week_days.pop(k)
for v in week_days.itervalues():
@@ -111,4 +120,4 @@ def compute_working_calendar(cr, uid, calendar_id, context={}):
if non_working:
wktime_cal.append((non_working[:-1], time_range))
return wktime_cal
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: