diff options
| author | Harry (OpenERP) <hmo@tinyerp.com> | 2010-10-13 16:14:06 +0530 |
|---|---|---|
| committer | Harry (OpenERP) <hmo@tinyerp.com> | 2010-10-13 16:14:06 +0530 |
| commit | 896ebda0aed93c01cb381e20404139211c1cb571 (patch) | |
| tree | 43caef32a9b4317dd2ce10b9f19701a0d7ea5549 /addons/project_long_term/project_long_term.py | |
| parent | db43747c75a0ef22c3a383456071c52d41bc17eb (diff) | |
| parent | 802541e5c78daac2cfc2a1273780193306ba5522 (diff) | |
[MERGE]
bzr revid: hmo@tinyerp.com-20101013104406-byc7tlrbqrna2h7c
Diffstat (limited to 'addons/project_long_term/project_long_term.py')
| -rw-r--r-- | addons/project_long_term/project_long_term.py | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py index 0c31c485753..903dbb3b17e 100644 --- a/addons/project_long_term/project_long_term.py +++ b/addons/project_long_term/project_long_term.py @@ -91,8 +91,8 @@ class project_phase(osv.osv): model_data_obj = self.pool.get('ir.model.data') model_data_id = model_data_obj._get_id(cr, uid, 'product', 'uom_hour') return model_data_obj.read(cr, uid, [model_data_id], ['res_id'])[0]['res_id'] - - def _compute(self, cr, uid, ids,field_name, arg, context=None): + + def _compute(self, cr, uid, ids, field_name, arg, context=None): res = {} if not ids: return res @@ -143,7 +143,7 @@ class project_phase(osv.osv): project_id = project_obj.browse(cr, uid, project, context=context) result['date_start'] = project_id.date_start return {'value': result} - + def onchange_days(self, cr, uid, ids, project, context=None): result = {} for id in ids: @@ -219,7 +219,7 @@ class project_phase(osv.osv): cal_id = resource_obj.browse(cr, uid, resource_id[0], context=context).calendar_id.id if cal_id: calendar_id = cal_id - + avg_hours = uom_obj._compute_qty(cr, uid, phase.product_uom.id, phase.duration, default_uom_id) # Change the date_start and date_end # for previous and next phases respectively based on valid condition @@ -232,7 +232,7 @@ class project_phase(osv.osv): if prv_phase.id == phase.id: continue self._check_date_start(cr, uid, prv_phase, dt_start, context=context) - + if vals.get('date_end', False) and vals['date_end'] > phase.date_end: dt_end = datetime.strptime(vals['date_end'], '%Y-%m-%d') work_times = resource_calendar_obj.interval_min_get(cr, uid, calendar_id, dt_end, avg_hours or 0.0, resource_id and resource_id[0] or False) @@ -242,7 +242,7 @@ class project_phase(osv.osv): if next_phase.id == phase.id: continue self._check_date_end(cr, uid, next_phase, dt_end, context=context) - + return res def copy(self, cr, uid, id, default=None, context=None): @@ -293,7 +293,7 @@ class project_phase(osv.osv): Schedule phase with the start date till all the next phases are completed. @param: start_dsate : start date for the phase @param: calendar_id : working calendar of the project - """ + """ if context is None: context = {} resource_pool = self.pool.get('resource.resource') @@ -304,7 +304,7 @@ class project_phase(osv.osv): for phase in self.browse(cr, uid, ids, context=context): if not phase.responsible_id: raise osv.except_osv(_('No responsible person assigned !'),_("You must assign a responsible person for phase '%s' !") % (phase.name,)) - + phase_resource_obj = resource_pool.generate_resources(cr, uid, [phase.responsible_id.id], calendar_id, context=context) avg_hours = uom_pool._compute_qty(cr, uid, phase.product_uom.id, phase.duration, default_uom_id) duration = str(avg_hours) + 'H' @@ -369,7 +369,7 @@ class project_phase(osv.osv): if not start_date and phase.project_id.date_start: start_date = phase.project_id.date_start if not start_date: - start_date = datetime.now().strftime("%Y-%m-%d") + start_date = datetime.now().strftime("%Y-%m-%d") resources = resources_list.get(phase.id, []) calendar_id = phase.project_id.resource_calendar_id.id task_ids = map(lambda x : x.id, (filter(lambda x : x.state in ['open', 'draft', 'pending'] , phase.task_ids))) @@ -396,7 +396,7 @@ class project_resource_allocation(osv.osv): 'user_id': fields.related('resource_id', 'user_id', type='many2one', relation="res.users", string='User'), 'date_start': fields.date('Start Date', help="Starting Date"), 'date_end': fields.date('End Date', help="Ending Date"), - 'useability': fields.float('Usability', help="Usability of this resource for this project phase in percentage (=50%)"), + 'useability': fields.float('Availability', help="Usability of this resource for this project phase in percentage (=50%)"), } _defaults = { 'useability': 100, @@ -458,19 +458,19 @@ class project(osv.osv): resource_pool = self.pool.get('resource.resource') if context is None: context = {} - + resources_list = self.generate_members(cr, uid, ids, context=context) return_msg = {} for project in self.browse(cr, uid, ids, context=context): start_date = project.date_start if not start_date: - start_date = datetime.now().strftime("%Y-%m-%d") + start_date = datetime.now().strftime("%Y-%m-%d") resources = resources_list.get(project.id, []) calendar_id = project.resource_calendar_id.id task_ids = task_pool.search(cr, uid, [('project_id', '=', project.id), ('state', 'in', ['draft', 'open', 'pending']) ]) - + if task_ids: task_pool.generate_schedule(cr, uid, task_ids, resources, calendar_id, start_date, context=context) @@ -481,7 +481,7 @@ class project(osv.osv): else: return_msg["warning"] = return_msg["warning"] + "\n" + warning_msg - return return_msg + return return_msg project() @@ -504,7 +504,7 @@ class project_task(osv.osv): _columns = { 'phase_id': fields.many2one('project.phase', 'Project Phase'), } - + def generate_schedule(self, cr, uid, ids, resources, calendar_id, start_date, context=None): """ Schedule the tasks according to resource available and priority. @@ -554,10 +554,10 @@ class project_task(osv.osv): if task_resource.__name__ == task_resource: real_resource = task_resource break - + task = create_tasks(task_number, hours, priorty, real_resource) task_number += 1 - + face_projects = Task.BalancedProject(Project) loop_no = 0 |
