Замечания такие: - сейчас сессия не делится при переходе через сутки (хотелось бы в 23:59:59 завершать сессию, а в 00:00:00 начинать новую) — чтобы время распределялось по датам. - другим вариантом является привязка сессии к дате её начала (как сейчас) — но тогда нужно связывать время по багам с сессией. - время по багам не учитывается с интервалом времени (только дата), из-за этого отчёты по багам после полуночи попадают в другой день и другую сессию. - предлагаю продолжительность сессии вычислять сразу и хранить в базе (поле len)
Сейчас сессия привязана к моменту ее начала... даже если человек проработал до 1 ночи, то не очень логично этот час переносить на следующий рабочий день и считать эффективность отдельно. Вообще я думаю не стоить переделывать так как информация обычной смотрится за период более длительный, на который это допущение не оказывает влияния.
Надо подумать, и, по прошествии времени, обсудить ещё раз.
При использовании поле len мы откажемся от finish (если я так все понял), тогда придется переделывать много запросов. Удобней наверное сессию делить до 00:00 и после 00:00. Но тогда эффективность работы будет не корректно рассчитываться (если много ночных работников). Можно ли пренебречь этим?
(В ответ на comment #3) > При использовании поле len мы откажемся от finish (если я так все понял), тогда > придется переделывать много запросов. Нет, не откажемся. Просто не будем высчитывать len каждый раз. > Удобней наверное сессию делить до 00:00 и после 00:00. Но тогда эффективность > работы будет не корректно рассчитываться (если много ночных работников). Можно > ли пренебречь этим? Я думаю, лучше выбрать, чтобы стройнее выглядело технически. Но, конечно, лучше минимизировать ситуации, когда решаемая бага пересекает границу сессий.