56 lines
2.0 KiB
JavaScript
56 lines
2.0 KiB
JavaScript
$().ready(function()
|
|
{
|
|
$(':input[name*=people]').change(function()
|
|
{
|
|
var peopleNumber = 0;
|
|
$(':input[name*=people]').each(function()
|
|
{
|
|
var people = $(this).val();
|
|
if(people) peopleNumber += parseInt(people);
|
|
});
|
|
$('#totalStaff').html(peopleNumber);
|
|
});
|
|
|
|
$(':input[name*=workload]').change(function()
|
|
{
|
|
rate = parseFloat($(this).val());
|
|
workload = estimation.scale * rate / 100;
|
|
$(this).parents('td').next().find(':input').val(workload);
|
|
totalWorkload = 0;
|
|
$(':input[name*=workload]').each(function()
|
|
{
|
|
rate = parseFloat($(this).val());
|
|
workload = estimation.scale * rate / 100;
|
|
totalWorkload += workload;
|
|
});
|
|
$('#totalWorkload').html(totalWorkload.toFixed(2));
|
|
});
|
|
|
|
|
|
$(':input').change(function()
|
|
{
|
|
var that = $(this);
|
|
projectID = project.id;
|
|
stage = $(this).parents('tr').find('[name*=stage]').val();
|
|
workload = $(this).parents('tr').find('[name*=workload]').val();
|
|
worktimeRate = $(this).parents('tr').find('[name*=worktimeRate]').val();
|
|
people = $(this).parents('tr').find('[name*=people]').val();
|
|
startDate = $(this).parents('tr').find('[name*=startDate]').val();
|
|
if(startDate) startDate = startDate.replace(/-/g, '_');
|
|
|
|
if(isNaN(workload) || isNaN(worktimeRate) || isNaN(people) || startDate == '') return false;
|
|
url = createLink('durationestimation', 'ajaxGetDuration', 'projectID=' + projectID + '&stage=' + stage + '&workload=' + workload + '&worktimeRate=' + worktimeRate + '&people=' + people + '&startDate=' + startDate),
|
|
$.getJSON(
|
|
url,
|
|
function(response)
|
|
{
|
|
if(response.result == 'success')
|
|
{
|
|
that.parents('tr').find('[name*=endDate]').val(response.endDate);
|
|
}
|
|
}
|
|
);
|
|
});
|
|
$(':input').change();
|
|
})
|