forum.bitel.ru http://forum.bitel.ru/ |
|
Размер абонентской платы BGBS http://forum.bitel.ru/viewtopic.php?f=19&t=2638 |
Страница 1 из 1 |
Автор: | ViacheslavR [ 27 июл 2009, 19:03 ] |
Заголовок сообщения: | Размер абонентской платы BGBS |
Добрый день. Хотелось бы уточнить использование метода getServiceObjectList, он постоянно выдает пустой список. Задача, то в общем не сложная: возратить размер абонплат из тарифного плана для текущего договора. Но вот тут какой-то затык. На параметры в методе внимание не обращайте... Код: import bitel.billing.server.contract.bean.*;
import bitel.billing.server.tariff.bean.*; import bitel.billing.server.script.event.*; import bitel.billing.server.service.bean.*; import bitel.billing.server.tariff.*; import bitel.billing.server.util.*; import bitel.billing.server.npay.*; import bitel.billing.server.npay.bean.*; import java.util.*; if (event.getActionId() != 13) //сброс обработчиков отличных от id=13 { return; } // номер модуля NPAY NPAY_MID = 3; cid = event.getContractID(); cstm = new ContractStatusManager( con ); som = new ServiceObjectManager(con, NPAY_MID); List sol = som.getServiceObjectList(cid, 4, NPAY_MID, 4); event.addReport(" "+sol); for (Iterator it=sol.iterator(); it.hasNext(); ) { su = (ServiceObject)it.next(); print ( su.getObjectTitle() ); } //event.addReport( so.getComment() ); event.addReport("================> OK") версия биллинга 4.6 сборка 513 |
Автор: | stark [ 29 июл 2009, 19:20 ] |
Заголовок сообщения: | |
вменсто objectId надо -1 давать ..вы же не для объекта ищите как я понимаю |
Автор: | ViacheslavR [ 30 июл 2009, 00:41 ] |
Заголовок сообщения: | |
Вот что я нашел в javadoc Код: getServiceObjectList
public java.util.List<ServiceObject> getServiceObjectList(int cid, int objectId, int entityMid, int entityId) Возвращает список абонплат договора. Фильтры по entityId, entityId добавляются в запрос, только при неотрицательных значениях. Фильтр по objectId добавлется только при положительном значении. Parameters: cid - код договора objectId - код объекта entityMid - код модуля, к сущности которого привязана абонплата entityId - код сущности модуля, к которой привязана абонплата Returns: к моему случаю: cid = event.getContractID(); objectId = -1; entityMid = ID модуля NPAY ??? entityId = ???? |
Автор: | stark [ 31 июл 2009, 12:30 ] |
Заголовок сообщения: | |
ViacheslavR писал(а): Parameters:
cid - код договора objectId - код объекта entityMid - код модуля, к сущности которого привязана абонплата entityId - код сущности модуля, к которой привязана абонплата Returns: [/code] к моему случаю: cid = event.getContractID(); objectId = -1; entityMid = ID модуля NPAY ??? entityId = ???? entityMid = 0 entityId = 0 Эти пременные сейчас используются только для привязки абонплат к поинтам модуля Phone . там тогда хроанится код модукля телефонии и код поинта . вам же надо нули передать |
Автор: | ViacheslavR [ 02 авг 2009, 22:36 ] |
Заголовок сообщения: | |
Код: time = Calendar.getInstance(); // код экземпляра модуля mid = 1; tts = new ContractManager( con ).getRealtimeTariffTreeSet( cid, time, "Абонплаты", mid, true); print(tts); tree=tts.getTreeList(time); print(tree); Это кусок кода для определения размера абонплаты я взял из вики так вот у меня вот такой вывод: Код: OUT:
bitel.billing.server.tariff.TariffTreeSet@c73750 [] Что я делаю не так? Почему массив пустой? p.s. в api я не нашел javadoc по bitel.billing.tariff.*. его планируется предоставить? p.p.s И кстате строковой параметр в getRealtimeTariffTreeSet какой смысл несет: это название модуля или название базового модуля? |
Автор: | stark [ 03 авг 2009, 14:32 ] |
Заголовок сообщения: | |
нужно не ""Абонплаты", а "npay" |
Автор: | ViacheslavR [ 03 авг 2009, 22:50 ] |
Заголовок сообщения: | |
никакого эффекта то же самое, может быть дело в версии сервера? у меня 4.6 сборка 513. Код: import bitel.billing.server.contract.bean.*;
import bitel.billing.server.tariff.bean.*; import bitel.billing.server.script.event.*; import bitel.billing.server.service.bean.*; import bitel.billing.server.tariff.*; import bitel.billing.server.util.*; import bitel.billing.server.npay.*; import bitel.billing.server.npay.bean.*; import java.util.*; import java.sql.*; cid = event.getContractID(); time = Calendar.getInstance(); // код услуги sid = 1; // код экземпляра модуля mid = 1; tts = new ContractManager( con ).getRealtimeTariffTreeSet( cid, time, "npay", mid, true ); // перебор тарифов в порядке позиций сначала персональных, потом глобальных print(tts); tree=tts.getTreeList(time); print(time); print(tree); где здесь ошибка? |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |