Определение размера абонентской платы
Материал из BiTel WiKi
(Различия между версиями)
Admin (Обсуждение | вклад)
(Новая: Фрагмент скрипта, для определения размера абонентской платы по определенной услуге. <source lang="java"> import j...)
Следующая правка →
(Новая: Фрагмент скрипта, для определения размера абонентской платы по определенной услуге. <source lang="java"> import j...)
Следующая правка →
Версия 10:58, 1 июля 2008
Фрагмент скрипта, для определения размера абонентской платы по определенной услуге.
import java.sql.*; import java.util.*; import bitel.billing.server.contract.bean.*; import bitel.billing.server.tariff.*; import bitel.billing.server.util.*; // код договора cid = 455; // на какой момент смотреть тариф time = new GregorianCalendar(); // код услуги sid = 79; // код экземпляра модуля mid = 66; tts = new ContractManager( con ).getRealtimeTariffTreeSet( cid, time, "npay", mid, true ); // перебор тарифов в порядке позиций сначала персональных, потом глобальных for( TariffModuleTree tree : tts.getTreeList( time ) ) { req = new TariffRequest(); req.setRequestParam( "action", "calculate" ); req.setRequestParam( "sid", sid ); // считаем как будто абонплата подключена весь месяц req.setRequestParam( "month_days", 1 ); req.setRequestParam( "period_days", 1 ); tree.processRequest( req ); cost = (Float)req.getResponseParam( "cost" ); if( req.wasAccepted() && cost != null ) { print( cost ); break; } }