BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 29 апр 2024, 00:36

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
СообщениеДобавлено: 14 июн 2016, 19:18 
Не в сети

Зарегистрирован: 18 июн 2012, 12:08
Сообщения: 68
Карма: 0
Всем добрый день.Используем помесячную подписку(0 месяцев, с текущего,округлено,до конца месяца,запрещена).
Есть две проблемки:
1.) При использовании группового переобсчета происходит неверное начисление денежных средств за предыдущие периоды.Если производить переобсчет по каждому контракту проблемы нет. Насколько нам удалось установит закономерноcть(но это не точно) - это связано с кол-вом IPTV сервисов на договоре:если на договоре скажем три сервиса,при групповом переобсчете деньги снимаются за один.
2.) При добовлении и активировании продукта помесячной подписки, не всегда происходит активация прописки продукта на текущий месяц и снятие денежных средств.Т.е появляется дополнительная строка продукта но в состоянии выключен без уканаиня окончания периода Оплачен до.
392 IPTV 23.05.2016 00:00:00 отключен
Однако после манимуляции с балансом(изменение лимита,расхода или прихода) происходит активация продукта,списание денежных средств.
393 IPTV 01.05.2016 00:00:00 30.06.2016 23:59:59 включен
Причем,как я это уже присал, это происходит не всегда.Выявить закономерность не удалось.


Информация о версии:

Клиент: вер. 6.1.892 / 11.05.2016 16:44:08
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_67
Сервер: вер. 6.1.1155 / 11.05.2016 16:44:12
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_67

bill: вер. 6.1.265 / 29.02.2016 17:50:25
card: вер. 6.1.210 / 29.02.2016 17:50:26
dba: вер. 6.1.164 / 29.02.2016 17:50:45
inet: вер. 6.1.732 / 14.04.2016 16:08:08
mps: вер. 6.1.210 / 11.05.2016 16:44:24
npay: вер. 6.1.199 / 18.04.2016 15:21:37
reports: вер. 6.1.205 / 11.05.2016 16:44:21
rscm: вер. 6.1.176 / 29.02.2016 17:51:03
ru.bitel.bgbilling.plugins.dispatch: вер. 6.1.83 / 11.05.2016 16:44:20
tv: вер. 6.1.235 / 11.05.2016 16:44:22
voiceip: вер. 6.1.190 / 29.02.2016 17:51:17


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 июн 2016, 21:31 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
1.) При использовании группового переобсчета происходит неверное начисление денежных средств за предыдущие периоды.Если производить переобсчет по каждому контракту проблемы нет. Насколько нам удалось установит закономерноcть(но это не точно) - это связано с кол-вом IPTV сервисов на договоре:если на договоре скажем три сервиса,при групповом переобсчете деньги снимаются за один.
Выкладывается обновление модуля.

Цитата:
2.) При добовлении и активировании продукта помесячной подписки, не всегда происходит активация прописки продукта на текущий месяц и снятие денежных средств.Т.е появляется дополнительная строка продукта но в состоянии выключен без уканаиня окончания периода Оплачен до.
Пока не нашли.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 09 сен 2016, 12:49 
Не в сети

Зарегистрирован: 18 июн 2012, 12:08
Сообщения: 68
Карма: 0
Добрый день!
Есть один вопрос и проблемка.Начну с вопроса:
Используем помесячную подписку(0 месяцев, с текущего,округлено,до конца месяца,запрещена).У нас настроена пролонгация месячной подписки не в реальном времени,которая происходит 1-ого числа.Если денег нет,то соотвественно пролонгации на тот момент не происходит и услуга становится не доступна.Как только абонент вносит деньги(допстим 10-ого числа) услуга включается,деньги снимаются и подписка пролонгируется.Если установлен флаг "выровнено" то до конца текущего календарного месяца(31-ое число),если флага не стоит то подписка пролонгируется равно на месяц (10-ое числа след месяца).Так ли это на самом деле? ЧТо происходит 1-ого числа при пролонгации пописки у абонентов у которых подписка активна по причине того,что не был устровлен флаг выровнен и период активации сдвинулся?
Теперь что касается проблемки:
Имеется подписка:
mysql> select * from inv_product where contractId=1736 and accountId=248;
+-----+------------+-----------+---------------+---------------------+--------+------------------+---------------------+-----------------+------------------+--------+-----------------+-------------+---------+-------------+
| id | contractId | accountId | productSpecId | timeFrom | timeTo | activationModeId | activationTime | activationPrice | deactivationTime | userId | deviceProductId | deviceState | comment | description |
+-----+------------+-----------+---------------+---------------------+--------+------------------+---------------------+-----------------+------------------+--------+-----------------+-------------+---------+-------------+
| 566 | 1736 | 248 | 1 | 2016-08-01 00:00:00 | NULL | 2 | 2016-08-23 13:15:30 | NULL | NULL | 49 | NULL | 1 | | |
| 567 | 1736 | 248 | 1 | 2016-08-23 00:00:00 | NULL | 2 | 2016-08-23 13:15:38 | NULL | NULL | 0 | NULL | 0 | | |
+-----+------------+-----------+---------------+---------------------+--------+------------------+---------------------+-----------------+------------------+--------+-----------------+-------------+---------+-------------+

