summaryrefslogtreecommitdiff
path: root/addons/project_long_term
diff options
context:
space:
mode:
authoruco (OpenERP) <uco@tinyerp.com>2010-05-19 10:40:58 +0530
committeruco (OpenERP) <uco@tinyerp.com>2010-05-19 10:40:58 +0530
commit5ecb42ccd8654193dd6779a52f03658e8dc8af88 (patch)
tree7fcce6261b242a85a633b70c04fcf97157119390 /addons/project_long_term
parent6ec34eceb486c8427aeb0fb03d9aba0138dbe070 (diff)
parent67133e1dc40682ec11cf387c4ae576ee6d0752f7 (diff)
[MERGE]
bzr revid: uco@tinyerp.com-20100519051058-a5hfrptrt5q2i37u
Diffstat (limited to 'addons/project_long_term')
-rw-r--r--addons/project_long_term/project_long_term.py42
-rw-r--r--addons/project_long_term/project_long_term_view.xml5
-rw-r--r--addons/project_long_term/wizard/project_compute_phases.py1
-rw-r--r--addons/project_long_term/wizard/project_compute_phases_view.xml1
-rw-r--r--addons/project_long_term/wizard/project_compute_tasks.py2
-rw-r--r--addons/project_long_term/wizard/project_schedule_tasks.py4
6 files changed, 27 insertions, 28 deletions
diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py
index deff634aa68..a925aeeb7aa 100644
--- a/addons/project_long_term/project_long_term.py
+++ b/addons/project_long_term/project_long_term.py
@@ -85,8 +85,8 @@ class project_phase(osv.osv):
_columns = {
'name': fields.char("Phase Name", size=64, required=True),
- 'date_start': fields.datetime('Starting Date'),
- 'date_end': fields.datetime('End Date'),
+ 'date_start': fields.datetime('Starting Date', help="Start date of the phase"),
+ 'date_end': fields.datetime('End Date', help="End date of the phase"),
'constraint_date_start': fields.datetime('Start Date', help='force the phase to start after this date'),
'constraint_date_end': fields.datetime('End Date', help='force the phase to finish before this date'),
'project_id': fields.many2one('project.project', 'Project', required=True),
@@ -104,8 +104,8 @@ class project_phase(osv.osv):
}
_defaults = {
'responsible_id': lambda obj,cr,uid,context: uid,
- 'state': lambda *a: 'draft',
- 'sequence': lambda *a: 10,
+ 'state': 'draft',
+ 'sequence': 10,
}
_order = "name"
_constraints = [
@@ -237,7 +237,7 @@ class project_resource_allocation(osv.osv):
'useability': fields.float('Useability', help="Useability of this ressource for this project phase in percentage (=50%)"),
}
_defaults = {
- 'useability': lambda *a: 100,
+ 'useability': 100,
}
project_resource_allocation()
@@ -261,7 +261,7 @@ class task(osv.osv):
'planned_hours': fields.float('Planned Hours', required=True, help='Estimated time to do the task, usually set by the project manager when the task is in draft state.'),
}
_defaults = {
- 'occupation_rate':lambda *a: '1'
+ 'occupation_rate': '1'
}
def onchange_planned(self, cr, uid, ids, project, user_id=False, planned=0.0, effective=0.0, date_start=None, occupation_rate=0.0):
@@ -350,22 +350,22 @@ class task(osv.osv):
# Change the date_start and date_end
# for previous and next tasks respectively based on valid condition
- if vals.get('date_start', False) and vals['date_start'] < task_rec.date_start:
- dt_start = mx.DateTime.strptime(vals['date_start'], '%Y-%m-%d %H:%M:%S')
- work_times = resource_calendar_obj.interval_get(cr, uid, calendar_id, dt_start, hrs or 0.0, resource.id or False)
- if work_times:
- vals['date_end'] = work_times[-1][1].strftime('%Y-%m-%d %H:%M:%S')
- for prv_task in task_rec.parent_ids:
- self._check_date_start(cr, uid, prv_task, dt_start)
- if vals.get('date_end', False) and vals['date_end'] > task_rec.date_end:
- dt_end = mx.DateTime.strptime(vals['date_end'], '%Y-%m-%d %H:%M:%S')
- work_times = resource_calendar_obj.interval_min_get(cr, uid, calendar_id, dt_end, hrs or 0.0, resource.id or False)
- if work_times:
- vals['date_start'] = work_times[0][0].strftime('%Y-%m-%d %H:%M:%S')
- for next_task in task_rec.child_ids:
- self._check_date_end(cr, uid, next_task, dt_end)
+ if vals.get('date_start', False) and vals['date_start'] < task_rec.date_start:
+ dt_start = mx.DateTime.strptime(vals['date_start'], '%Y-%m-%d %H:%M:%S')
+ work_times = resource_calendar_obj.interval_get(cr, uid, calendar_id, dt_start, hrs or 0.0, resource.id or False)
+ if work_times:
+ vals['date_end'] = work_times[-1][1].strftime('%Y-%m-%d %H:%M:%S')
+ for prv_task in task_rec.parent_ids:
+ self._check_date_start(cr, uid, prv_task, dt_start)
+ if vals.get('date_end', False) and vals['date_end'] > task_rec.date_end:
+ dt_end = mx.DateTime.strptime(vals['date_end'], '%Y-%m-%d %H:%M:%S')
+ work_times = resource_calendar_obj.interval_min_get(cr, uid, calendar_id, dt_end, hrs or 0.0, resource.id or False)
+ if work_times:
+ vals['date_start'] = work_times[0][0].strftime('%Y-%m-%d %H:%M:%S')
+ for next_task in task_rec.child_ids:
+ self._check_date_end(cr, uid, next_task, dt_end)
return super(task, self).write(cr, uid, ids, vals, context=context)
task()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file
diff --git a/addons/project_long_term/project_long_term_view.xml b/addons/project_long_term/project_long_term_view.xml
index ae06ebb3b71..fafc2a14aa4 100644
--- a/addons/project_long_term/project_long_term_view.xml
+++ b/addons/project_long_term/project_long_term_view.xml
@@ -204,9 +204,7 @@
<field name="project_id" widget="selection">
<filter domain="[('project_id.user_id','=',uid)]" help="My Projects" icon="terp-project"/>
</field>
- <field name="responsible_id" widget="selection">
- <filter domain="[('responsible_id','=',uid)]" help="My Phase" icon="gtk-execute" default="1"/>
- </field>
+ <field name="responsible_id" widget="selection"/>
<field name="date_start"/>
</group>
<newline/>
@@ -225,6 +223,7 @@
<field name="res_model">project.phase</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calendar,gantt</field>
+ <field name="context">{'search_default_responsible_id':uid}</field>
<field name="search_view_id" ref="view_project_phase_search"/>
</record>
diff --git a/addons/project_long_term/wizard/project_compute_phases.py b/addons/project_long_term/wizard/project_compute_phases.py
index ddf8ba315c0..5353db25be6 100644
--- a/addons/project_long_term/wizard/project_compute_phases.py
+++ b/addons/project_long_term/wizard/project_compute_phases.py
@@ -48,7 +48,6 @@ 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):
-
"""Schedule phase with the start date till all the next phases are completed.
Arguements: start_dsate -- start date for the phase
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 900112ba409..4b4e01a72a9 100644
--- a/addons/project_long_term/wizard/project_compute_phases_view.xml
+++ b/addons/project_long_term/wizard/project_compute_phases_view.xml
@@ -13,6 +13,7 @@
<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"/>
diff --git a/addons/project_long_term/wizard/project_compute_tasks.py b/addons/project_long_term/wizard/project_compute_tasks.py
index 90d2b428580..b86f9d862c9 100644
--- a/addons/project_long_term/wizard/project_compute_tasks.py
+++ b/addons/project_long_term/wizard/project_compute_tasks.py
@@ -132,7 +132,7 @@ class project_compute_tasks(osv.osv_memory):
ctx.update({'scheduler': True})
user_id = user_obj.search(cr, uid, [('name', '=', t.booked_resource[0].__name__)])
task_pool.write(cr, uid, [tasks[loop_no-1].id], {'date_start': s_date.strftime('%Y-%m-%d %H:%M:%S'),
- 'date_deadline': e_date.strftime('%Y-%m-%d %H:%M:%S'),
+ 'date_end': e_date.strftime('%Y-%m-%d %H:%M:%S'),
'user_id': user_id[0]},
context=ctx)
loop_no +=1
diff --git a/addons/project_long_term/wizard/project_schedule_tasks.py b/addons/project_long_term/wizard/project_schedule_tasks.py
index 2d0071547be..8ec2d4c16e0 100644
--- a/addons/project_long_term/wizard/project_schedule_tasks.py
+++ b/addons/project_long_term/wizard/project_schedule_tasks.py
@@ -65,7 +65,7 @@ class project_schedule_task(osv.osv_memory):
{'__doc__': res.user_id.name,
'__name__': res.user_id.name,
'vacation': tuple(leaves),
- 'efficiency': resource_eff
+ 'efficiency': resource_eff,
}))
return resource_objs
@@ -149,7 +149,7 @@ class project_schedule_task(osv.osv_memory):
ctx.update({'scheduler': True})
user_id = user_obj.search(cr, uid, [('name', '=', t.booked_resource[0].__name__)])
task_obj.write(cr, uid, [tasks[loop_no-1].id], {'date_start': s_date.strftime('%Y-%m-%d %H:%M:%S'),
- 'date_deadline': e_date.strftime('%Y-%m-%d %H:%M:%S'),
+ 'date_end': e_date.strftime('%Y-%m-%d %H:%M:%S'),
'user_id': user_id[0]},
context=ctx)
loop_no +=1