Возможно, что такая тема уже была, тогда прошу дать ссылку, поиском не нашел. Встала задача при подключении опции устанавливать ей определенное время окончания. На событие "Активирована/Реактивирована тарифная опция" навесил скрипт:
Код:
public class optionCloseDate
extends EventScriptBase
{
@Override
public void onEvent( Event event1, Setup setup2, ConnectionSet connectionSet3 )
throws Exception
{
Calendar dt = new GregorianCalendar();
Connection con1 = connectionSet3.getConnection();
ContractTariffOptionDao contract_tariffoption = new ContractTariffOptionDao(con1);
List<ContractTariffOption> list1 = contract_tariffoption.list(event1.getContractId(), dt.getTime());
print( "> list.size() -> " + list1.size());
print( ">> list1.get(0).getTimeTo() -> " + list1.get(0).getTimeTo());
print( ">>> list1.get(0).getOptionTitle() -> " + list1.get(0).getOptionTitle());
list1.get(0).setTimeTo(TimeUtils.convertStringToDate( "01.03.2015 00:00:00", "dd.MM.yyy HH:mm:ss"));
print( ">> list1.get(0).getTimeTo() -> " + list1.get(0).getTimeTo());
list1.get(0).setDeactivatedTime(TimeUtils.convertStringToDate( "01.03.2015 00:00:00", "dd.MM.yyy HH:mm:ss"));
print( ">> list1.get(0).getDeactivatedTime() ->" + list1.get(0).getDeactivatedTime());
}
}
При подключении опции на договор получаю лог:
Код:
OUT:
> list.size() -> 1
>> list1.get(0).getTimeTo() -> null
>>> list1.get(0).getOptionTitle() -> Тест
>> list1.get(0).getTimeTo() -> Sun Mar 01 00:00:00 YAKT 2015
>> list1.get(0).getDeactivatedTime() ->Sun Mar 01 00:00:00 YAKT 2015
Но на самой опции в договоре дата окончания не выставляется. Что я делаю не так? (:
Скриншот опции в приложении. Версия биллинга:
Клиент: вер. 6.0 сборка 1370 от 09.02.2015 18:40:54
os: Linux; java: Java HotSpot(TM) Server VM, v.1.7.0_55
Сервер: вер. 6.0 сборка 1830 от 09.02.2015 18:40:58
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_55