我工作了几个小时,发现http
请求中的变量没有在请求之外更新
var BreakHour
不在此功能中进行外部更新。谢谢您的帮助
$scope.getTotalWorked = function(Id, earlierDate, laterDate, timeIn){
var n_earlierDate = new Date(earlierDate);
var n_laterDate = new Date(laterDate);
$scope.n_hours_minutes = "00:00";
var hours = 0;
var minutes = 0;
var BreakHour = 0;
hours = parseInt(Math.abs(n_laterDate - n_earlierDate) / (1000 * 60 * 60) );
minutes = parseInt(Math.abs(n_laterDate.getTime() - n_earlierDate.getTime()) / (1000 * 60) % 60);
$http.get('json/Employee.php?CD=' + Id).then(function(response) {
var data = response.data;
var isEligible = 0;
$scope.EmployeeId = data[0].EmployeeId;
isEligible = data[0].isEligible;
if (n_earlierDate > n_laterDate){
hours =0;
minutes=0;
}
return $http({
method: 'GET',
url: 'json/EmployeeSchedule.php?ID=' + $scope.EmployeeId + "&DateFrom=" + new moment(timeIn).format("YYYY/MM/DD") + "&DateTo=" + new moment(timeIn).format("YYYY/MM/DD"),
});
}).then(function (response, status) {
var result = response.data;
BreakHour = result[0].BreakHour;
});
if (parseInt(hours) >= 5){
alert(BreakHour);
hours = parseInt(hours) - parseInt(BreakHour);
$scope.n_hours_minutes = hours +':'+ minutes;
}
else{
$scope.n_hours_minutes = hours +':'+ minutes;
}
return $scope.n_hours_minutes;
}