forum.bitel.ru
http://forum.bitel.ru/

Ошибка в условии InetSessionLogDao.listChildren?
http://forum.bitel.ru/viewtopic.php?f=44&t=13124
Страница 1 из 1

Автор:  Bazhutyan [ 22 ноя 2018, 09:01 ]
Заголовок сообщения:  Ошибка в условии InetSessionLogDao.listChildren?

В методе InetSessionLogDao.listChildren в sql запросе появилась жёсткая проверка на session.sessionStart.

При этом в вызове InetSessionService.inetSessionLogContractList происходит обнуление часов/минут/секунд в dateFrom и таким образом возвращаются только те дочерние сессии,
которые прервались на начале суток, т.е. у которых время 00:00:00.

Проблема в 7.1 уже давно похоже. Возможно и в 7.0...

Вложения:
bg_bad_children.png
bg_bad_children.png [ 159.35 КБ | Просмотров: 1454 ]

Автор:  Bazhutyan [ 23 ноя 2018, 08:42 ]
Заголовок сообщения:  Re: Ошибка в условии InetSessionLogDao.listChildren?

Уточнение - проблема не в обнулении часов/минут/секунд dateFrom в inetSessionLogContractList.
В InetSessionLogDao.listChildren при заполнении параметра в sql-запросе используется TimeUtils.convertDateToSqlDate, которая возвращает дату вида "yyyy-mm-dd".
Возможно, в запросе "WHERE (? OR session.sessionStart=?) AND session.parentId=?" нужно изменить условие на session.sessionStart>=?
Но, может быть такое, что родительская сессия может начаться "вчера", а дочерняя "сегодня"?

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/