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

[7.0] [BUG] Учётный период Inet при переоформлении
http://forum.bitel.ru/viewtopic.php?f=44&t=12894
Страница 1 из 1

Автор:  Cromeshnic [ 10 май 2018, 09:05 ]
Заголовок сообщения:  [7.0] [BUG] Учётный период Inet при переоформлении

Привет.
Переоформляли клиента будущим числом (с 11.05.2018), и в день, предшествующий дате переоформления (10.05.2018) перестал работать инет в модуле Inet.
Открываю договор - вижу, что учётный период на старом договоре закрыт 10.05.2018 00:00:00, хотя должен быть по логике закрыт 10.05.2018 23:59:59.
Поправил руками - заработало.

Смотрю код, вижу, что там не учитываются чч:мм:сс (в т.ч. в последней версии Inet для 7.0):

Код:
public void periodWrap(InetAccountingPeriod period, int cidTo, Date dateOpen)
    throws BGException
  {
    Calendar cal = Calendar.getInstance();
    cal.setTime(dateOpen);
    cal.add(5, -1);
    Date closeDate = cal.getTime();
    if (TimeUtils.dateBefore(period.getDateTo(), dateOpen)) {
      return;
    }
    InetAccountingPeriod newPeriod = period.clone();
    newPeriod.setContractId(cidTo);
    newPeriod.setId(0);
    if (TimeUtils.dateBefore(dateOpen, period.getDateFrom()))
    {
      periodDelete(period.getId());
    }
    else
    {
      period.setDateTo(closeDate);
      newPeriod.setDateFrom(dateOpen);
      periodUpdate(period);
    }
    periodUpdate(newPeriod);
  }


(5 - это Calendar.DAY_OF_MONTH)

Поправите?

Клиент: вер. 7.0.907 / 05.09.2017 19:43:08
os: Windows 7; java: Java HotSpot(TM) Client VM, v.1.8.0_161
Сервер: вер. 7.0.1263 / 13.09.2017 20:33:05
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_144

inet: вер. 7.0.772 / 05.09.2017 19:44:59

Автор:  Cromeshnic [ 10 май 2018, 09:09 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

Кстати, в мониторе Inet пишется ошибка "[100] Ошибка сервера"
А в Dialup, насколько помню, писалось конкретно про отсутствие открытого учётного периода.
Но это уже косметика.

Автор:  Amir [ 10 май 2018, 17:14 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

Выложим сегодня для 7.0.

Автор:  Cromeshnic [ 11 май 2018, 09:24 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

Спасибо

Автор:  Cromeshnic [ 22 июн 2018, 09:31 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

Обновился, проверил - работает корректно, спасибо.

Автор:  Cromeshnic [ 11 июл 2018, 13:30 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

Есть ещё 2 бага:

1. При переоформлении проверяется учётный период на уаление:
Код:

    if (TimeUtils.dateBefore(dateOpen, period.getDateFrom()))
    {
      periodDelete(period.getId());
    }

Допустим, мы переоформляем с начала текущего месяца - тогда текущий учётный период закроется концом месяца:
dateOpen == 2018-07-01
period.getDateFrom() 2018-07-01

В итоге период будет некорректный на старом договоре:
dateFrom = 2018-07-01
dateTo = 2018-06-30

Кстати, возможно это объясняет, откуда могут образовываться дубли учётных периодов: https://forum.bitel.ru/viewtopic.php?f=44&t=11606

Видимо нужно сделать dateBeforeOrEq

2. При переносе сервиса с даты задним числом учётный период заводится потом только текущим числом (видимо при появлении текущей сессии). В результате на трафиковых тарифах сессии переносятся с начала текущего месяца например, но тарифицируются из них только те, которые стартовали с даты фактического переноса и далее.
Наткнулся на логин, который существует (с сессиями) с 01.05.2018, а учётный период - с 30.05.2018. И все сессии с 1 по 29 число бесплатны.
Видимо нужно в inetServMove также создавать учётные периоды.

Автор:  nikav80 [ 18 окт 2019, 13:21 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

В 6.2 поправите? (inet: вер. 6.2.751 / 05.06.2019 19:33:06)

Автор:  skn [ 18 окт 2019, 20:46 ]
Заголовок сообщения:  Re: [7.0] [BUG] Учётный период Inet при переоформлении

todo

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