Я работаю над простым приложением Расписания, я пытаюсь внедрить автоматический калькулятор, который будет подытоживать ваши часы за каждый день (воскресенье, понедельник, вторник и т. Д.).Проблема, которую я заметил, заключается в том, что в некоторых случаях пользователи будут вводить действия, которые будут находиться в пределах одного и того же периода времени даты.
Например:
$scope.Example = [
{Description:"Example activity",Start:"2018-06-24 8:00",End:"2018-06-24 10:00",Total:2},
{Description:"Example activity2",Start:"2018-06-24 9:00",End:"2018-06-24 10:00",Total:1},
{Description:"Example activity3",Start:"2018-06-24 10:00",End:"2018-06-24 11:00",Total:1}];
$scope.Calculate_all_entries = function(){
$scope.Total.Sunday = 0;
if($scope.Example){
angular.forEach($scope.Example, function(element){
if(moment(element.Start).format("dddd") === "Sunday"){
$scope.Total.Sunday = $scope.Total.Sunday + element.Total;
}
})
}
}
В этом случае общее число должно быть 3часов, а не 4 часа, так как мы не берем плату за работу в те же часы.Мне нужно внедрить систему, которая проверила бы, совпадают ли даты в том же периоде, и предоставила бы соответствующую сумму.
Я нашел это в документации по моментам, которая, казалось, была близка к тому, что мне нужно, но принимала только одно значение:
moment('2010-10-19 11:00').isBetween('2010-10-19 10:00', '2010-10-25 00:00'); // true
Кто-нибудь знает о каких-либо других методах проверки, нет или нетвремя начала и окончания совпадает с другими записями в тот же день?