И вот периоды пролонгации или точнее сказать месячные периоды,которые автоматически открываются при пролонгации подписки:
mysql> select * from inv_product_period where contractId=1736 and accountId=248;
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| id | contractId | accountId | productSpecId | productId | activationTime | timeFrom | timeTo | prolongationTime | flags | version |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| 585 | 1736 | 248 | 1 | 566 | 2016-08-23 13:15:30 | 2016-08-01 00:00:00 | 2016-07-31 23:59:59 | 2016-08-01 00:00:00 | 3 | 2 |
| 588 | 1736 | 248 | 1 | 566 | 2016-08-31 17:43:22 | 2016-08-31 17:43:22 | 2016-09-30 17:43:21 | 2016-08-31 17:43:22 | 0 | 0 |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
2 rows in set (0.00 sec)

При активации услуги был корректно назанчен период с 2016-08-01 по 2016-07-31.Однако пролонгация услуги произошла почему то 2016-08-31 17:43:22.Как такое могло проихойти,если задача пролонгаци в шеделе стоит на первое число?
Хочется также отметить,что абоненту 4-ого сентября был добавлен второй аккаунт.
select * from inv_product where contractId=1736 and accountId=255;
+-----+------------+-----------+---------------+---------------------+--------+------------------+---------------------+-----------------+------------------+--------+-----------------+-------------+---------+-------------+
| id | contractId | accountId | productSpecId | timeFrom | timeTo | activationModeId | activationTime | activationPrice | deactivationTime | userId | deviceProductId | deviceState | comment | description |
+-----+------------+-----------+---------------+---------------------+--------+------------------+---------------------+-----------------+------------------+--------+-----------------+-------------+---------+-------------+
| 572 | 1736 | 255 | 1 | 2016-09-01 00:00:00 | NULL | 2 | 2016-09-04 09:39:10 | NULL | NULL | 8 | NULL | 1 | | |
| 573 | 1736 | 255 | 1 | 2016-09-01 00:00:00 | NULL | 2 | 2016-09-04 09:39:23 | NULL | NULL | 0 | NULL | 0 | | |
+-----+------------+-----------+---------------+---------------------+--------+------------------+---------------------+-----------------+------------------+--------+-----------------+-------------+---------+-------------+
2 rows in set (0.00 sec)
select * from inv_product_period where contractId=1736 and accountId=255;
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| id | contractId | accountId | productSpecId | productId | activationTime | timeFrom | timeTo | prolongationTime | flags | version |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| 644 | 1736 | 255 | 1 | 572 | 2016-09-04 09:39:10 | 2016-09-01 00:00:00 | 2016-09-30 23:59:59 | 2016-09-01 00:00:00 | 0 | 1 |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
1 row in set (0.00 sec)
Проблема заключается в том,что деньги снялись только за новую подписаку нового аккаунта,почему?:
mysql> select * from tv_account_detail_17_201609 where contractId=1736;
+------------+-----------+-----------+-----+-----+---------+
| contractId | accountId | productId | sid | day | account |
+------------+-----------+-----------+-----+-----+---------+
| 1736 | 255 | 572 | 41 | 4 | 8.50000 |
+------------+-----------+-----------+-----+-----+---------+
1 row in set (0.00 sec)
Очень прошу помочь разобратся с тещей проблемой и прояснить тонкости в работе данного модуля.
Заранее благодарен.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 09 сен 2016, 12:58 
Не в сети

Зарегистрирован: 18 июн 2012, 12:08
Сообщения: 68
Карма: 0
Еще хочется отметить,что делал переобсчет - не помогло.
Только что поменял период и сделал переобсчет,деньги нормально снялись:
update inv_product_period set timeFrom='2016-09-01 00:00:00' where contractId=1736 and accountId=248 and activationTime='2016-08-31 17:43:22';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> select * from inv_product_period where contractId=1736 and accountId=248;
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| id | contractId | accountId | productSpecId | productId | activationTime | timeFrom | timeTo | prolongationTime | flags | version |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| 585 | 1736 | 248 | 1 | 566 | 2016-08-23 13:15:30 | 2016-08-01 00:00:00 | 2016-07-31 23:59:59 | 2016-08-01 00:00:00 | 3 | 2 |
| 588 | 1736 | 248 | 1 | 566 | 2016-08-31 17:43:22 | 2016-09-01 00:00:00 | 2016-09-30 17:43:21 | 2016-08-31 17:43:22 | 0 | 0 |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
2 rows in set (0.00 sec)
select * from tv_account_detail_17_201609 where contractId=1736;
+------------+-----------+-----------+-----+-----+---------+
| contractId | accountId | productId | sid | day | account |
+------------+-----------+-----------+-----+-----+---------+
| 1736 | 248 | 566 | 41 | 1 | 8.50000 |
| 1736 | 255 | 572 | 41 | 4 | 8.50000 |
+------------+-----------+-----------+-----+-----+---------+

