forum.bitel.ru http://forum.bitel.ru/ |
|
Помесячная подписка,проблемы с активацией и переобсчетом http://forum.bitel.ru/viewtopic.php?f=61&t=11690 |
Страница 1 из 1 |
Автор: | e.fatoby [ 14 июн 2016, 19:18 ] |
Заголовок сообщения: | Помесячная подписка,проблемы с активацией и переобсчетом |
Всем добрый день.Используем помесячную подписку(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 |
Автор: | Amir [ 15 июн 2016, 21:31 ] |
Заголовок сообщения: | Re: Помесячная подписка,проблемы с активацией и переобсчетом |
Цитата: 1.) При использовании группового переобсчета происходит неверное начисление денежных средств за предыдущие периоды.Если производить переобсчет по каждому контракту проблемы нет. Насколько нам удалось установит закономерноcть(но это не точно) - это связано с кол-вом IPTV сервисов на договоре:если на договоре скажем три сервиса,при групповом переобсчете деньги снимаются за один. Выкладывается обновление модуля.Цитата: 2.) При добовлении и активировании продукта помесячной подписки, не всегда происходит активация прописки продукта на текущий месяц и снятие денежных средств.Т.е появляется дополнительная строка продукта но в состоянии выключен без уканаиня окончания периода Оплачен до. Пока не нашли.
|
Автор: | e.fatoby [ 09 сен 2016, 12:49 ] |
Заголовок сообщения: | Re: Помесячная подписка,проблемы с активацией и переобсчетом |
Добрый день! Есть один вопрос и проблемка.Начну с вопроса: Используем помесячную подписку(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) Очень прошу помочь разобратся с тещей проблемой и прояснить тонкости в работе данного модуля. Заранее благодарен. |
Автор: | e.fatoby [ 09 сен 2016, 12:58 ] |
Заголовок сообщения: | Re: Помесячная подписка,проблемы с активацией и переобсчетом |
Еще хочется отметить,что делал переобсчет - не помогло. Только что поменял период и сделал переобсчет,деньги нормально снялись: 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 |
Автор: | Amir [ 15 сен 2016, 18:58 ] |
Заголовок сообщения: | Re: Помесячная подписка,проблемы с активацией и переобсчетом |
Цитата: Добрый день! Есть один вопрос и проблемка.Начну с вопроса: Используем помесячную подписку(0 месяцев, с текущего,округлено,до конца месяца,запрещена).У нас настроена пролонгация месячной подписки не в реальном времени,которая происходит 1-ого числа.Если денег нет,то соотвественно пролонгации на тот момент не происходит и услуга становится не доступна.Как только абонент вносит деньги(допстим 10-ого числа) услуга включается,деньги снимаются и подписка пролонгируется.Если установлен флаг "выровнено" то до конца текущего календарного месяца(31-ое число),если флага не стоит то подписка пролонгируется равно на месяц (10-ое числа след месяца).Так ли это на самом деле? ЧТо происходит 1-ого числа при пролонгации пописки у абонентов у которых подписка активна по причине того,что не был устровлен флаг выровнен и период активации сдвинулся? Флаг выровненно означает, что периоды активности будут выровнены по времени начала действия продукта. Поэтому если мы указываем в режиме активации начало - с текущего месяца, а в тарифе указано - выровненно, то при отсутствии денег первого числа продукт отключается, а при пополнении - новый период начнется с 1-ого числа, даже если сейчас конец месяца, т.е. 1-ого числа следующего месяца произойдет списание для нового периода. Если флаг выровненно не был указан, то новый период создается с момента платежа сроком на 1 месяц. Первого числа ничего не произойдет - т.к. продукт еще активен. Далее наступает время, когда прошел месяц со времени пополнения (со времени последней активации). Если задача планировщика запускается только первого числа месяца, то опять таки ничего не произойдет - продукт должен остаться активным до следующего выполнения задачи. Первого числа следующего месяца задача запустится, произведет начисление и активирует новый период - опять-таки с текущего момента. Получается, что в этом варианте абонент может платить через месяц. Поэтому задачу рекомендую поставить на выполнение каждый день. Тогда при окончании периода в середине месяца (для тех тарифов, где не стоит флаг "выровненно") продукт отключится или произойдет начисление. |
Автор: | Amir [ 15 сен 2016, 19:01 ] |
Заголовок сообщения: | Re: Помесячная подписка,проблемы с активацией и переобсчетом |
Цитата: При активации услуги был корректно назанчен период с 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 |
Автор: | Amir [ 15 сен 2016, 19:03 ] |
Заголовок сообщения: | Re: Помесячная подписка,проблемы с активацией и переобсчетом |
Цитата: Еще хочется отметить,что делал переобсчет - не помогло. Да, получается период теперь начинается в сентябре и начисление производится за сентябрь.
Только что поменял период и сделал переобсчет,деньги нормально снялись: 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 |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |