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 --- .../test/schedule_phase_tasks.yml | 90 ---------------------- 1 file changed, 90 deletions(-) delete mode 100644 addons/project_long_term/test/schedule_phase_tasks.yml (limited to 'addons/project_long_term/test/schedule_phase_tasks.yml') diff --git a/addons/project_long_term/test/schedule_phase_tasks.yml b/addons/project_long_term/test/schedule_phase_tasks.yml deleted file mode 100644 index be22f778cee..00000000000 --- a/addons/project_long_term/test/schedule_phase_tasks.yml +++ /dev/null @@ -1,90 +0,0 @@ -- - Create project 'Develop an outlook-openerp synchronization plugin' -- - !record {model: project.project, id: project_project_project4}: - name: Develop an outlook-openerp synchronization plugin - members: - - project.res_users_project_manager - - project.res_users_technical_leader - - project.res_users_developer - - project.res_users_designer - - project.res_users_tester - - project.res_users_analyst - - project.res_users_finacial_manager -- - Create phase 'Develop GUI' in Outlook -- - !record {model: project.phase, id: project_phase_phase0}: - date_start: !eval time.strftime("%Y-%m-%d") - duration: 200.0 - name: Develop GUI in Outlook - product_uom: product.uom_day - project_id: project_project_project4 - state: draft - resource_ids: - - resource_id: project_long_term.resource_analyst - - resource_id: project_long_term.resource_developer - - resource_id: project_long_term.resource_designer - - resource_id: project_long_term.resource_tester - - resource_id: project_long_term.resource_project_manager - -- - Create the phase task 'Develop GUI for Server Configuration' -- - !record {model: project.task, id: project_task_t0}: - name: Develop GUI for Server Configuration - planned_hours: 20.0 - remaining_hours: 20.0 - state: draft - phase_id: project_phase_phase0 - project_id: project_project_project4 - - -- - Create the phase task 'Develop GUI for Modules Configuration' -- - !record {model: project.task, id: project_task_t1}: - name: Develop GUI for Modules Configuration - planned_hours: 25.0 - remaining_hours: 25.0 - state: draft - phase_id: project_phase_phase0 - project_id: project_project_project4 - -- - Create the phase task 'Develop GUI for OpenERP Synchronisation' -- - !record {model: project.task, id: project_task_t2}: - name: Develop GUI for OpenERP Synchronisation - planned_hours: 30.0 - remaining_hours: 30.0 - state: draft - phase_id: project_phase_phase0 - project_id: project_project_project4 - -- - Create the phase task 'Design required GUI/Menus' -- - !record {model: project.task, id: project_task_3}: - name: Design required GUI/Menus - planned_hours: 25.0 - remaining_hours: 25.0 - state: draft - phase_id: project_phase_phase0 - project_id: project_project_project4 - -- - Schedule phase tasks -- - !python {model: project.phase}: | - res = self.schedule_tasks(cr, uid, [ref("project_phase_phase0")]) - -- - Check if tasks scheduled, check that either of task's start_date, end_date and user_id is not null -- - !python {model: project.phase}: | - phase = self.browse(cr, uid, [ref("project_phase_phase0")])[0] - for task in phase.task_ids: - if (not task.date_start) or (not task.date_end): - raise AssertionError("Phase Tasks not scheduled: %d uid=%r start=%r end=%r" % \ - (task.id, task.user_id, task.date_start, task.date_end)) -- cgit v1.2.3