BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 21 июн 2025, 03:27

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




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
СообщениеДобавлено: 04 июн 2009, 12:20 
В общем задача сделать просмотр балланса следующего вида:

1) локальное время системы дд.мм.гг чч.мм.сс.
2) текущий балланс Х руб.
3) этих денег хватит на Y дней.
4) предполагаемая дата отключения дд.мм.гг.
5) текущий тариф и абонентская плата в месяц ZZ руб.

1) с первым пунктом проблем нет. в вики есть пример как схватить текущее время.

2) здесь тоже нету, текущий баланс передается в исходный XML.

5) вот тут уже начинаются сложности. Вывести название тарифа легко, оно передается в XML. А вот где взять привязанную к нему абонплату?
Поидее она должна в базе где-то лежать, т.е. можно вытащить последовательностью запросов... (все пересмотрел, не могу найти)
Абонплаты у нас начисляются подневно. Их две, одна за доступ к сети (pppoe логин) - пропорциональна количеству логинов в договоре, другая за интернет - одна на договор в зависимости от тарифа. Начисляется ежедневно месячная сумма * 12 / 365.
Каким образом посчитать точно сколько все-таки абонент платит за месяц?

3,4) Тут нужно разделить текущий балланс на подневную абонплату и составить прогноз. Для безлимитов получается легко и точно.
Для трафиковых сложнее - у них помимо абонплаты есть наработка трафика.
Желательно бы учитывать реальные расходы за последние N дней и по ним составлять прогноз.
в принципе то же самое будет нормально работать и для безлимитов т.к. расходы в день постоянные.
Это можно сделать? если да, то как..


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 04 июн 2009, 12:46 
Не в сети

Зарегистрирован: 07 май 2008, 13:34
Сообщения: 594
Откуда: Москва
Карма: 27
из базы выбрать наработку за X дней и расчитать средний расход в день
проблема будет не в этом, а в ситуации когда идут смены тарифных планов, особенно когда абонент сменил тарифный план и видит в "прогнозе" батву


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 04 июн 2009, 15:10 
значит надо делать выборку наработки по трафику с даты последней смены тарифа и прибавить к ней абонплату для текущего тарифа. Для безлимитов наработка по трафику будет равна нулю, соответственно ничего не портится..
нужно только узнать в каких таблицах все это храниться..

остается только вопрос по правильной выборке абонплаты.


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 05 июн 2009, 22:56 
как в XSLT прибавить к дате N дней??


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 05 июн 2009, 23:55 
Не в сети

Зарегистрирован: 07 май 2008, 13:34
Сообщения: 594
Откуда: Москва
Карма: 27
где то неподалеку тут тема, или тут или в модуле билл, как работать с датой, можно неправильно через sqlquery, а можно правильно через расширение "григорианский календарь", правда в хз доступен ли этот класс в 4.5 из xslt


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 июн 2009, 01:22 
спасибо.
С расширениями промучался полдня (даже написал свой алгоритм для разности дат). В результате нашел решение через sql.

Код:
mysql> SELECT DATE_ADD('2008-01-02', INTERVAL 31 DAY);
        -> '2008-02-02'


выглядит по-индусски, но работает.


Разбором тарифов по БД я так понял никто не занимается.
я наверное тоже не буду, tpid передается - забью табличку соответствия абонплаты для каждого и бог с ним. Не так часто они меняются. Хотя и некузяво.

PS: было бы хорошо все-таки в вики понятный пример разбора тарифа, можно было бы очень красиво выводить дополнительную информацию.


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 08 июн 2009, 14:11 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
http://wiki.bgbilling.ru/index.php/XSLT


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 08 июн 2009, 22:42 
Спасибо. я выучил уже эту страничку наизусть.

собственно, вопрос в первом посте был в другом -
я пролазил всю базу MySql Administrator-ом и не смог найти самой цифры абонплаты. Т.е. той самой СУММЫ в день, которую я выставил в консоли при создании тарифа.
просто запутался.

потом отказался от этой идеи и забил в шаблоне жесткое соответствие абонплаты и tpid. не так уж и часто тарифы меняются, можно и переправить ручками шаблон...


Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: 09 июн 2009, 12:50 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Rionet писал(а):
Спасибо. я выучил уже эту страничку наизусть.

собственно, вопрос в первом посте был в другом -
я пролазил всю базу MySql Administrator-ом и не смог найти самой цифры абонплаты. Т.е. той самой СУММЫ в день, которую я выставил в консоли при создании тарифа.
просто запутался.

потом отказался от этой идеи и забил в шаблоне жесткое соответствие абонплаты и tpid. не так уж и часто тарифы меняются, можно и переправить ручками шаблон...


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


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 1


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

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