From 0d2ae40a70ba3be3ccf8e439b4ed92a1ec4719d6 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Wed, 26 Oct 2011 01:31:41 +0200 Subject: [FIX] Complete refactoring of project_long_term, with following changes: do not use resources but users on phases: - to be consistent with project members and task responsible - if the user is linked to a resource, it uses the calendar of the resource (holidays for example) better YML tests Complete rewrite of the scheduling mechanism: - Schedule phases: - write project.user.allocation based on scheduling - schedule resources based on members on the project - new constraint: force some users on a phase - Schedule tasks: - set user if no user on task - set start and end date some useability improvements We still have to work on better Gantt view but I think the scheduling is working correctly now. bzr revid: fp@tinyerp.com-20111025233141-cgctwe8spxhko2gn --- .../wizard/project_schedule_tasks.py | 51 ---------------------- 1 file changed, 51 deletions(-) delete mode 100644 addons/project_long_term/wizard/project_schedule_tasks.py (limited to 'addons/project_long_term/wizard/project_schedule_tasks.py') diff --git a/addons/project_long_term/wizard/project_schedule_tasks.py b/addons/project_long_term/wizard/project_schedule_tasks.py deleted file mode 100644 index d446ef20183..00000000000 --- a/addons/project_long_term/wizard/project_schedule_tasks.py +++ /dev/null @@ -1,51 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## - -from osv import fields, osv - -class project_schedule_task(osv.osv_memory): - _name = "project.schedule.tasks" - _description = 'project.schedule.tasks' - _columns = { - 'msg': fields.char('Message', size=64) - } - _defaults = { - 'msg': 'Task Scheduling Completed Successfully' - } - - def default_get(self, cr, uid, fields_list, context=None): - res = super(project_schedule_task, self).default_get(cr, uid, fields_list, context) - self.compute_date(cr, uid, context=context) - return res - - def compute_date(self, cr, uid, context=None): - """ - Schedule the tasks according to resource available and priority. - """ - phase_pool = self.pool.get('project.phase') - if context is None: - context = {} - if not 'active_id' in context: - return {'type': 'ir.actions.act_window_close'} - return phase_pool.schedule_tasks(cr, uid, [context['active_id']], context=context) -project_schedule_task() - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: -- cgit v1.2.3