169 похожих чатов

Привет коллеги Помогите пожалуйста с запросом Нужно отфильтровать всех сотрудников по графику

их работы
График состоит из двух сущностей: собственно сам график и сущности часов
Часы содержат следующие поля: начало и конец рабочего дня, номер дня недели и/или специфичная дата.

Мне нужно отфильтровать сотрудников по их графикам
Employee::whereHas('schedule.hours')
Загвоздка появилась c часами до полуночи и после полуночи. Какое условие поставить чтобы сотрудники работающие с 11 ночи и до 5 утра попадали в фильтр?

9 ответов

13 просмотров

Вам нужно сравнивать не числа, а время. И не нужно в дату ставить номер дня недели

Причём нужно не три поля, а два: начало рабочего дня и конец в формате timestamp

Eshently-🇰🇬 Автор вопроса

номера дней недели хранятся в виде последовательности целых чисел от 0 до 6 график у меня хранится в виде beginning = H:i:s ending = H:i:s day_of_week = 0 (в европейском формате, соответственно ноль равен понедельнику) specific_date = Y-m-d (пользователи могут поставить доп время работы на специфичную дату)

day_of_week и specific_date - это одно и то же, только по-разному представлено. Так не стоит делать. Лучше сделать связь oneToMany и добавлять каждый график с его датой и временем

Причём не вижу нужды разделять сущности графика и часов

Eshently-🇰🇬 Автор вопроса

дата не привяза к таймстемпу, только к дню недели, иногда спец дата сейчас менять уже поздно, нужно работать с тем что есть

Eshently-🇰🇬 Автор вопроса

ну у нас была такая нужда, график это имя и morphOne связь

Извиняюсь, не понял сразу. Тогда вам нужно либо время в 24-формате, либо указывать АМ и РМ, чтобы определить точное время

У MySQL есть возможность добавить AM PM

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
50
у меня такой вопрос про память в x86 возник, может кто пояснить?.. у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше)...
Toideng
5
у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше): - "п1" --- виртуальный адрес, то есть тот, который ресолвится в "п...
Toideng
3
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Hello, I need a hand, this is my code: body: ExtendedImageGesturePageView.builder( scrollDirection: Axis.vertical, controller: _pageController, itemCou...
𝘞𝘦𝘢𝘳𝘪𝘯𝘨𝘔𝘦𝘥𝘢𝘭 🦋
2
Guy, how to make redirecting to a page like this when http status 401?
Islam Kurbanov
8
Только что в чате Я.Вебмастера потратил я час на пустые споры с каким-то челом. Он с пеной у рта доказывал мне, что любой "самопис" - дерьмо, что у него дыры в безопасности, ...
Андрей [aharito] Харитонов
2
можно эстетический вопрос? у меня есть кучка мелких-мелких функций типа: function AddInteger(aparent:pointer; aname:PWideChar; aval:Int32):pointer; begin result:=AddNode(apa...
Alexey Kulakov
3
why html and css is not standard? i mean why different browser has their own engine and styles and how them work to show result to end user?
Mr Thieves
11
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Карта сайта