bill: вер. 6.1.265 / 29.02.2016 17:50:25
card: вер. 6.1.211 / 31.05.2016 16:01:28
dba: вер. 6.1.164 / 29.02.2016 17:50:45
inet: вер. 6.1.734 / 22.06.2016 13:23:18
mps: вер. 6.1.215 / 08.07.2016 14:35:43
npay: вер. 6.1.200 / 20.06.2016 13:55:52
reports: вер. 6.1.205 / 11.05.2016 16:44:21
rscm: вер. 6.1.176 / 29.02.2016 17:51:03
ru.bitel.bgbilling.plugins.dispatch: вер. 6.1.85 / 08.07.2016 17:54:32
tv: вер. 6.1.240 / 15.06.2016 19:57:43
voiceip: вер. 6.1.190 / 29.02.2016 17:51:17


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 сен 2016, 18:58 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
Добрый день!
Есть один вопрос и проблемка.Начну с вопроса:
Используем помесячную подписку(0 месяцев, с текущего,округлено,до конца месяца,запрещена).У нас настроена пролонгация месячной подписки не в реальном времени,которая происходит 1-ого числа.Если денег нет,то соотвественно пролонгации на тот момент не происходит и услуга становится не доступна.Как только абонент вносит деньги(допстим 10-ого числа) услуга включается,деньги снимаются и подписка пролонгируется.Если установлен флаг "выровнено" то до конца текущего календарного месяца(31-ое число),если флага не стоит то подписка пролонгируется равно на месяц (10-ое числа след месяца).Так ли это на самом деле? ЧТо происходит 1-ого числа при пролонгации пописки у абонентов у которых подписка активна по причине того,что не был устровлен флаг выровнен и период активации сдвинулся?

Флаг выровненно означает, что периоды активности будут выровнены по времени начала действия продукта.
Поэтому если мы указываем в режиме активации начало - с текущего месяца, а в тарифе указано - выровненно, то при отсутствии денег
первого числа продукт отключается, а при пополнении - новый период начнется с 1-ого числа, даже если сейчас конец месяца, т.е. 1-ого числа следующего месяца
произойдет списание для нового периода.

Если флаг выровненно не был указан, то новый период создается с момента платежа сроком на 1 месяц.
Первого числа ничего не произойдет - т.к. продукт еще активен.
Далее наступает время, когда прошел месяц со времени пополнения (со времени последней активации).
Если задача планировщика запускается только первого числа месяца, то опять таки ничего не произойдет - продукт должен остаться активным до следующего выполнения задачи.
Первого числа следующего месяца задача запустится, произведет начисление и активирует новый период - опять-таки с текущего момента.
Получается, что в этом варианте абонент может платить через месяц.
Поэтому задачу рекомендую поставить на выполнение каждый день. Тогда при окончании периода в середине месяца (для тех тарифов, где не стоит флаг "выровненно") продукт отключится или произойдет начисление.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 сен 2016, 19:01 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
При активации услуги был корректно назанчен период с 2016-08-01 по 2016-07-31.Однако пролонгация услуги произошла почему то 2016-08-31 17:43:22.Как такое могло проихойти,если задача пролонгаци в шеделе стоит на первое число?
Может быть тогда, когда активировал было недостаточно средств для продления подписки?

Цитата:
Проблема заключается в том,что деньги снялись только за новую подписаку нового аккаунта,почему?:
mysql> select * from tv_account_detail_17_201609 where contractId=1736;
+------------+-----------+-----------+-----+-----+---------+
| contractId | accountId | productId | sid | day | account |
+------------+-----------+-----------+-----+-----+---------+
| 1736 | 255 | 572 | 41 | 4 | 8.50000 |
+------------+-----------+-----------+-----+-----+---------+

Похоже по причине, описанной в предыдущем сообщении:
Цитата:
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| id | contractId | accountId | productSpecId | productId | activationTime | timeFrom | timeTo | prolongationTime | flags | version |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+
| 585 | 1736 | 248 | 1 | 566 | 2016-08-23 13:15:30 | 2016-08-01 00:00:00 | 2016-07-31 23:59:59 | 2016-08-01 00:00:00 | 3 | 2 |
| 588 | 1736 | 248 | 1 | 566 | 2016-08-31 17:43:22 | 2016-08-31 17:43:22 | 2016-09-30 17:43:21 | 2016-08-31 17:43:22 | 0 | 0 |
+-----+------------+-----------+---------------+-----------+---------------------+---------------------+---------------------+---------------------+-------+---------+

Начисление произошло в 2016-08-31 17:43:22, продукт стал активен по 2016-09-30 17:43:21
Т.е. следующе списание должно произойти в следующий запуск задачи планировщика, которая запустится после 2016-09-30 17:43:21


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 сен 2016, 19:03 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
Еще хочется отметить,что делал переобсчет - не помогло.
Только что поменял период и сделал переобсчет,деньги нормально снялись:
update inv_product_period set timeFrom='2016-09-01 00:00:00' where contractId=1736 and accountId=248 and activationTime='2016-08-31 17:43:22';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
Да, получается период теперь начинается в сентябре и начисление производится за сентябрь.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.515s | 34 Queries | GZIP : On ]