BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
 Заголовок сообщения: Помощь с TariffRequest()
СообщениеДобавлено: 31 окт 2011, 14:35 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
Всем доброго дня. пытаюсь разобраться с получением стоимости абонплаты для конкретного договора. Ниже глобальный скрипт. Подскажите плиз что не так. Почему значение cost всегда null выдаеться.

сам скрипт.

Код:
import java.util.*;
import bitel.billing.server.contract.bean.*;
import bitel.billing.server.tariff.*;
import bitel.billing.server.util.*;

public void main( setup, con, conSlave )
{

// код услуги
sid = 15;
// код экземпляра модуля
mid = 3;
//код договора
cid = 1767;
//дата
DateNow = new GregorianCalendar();


cost = null;

// поиск параметров абонплаты
tts = new ContractManager( con ).getRealtimeTariffTreeSet( cid, DateNow, "npay", mid, true );
for( TariffModuleTree tree : tts.getTreeList( DateNow ) )
{
   req_cost = new TariffRequest();
   req_cost.setRequestParam( "action", "calculate" );
   req_cost.setRequestParam( "sid", sid );
   req_cost.setRequestParam( "month_days", 1 );
   req_cost.setRequestParam( "period_days", 1 );
   req_cost.setRequestParam( "time",  DateNow);
   tree.processRequest( req_cost );
   cost = (Double)req_cost.getResponseParam( "cost" );   
           print (cost);
}
}


резаультат.

Код:
COMPLETE_TIME: 31.10.11 14:27:04
PROCESS_TIME: 27
OUT:
null
ERROR:
EXCEPTIONS:
WARNINGS:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 31 окт 2011, 14:50 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Модуль то какой?

Сделайте print(req_cost); для начала


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 31 окт 2011, 15:23 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
Cromeshnic писал(а):
Модуль то какой?

Сделайте print(req_cost); для начала



Модуль npay. Я ведь писал что нужно узнать стоимость абонплаты.

print(req_cost); выдал следующее

Код:
accepted => false relevance => -1 REQ: sid => 15 time => 31.10.2011 15:21:15 action => calculate month_days => 1 period_days => 1 RESP: HIST:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 31 окт 2011, 16:51 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
ооо....хороший скриптик

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 31 окт 2011, 17:06 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
skyb писал(а):
ооо....хороший скриптик


вот разобраться бы только. жаль по этому классу документации нету. из примеров с вики взял.
а в общем он будет частью другого большого скрипта.

неужели никто помочь не может?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 01 ноя 2011, 16:50 
Не в сети
Аватара пользователя

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
метод getResponseParam( String ) возвращает Object, а вам нужно что то типа вот этого
Код:
cost = Double.valueOf( getResponseParam( "cost" ) );

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 01 ноя 2011, 17:37 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
Artur писал(а):
метод getResponseParam( String ) возвращает Object, а вам нужно что то типа вот этого
Код:
cost = Double.valueOf( getResponseParam( "cost" ) );


чтот не работает. (((

Код:
EXCEPTIONS:
Command not found: getResponseParam( java.lang.String )
Command not found: getResponseParam( java.lang.String ) : at Line: 32 : in file: test : getResponseParam ( "cost" )



а если так cost = Double.valueOf(req_cost.getResponseParam( "cost" ) ); то

Код:
EXCEPTIONS:
Method Invocation Double.valueOf
Method Invocation Double.valueOf : at Line: 32 : in file: test : Double .valueOf ( req_cost .getResponseParam ( "cost" ) )

Target exception: java.lang.NullPointerException



Выложили бы лучше описание класса. Было бы легче насного. а то второй день уже сижу в примеры на вики гляжу, но чтот не один из вариантов не работает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 14 ноя 2011, 13:25 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
ну что, никто чтоль помоч не может???

ап )))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 14 ноя 2011, 16:21 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
В первоначальной версии скрипта замените
Код:
cost = null;


На
Код:
Double cost = null;


Остальное не меняйте.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 14 ноя 2011, 16:41 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Код:
int sid = ...;
int mid = ...;
int cid = ...;

?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 14 ноя 2011, 19:34 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
snark писал(а):
Код:
int sid = ...;
int mid = ...;
int cid = ...;

?


Хуже не будет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 15 ноя 2011, 22:34 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
результат не изменился. (((


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 23 ноя 2011, 12:36 
Не в сети
Разработчик

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

А вы тариф покажите , может там стоимость действительно не находит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 01 дек 2011, 16:12 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
вот.

Вложение:
111.JPG
111.JPG [ 19.54 КБ | Просмотров: 7698 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 08 дек 2011, 16:57 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
up :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 13 дек 2011, 17:54 
Не в сети

Зарегистрирован: 08 окт 2009, 16:06
Сообщения: 186
Карма: 20
вроде разобрался. скрипт для версии 4.6. а у меня 5.0

для 5.0 так же нашел сдесь. http://wiki.bgbilling.ru/index.php/Определение_размера_абонентской_платы

но там ошибка. о ней написано тут viewtopic.php?f=19&t=3656&hilit=TariffRequest&start=15. исправьте в вики плиз.

после исправления все начало работать.
_________________________________________________________________________

Но к сожалению на этом мытарства не закончились.

Данный скрипт расчитывает абонплату для конкретного договора. что в моем случае не совсем приемлемо. такак пишу скрипт разблокировки договора при достаточности денег на балансе. Если договор весь месяц был закрыт, то скрипт выдает нулевую стоимость.

Уважаемые разработчики существуют ли методы получения стоимости услуги в тарифном плане. Вданном случае мне нужно получить стоимость услуги модуля npay.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помощь с TariffRequest()
СообщениеДобавлено: 13 дек 2011, 18:49 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
braek-neck писал(а):
исправьте в вики плиз

Это же вики - регистрируетесь, исправляете и оставляете комментарий вида "для того чтобы работало в 5.0 было поправлено ..." - все Вам только спасибо скажут ;)


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

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


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

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


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

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