Здравствйте.
Вопрос больше по PHP.
Есть задача нужно генерировать и контролировать сменный график работы сутки на трое, по крону раз в неделю стартует вычисление, которое проверяет заполнен ли график смен на месяц вперед и дозополняет его при необходимости. Как сопоставить дату и смену т. е. что 04.12.18 - смена А, а 06.12.18 - смена С и т. д.
0
Сменный график работы
Автор maksbazhin, 04 дек. 2018 09:16
Сообщений в теме: 2
#1
Отправлено 04 Декабрь 2018 - 09:16
#2
Отправлено 05 Декабрь 2018 - 00:30
Думаю, нужно сделать что-то типа шаблона, где будут прописаны эти смены (интервалы и длительность в днях). Вычисление по крону будет анализировать этот шаблон и актуальное расписание смен, и если видит что неделя пустая или не соответствует шаблону - подставлять в конец расписания недостающее.
Как-то так.
Как-то так.
Умные сайты на заказ
https://info.crm-master.info
https://info.crm-master.info
#3
Отправлено 05 Декабрь 2018 - 18:41
Сделал так: прохожу по ближайшему месяцу если на нужную дату в таблице нет дежурных, то вычисляю какая будет по порядку смена и создаю новую запись.
Само вычисление смены, может кому пригодится:
$timediff = round(fmod((strtotime($i) - strtotime($data_reper))/86400,4)); // $i - нужная дата, $data_reper - постоянная дата отсчета, 4 - кол-во смен.
Сейчас другая проблема: смена начинается в восемь утра, а в КБ при создании записи смена заноситься 00:00:00 в результате диспетчер в шесть утра видит новую смену...
Само вычисление смены, может кому пригодится:
$timediff = round(fmod((strtotime($i) - strtotime($data_reper))/86400,4)); // $i - нужная дата, $data_reper - постоянная дата отсчета, 4 - кол-во смен.
Сейчас другая проблема: смена начинается в восемь утра, а в КБ при создании записи смена заноситься 00:00:00 в результате диспетчер в шесть утра видит новую смену...
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных