У меня есть список магазинов с подробными сведениями. У меня хранится дневное время открытия магазина и время закрытия. Мне нужно принять текущий день и текущее время и проверить с каждой датой и временем в магазине (у меня есть день открытия магазина с открытым временем и близким временем).if Текущее совпадение текущего дня с кнопкой открытия времени открытия магазина должно включать. Если текущая дата и время не совпадают, мне нужно отключить button.i, но новый для технологии PLS кто-то мне помогает
Пример: сегодня вторник, если время 08.00PM, только одна кнопка заказа магазина должна включить демонстрационную демонстрационную версию демонстрационного диска для мобильного сервиса ragu. Я попытался взять день и время, но я не могу взять bcoz, я начинаю PLS, какую-то помощь меня для этой задачи.
angular.module('myApp', [])
.controller("myCntrl", function ($scope,$filter) {
$scope.dealers = [{
S_Email_id: "[email protected]",
S_Store: "samsung",
status:"",
Store_Name: "Adtiya Samsung Store",
S_Services: "Regular Service,Software Faults,Hardware Faults",
Store_long_description: "Undertake all kind of samsung mobiles",
Store_short_description: "Undertake all kind of samsung mobiles",
Day: {
"monday": "09:10AM - 06:30PM",
"tuesday": "09:10AM - 06:30PM",
"wednesday": "09:10AM - 06:30PM",
"thursday": "09:10AM - 06:30PM",
"friday": "09:10AM - 06:30PM",
"saturday": "10:15AM - 04:15PM",
"sunday":"10:15AM - 04:15PM"
},
}, {
S_Email_id: "[email protected]",
S_Store: "nokia",
status:"",
Store_Name: "sri shakthi mobile service",
S_Services: "Settings Faults,Regular Service,Hardware Faults",
Store_long_description: "Undertake all kind of nokia mobiles",
Store_short_description: "Undertake all kind of nokia mobiles",
Day: {
"monday": "09:00AM - 06:00PM",
"tuesday": "09:00AM - 06:00PM",
"wednesday": "09:00AM - 06:00PM",
"thursday": "09:00AM - 06:00PM",
"friday": "09:00AM - 06:00PM",
"saturday": "09:00AM - 06:00PM",
"sunday":"Leave"
},
}, {
S_Email_id: "[email protected]",
S_Store: "nokia,samsung",
status:"",
Store_Name: "sun mobile service center",
S_Services: "Regular Service,overall maintenance,Mobile Shield Installation",
Store_long_description: "Undertake all kind of nokia,samsung mobiles",
Store_short_description: "Undertake all kind of nokia,samsung mobiles",
Day: {
"monday": "08:30AM - 07:30PM",
"tuesday": "08:30AM - 07:30PM",
"wednesday": "08:30AM - 07:30PM",
"thursday": "08:30AM - 07:30PM",
"friday": "08:30AM - 07:30PM",
"saturday": "08:15AM - 02:15PM",
"sunday":"8:15AM - 12:15AM"
},
},
{
S_Email_id: "[email protected]",
S_Store: "nokia,samsung",
status:"",
Store_Name: "ragu mobile service center",
S_Services: "Regular Service,overall maintenance,Mobile Shield Installation",
Store_long_description: "Undertake all kind of nokia,samsung mobiles",
Store_short_description: "Undertake all kind of nokia,samsung mobiles",
Day: {
"monday": "10:00AM - 10:00PM",
"tuesday": "10:00AM - 10:00PM",
"wednesday": "10:00AM - 10:00PM",
"thursday": "10:00AM - 10:00PM",
"friday": "10:00AM - 10:00PM",
"saturday": "leave",
"sunday":"leave"
},
}
]
var date = new Date();
$scope.hhmmsstt = $filter('date')(new Date(), 'hh:mm:ss a');
//console.log($scope.hhmmsstt);
}
)
<div ng-app="myApp">
<div ng-controller="myCntrl">
<label>Search on Label</label><br>
<input ng-model="query" type="text" placeholder="Search for name" />
<br><br>
<div ng-repeat="dealer in dealers">
{{dealer.Store_Name}}<br>
{{dealer.S_Email_id}}<br>
{{dealer.Day}}<br>
<input type="button" value="order"/>
<br><br><br>
</div>
</div>
</div>
Вы хотите использовать ng-disabled
на вашей кнопке input
с выражением, сравнивающим Today с днем недели внутри dealer.Day
Затем вам нужно разделить значение дня на "-", чтобы получить время начала и окончания, и проверить, теперь между этими двумя временами. Для этого требуется преобразование даты и разбор.
angular.module('myApp', [])
.controller("myCntrl", function($scope, $filter) {
$scope.isOpen = function(dealerSchedule) {
var now = new Date();
// 09:10AM - 06:30PM
var times = dealerSchedule[Object.keys(dealerSchedule)[now.getDay() - 1]].replace(/(\d\d\:\d\d)(AM|PM)/g, '1/1/1900 $1 $2').split(" - ");
var nowTime = new Date('1/1/1900 ' + now.toLocaleTimeString(navigator.language, {
hour: '2-digit',
minute: '2-digit',
hour12: true
}));
return nowTime >= new Date(times[0]) && nowTime <= new Date(times[1]);
};
$scope.dealers = [{
S_Email_id: "[email protected]",
S_Store: "samsung",
status: "",
Store_Name: "Adtiya Samsung Store",
S_Services: "Regular Service,Software Faults,Hardware Faults",
Store_long_description: "Undertake all kind of samsung mobiles",
Store_short_description: "Undertake all kind of samsung mobiles",
Day: {
"monday": "09:10AM - 06:30PM",
"tuesday": "09:10AM - 12:00PM",
"wednesday": "09:10AM - 10:30AM",
"thursday": "09:10AM - 06:30PM",
"friday": "09:10AM - 06:30PM",
"saturday": "10:15AM - 04:15PM",
"sunday": "10:15AM - 04:15PM"
},
}, {
S_Email_id: "[email protected]",
S_Store: "nokia",
status: "",
Store_Name: "sri shakthi mobile service",
S_Services: "Settings Faults,Regular Service,Hardware Faults",
Store_long_description: "Undertake all kind of nokia mobiles",
Store_short_description: "Undertake all kind of nokia mobiles",
Day: {
"monday": "09:00AM - 06:00PM",
"tuesday": "09:00AM - 06:00PM",
"wednesday": "09:00AM - 06:00PM",
"thursday": "09:00AM - 06:00PM",
"friday": "09:00AM - 06:00PM",
"saturday": "09:00AM - 06:00PM",
"sunday": "Leave"
},
}, {
S_Email_id: "[email protected]",
S_Store: "nokia,samsung",
status: "",
Store_Name: "sun mobile service center",
S_Services: "Regular Service,overall maintenance,Mobile Shield Installation",
Store_long_description: "Undertake all kind of nokia,samsung mobiles",
Store_short_description: "Undertake all kind of nokia,samsung mobiles",
Day: {
"monday": "08:30AM - 07:30PM",
"tuesday": "02:30PM - 07:30PM",
"wednesday": "08:30AM - 07:30PM",
"thursday": "08:30AM - 07:30PM",
"friday": "08:30AM - 07:30PM",
"saturday": "08:15AM - 02:15PM",
"sunday": "8:15AM - 12:15AM"
},
}, {
S_Email_id: "[email protected]",
S_Store: "nokia,samsung",
status: "",
Store_Name: "ragu mobile service center",
S_Services: "Regular Service,overall maintenance,Mobile Shield Installation",
Store_long_description: "Undertake all kind of nokia,samsung mobiles",
Store_short_description: "Undertake all kind of nokia,samsung mobiles",
Day: {
"monday": "10:00AM - 10:00PM",
"tuesday": "10:00AM - 10:00PM",
"wednesday": "10:00AM - 10:00PM",
"thursday": "10:00AM - 10:00PM",
"friday": "10:00AM - 10:00PM",
"saturday": "leave",
"sunday": "leave"
},
}]
var date = new Date();
$scope.hhmmsstt = $filter('date')(new Date(), 'hh:mm:ss a');
//console.log($scope.hhmmsstt);
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller="myCntrl">
<label>Search on Label</label>
<br>
<input ng-model="query" type="text" placeholder="Search for name" />
<br>
<br>
<div ng-repeat="dealer in dealers">
{{dealer.Store_Name}}
<br>{{dealer.S_Email_id}}
<br>{{dealer.Day}}
<br>
<input type="button" value="order" ng-disabled="!isOpen(dealer.Day)" />
<span>{{isOpen(dealer.Day) ? 'Open' : 'Closed'}}</span>
<br>
<br>
<br>
</div>
</div>
</div>
<span>{{isOpen(dealer.Day) ? 'Open' : 'Closed'}}</span>