Я бы хотел сравнить рабочие часы в день объекта, полученного из JSON
, с информацией о дне и часах с устройства. В связи с этим у меня есть два вопроса:
1) Каков наилучший / правильный способ сохранения информации о рабочих часах в день для конкретной организации в JSON
? Я думаю, что его структура должна выглядеть примерно так:
"working_hours": {
"<DAY_OF_THE_WEEK_1>":"<WORKING_HOURS>",
"<DAY_OF_THE_WEEK_2>":"<WORKING_HOURS>",
"<DAY_OF_THE_WEEK_3>":"<WORKING_HOURS>",
"<DAY_OF_THE_WEEK_4>":"<WORKING_HOURS>",
"<DAY_OF_THE_WEEK_5>":"<WORKING_HOURS>",
"<DAY_OF_THE_WEEK_6>":"<WORKING_HOURS>",
"<DAY_OF_THE_WEEK_7>":"<WORKING_HOURS>"
}
Здесь я использую дни недели в качестве ключей в dictionary
. Тем не менее, я не уверен, какой самый лучший / правильный способ ввести "<DAY_OF_THE_WEEK_N>"
и "<WORKING_HOURS>"
внутри JSON
.
2) После получения этой информации, как сравнить ее с информацией о времени с устройства. По сути, мне нужно проверить день недели, а затем проверить, находится ли ток от устройства в интервале определенного <WORKING_HOURS>
.
Для тех, кто спрашивает меня, спрашиваю ли я о сравнении двух чисел: я не спрашиваю об этом. Мне нужно знать правильный формат, чтобы сэкономить рабочее время в JSON
, также учитывая изменения дня.
В настоящее время проблема заключается в том, что когда я сохраняю время типа 21:00
и преобразовываю его в Date
:
let workingHoursEnd = "21:00"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "H:mm"
dateFormatter.timeZone = TimeZone.autoupdatingCurrent
let dateFromString = dateFormatter.date(from: workingHoursEnd)
Я получаю Jan 1, 2000 at 9:00 PM
. Формат времени в порядке, я могу изменить его позже, однако мне нужно получить текущую дату (особенно день недели), потому что мне нужно учитывать и текущий день.
Если вы можете ответить на оба вопроса (или даже на один из них), я был бы признателен за вашу помощь.