[FIX] web_gantt: duration in business days if delay not set
delay already being the hours amount in business hours opw-620189
This commit is contained in:
parent
60a361cd17
commit
f833d2eacd
|
@ -144,6 +144,7 @@ instance.web_gantt.GanttView = instance.web.View.extend({
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var task_name = task.__name;
|
var task_name = task.__name;
|
||||||
|
var duration_in_business_hours = false;
|
||||||
var task_start = instance.web.auto_str_to_date(task[self.fields_view.arch.attrs.date_start]);
|
var task_start = instance.web.auto_str_to_date(task[self.fields_view.arch.attrs.date_start]);
|
||||||
if (!task_start)
|
if (!task_start)
|
||||||
return;
|
return;
|
||||||
|
@ -158,10 +159,14 @@ instance.web_gantt.GanttView = instance.web.View.extend({
|
||||||
if (!tmp)
|
if (!tmp)
|
||||||
return;
|
return;
|
||||||
task_stop = task_start.clone().addMilliseconds(instance.web.parse_value(tmp, {type:"float"}) * 60 * 60 * 1000);
|
task_stop = task_start.clone().addMilliseconds(instance.web.parse_value(tmp, {type:"float"}) * 60 * 60 * 1000);
|
||||||
|
duration_in_business_hours = true;
|
||||||
}
|
}
|
||||||
var duration = (task_stop.getTime() - task_start.getTime()) / (1000 * 60 * 60);
|
var duration = (task_stop.getTime() - task_start.getTime()) / (1000 * 60 * 60);
|
||||||
var id = _.uniqueId("gantt_task_");
|
var id = _.uniqueId("gantt_task_");
|
||||||
var task_info = new GanttTaskInfo(id, task_name, task_start, ((duration / 24) * 8) || 1, 100);
|
if (!duration_in_business_hours){
|
||||||
|
duration = (duration / 24) * 8;
|
||||||
|
}
|
||||||
|
var task_info = new GanttTaskInfo(id, task_name, task_start, (duration) || 1, 100);
|
||||||
task_info.internal_task = task;
|
task_info.internal_task = task;
|
||||||
task_ids[id] = task_info;
|
task_ids[id] = task_info;
|
||||||
return {task_info: task_info, task_start: task_start, task_stop: task_stop};
|
return {task_info: task_info, task_start: task_start, task_stop: task_stop};
|
||||||
|
@ -202,7 +207,11 @@ instance.web_gantt.GanttView = instance.web.View.extend({
|
||||||
var self = this;
|
var self = this;
|
||||||
var itask = task_obj.TaskInfo.internal_task;
|
var itask = task_obj.TaskInfo.internal_task;
|
||||||
var start = task_obj.getEST();
|
var start = task_obj.getEST();
|
||||||
var duration = (task_obj.getDuration() / 8) * 24;
|
var duration = task_obj.getDuration();
|
||||||
|
var duration_in_business_hours = !!self.fields_view.arch.attrs.date_delay;
|
||||||
|
if (!duration_in_business_hours){
|
||||||
|
duration = (duration / 8 ) * 24;
|
||||||
|
}
|
||||||
var end = start.clone().addMilliseconds(duration * 60 * 60 * 1000);
|
var end = start.clone().addMilliseconds(duration * 60 * 60 * 1000);
|
||||||
var data = {};
|
var data = {};
|
||||||
data[self.fields_view.arch.attrs.date_start] =
|
data[self.fields_view.arch.attrs.date_start] =
|
||||||
|
|
Loading…
Reference in New Issue