From 1adcb50ea377a8847e50b4cd6c6c85e6ed8a67c8 Mon Sep 17 00:00:00 2001 From: "Rvo (Open ERP)" Date: Fri, 26 Feb 2010 17:56:17 +0530 Subject: [PATCH] [IMP]:improved the date start working for phase,tasks scheduling bzr revid: rvo@tinyerp.co.in-20100226122617-l6jvjmckgjqf3chg --- addons/project/wizard/compute_tasks_date.py | 5 ++++- .../project_long_term/wizard/compute_phases_date.py | 5 ++++- addons/project_long_term/wizard/schedule_tasks.py | 12 +++++++++--- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/addons/project/wizard/compute_tasks_date.py b/addons/project/wizard/compute_tasks_date.py index 558a6116af0..7cf1ad73bbb 100644 --- a/addons/project/wizard/compute_tasks_date.py +++ b/addons/project/wizard/compute_tasks_date.py @@ -58,7 +58,10 @@ class wizard_compute_tasks(wizard.interface): task_ids.sort() task_obj = task_pool.browse(cr,uid,task_ids) calendar_id = project.resource_calendar_id.id - date_start = datetime.datetime.strftime(datetime.datetime.strptime(project.date_start,"%Y-%m-%d"),"%Y-%m-%d %H:%M") + start_date = project.date_start + if not project.date_start: + start_date = datetime.datetime.now().strftime("%Y-%m-%d") + date_start = datetime.datetime.strftime(datetime.datetime.strptime(start_date,"%Y-%m-%d"),"%Y-%m-%d %H:%M") # To create resources which are the Project Members resource_objs = [] diff --git a/addons/project_long_term/wizard/compute_phases_date.py b/addons/project_long_term/wizard/compute_phases_date.py index d8ffeaf340c..1fe0286b6a5 100644 --- a/addons/project_long_term/wizard/compute_phases_date.py +++ b/addons/project_long_term/wizard/compute_phases_date.py @@ -121,7 +121,10 @@ class wizard_compute_phases(wizard.interface): phase_ids.sort() phase_objs = phase_pool.browse(cr,uid,phase_ids) for phase in phase_objs: - start_dt = datetime.datetime.strftime((datetime.datetime.strptime(phase.date_start,"%Y-%m-%d %H:%M:%S")),"%Y-%m-%d %H:%M") + start_date = phase.project_id.date_start + if not phase.project_id.date_start: + start_date = datetime.datetime.now().strftime("%Y-%m-%d") + start_dt = datetime.datetime.strftime((datetime.datetime.strptime(start_date,"%Y-%m-%d")),"%Y-%m-%d %H:%M") calendar_id = phase.project_id.resource_calendar_id.id phase_schedule(cr,uid,phase,start_dt,calendar_id or False) diff --git a/addons/project_long_term/wizard/schedule_tasks.py b/addons/project_long_term/wizard/schedule_tasks.py index e530cf72fac..8b188a8cc28 100644 --- a/addons/project_long_term/wizard/schedule_tasks.py +++ b/addons/project_long_term/wizard/schedule_tasks.py @@ -60,12 +60,18 @@ class wizard_schedule_task(wizard.interface): user_pool = pool.get('res.users') phase = phase_pool.browse(cr,uid,data['id']) task_ids = map(lambda x:x.id,(filter(lambda x:x.state in ['open','draft','pending'] ,phase.task_ids))) - task_ids.sort() - tasks = task_pool.browse(cr,uid,task_ids) if task_ids: + task_ids.sort() + tasks = task_pool.browse(cr,uid,task_ids) wktime_cal = [] - date_start = datetime.datetime.strftime(datetime.datetime.strptime(phase.date_start,"%Y-%m-%d %H:%M:%S"),"%Y-%m-%d %H:%M") + start_date = str(phase.date_start)[:-9] + if not phase.date_start: + if not phase.project_id.date_start: + start_date = datetime.datetime.now().strftime("%Y-%m-%d") + else: + start_date = phase.project_id.date_start + date_start = datetime.datetime.strftime(datetime.datetime.strptime(start_date,"%Y-%m-%d"),"%Y-%m-%d %H:%M") calendar_id = phase.project_id.resource_calendar_id.id resource_objs = resource_list(cr,uid,phase) priority_dict = {'0':1000,'1':800,'2':500,'3':300,'4':100}