BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
СообщениеДобавлено: 08 июл 2014, 11:25 
Не в сети
Клиент

Зарегистрирован: 10 окт 2012, 17:00
Сообщения: 339
Карма: 0
Попробовал получить список периодов, когда договор был, например, в статусе "Отключен", с помощью методов getPeriodList(int cid, java.util.Set<java.lang.Integer> statuses, java.util.Date startMonth, java.util.Date endMonth) и getStatusList(int cid, java.util.Set<java.lang.Integer> statuses, java.util.Date startMonth, java.util.Date endMonth) класса ContractStatusManager.

Для этого набросал вот такой код:

Цитата:
Date dt_begin = new Date();
Date dt_end = new Date();
dt_begin = TimeUtils.convertStringToDate("2014-01-01");
dt_end = TimeUtils.convertStringToDate("2014-06-31");

Set intSet = new HashSet();
intSet.add(3);

System.out.println( csm.getStatusList(158) );
System.out.println( csm.getPeriodList(158, intSet, dt_begin, dt_end) );


и жду, что он мне выведет список периодов всех статусов на договоре и список периодов со статусом "Закрыт". Получаю первый результат:

Код:
[bitel.billing.server.contract.bean.ContractStatus@[id=436;contractId=158;status=0;dateFrom=2013-01-09;dateTo=2013-01-31;comment=;]@322a95f4,
bitel.billing.server.contract.bean.ContractStatus@[id=700;contractId=158;status=3;dateFrom=2013-02-01;dateTo=2013-03-31;comment=Недостаток средств для начисления абонплаты;]@9dadfe7,
bitel.billing.server.contract.bean.ContractStatus@[id=1303;contractId=158;status=0;dateFrom=2013-04-01;dateTo=2013-04-04;comment=Разблокирован модулем абонплат по достаточному платежу;]@a1bbbf,
bitel.billing.server.contract.bean.ContractStatus@[id=1351;contractId=158;status=3;dateFrom=2013-04-05;dateTo=2013-04-07;comment=Недостаток средств для начисления абонплаты;]@7a2cf8eb,
bitel.billing.server.contract.bean.ContractStatus@[id=1399;contractId=158;status=0;dateFrom=2013-04-08;dateTo=2013-04-12;comment=Разблокирован модулем абонплат по достаточному платежу;]@1e8a4af7,
bitel.billing.server.contract.bean.ContractStatus@[id=1489;contractId=158;status=3;dateFrom=2013-04-13;dateTo=2013-04-20;comment=Недостаток средств для начисления абонплаты;]@93fadcb,
bitel.billing.server.contract.bean.ContractStatus@[id=1597;contractId=158;status=0;dateFrom=2013-04-21;dateTo=2013-04-22;comment=Разблокирован модулем абонплат по достаточному платежу;]@33aaef2b,
bitel.billing.server.contract.bean.ContractStatus@[id=1634;contractId=158;status=3;dateFrom=2013-04-23;dateTo=2014-04-28;comment=Недостаток средств для начисления абонплаты;]@1b3c0a8d,
bitel.billing.server.contract.bean.ContractStatus@[id=11571;contractId=158;status=0;dateFrom=2014-04-29;dateTo=2014-05-29;comment=Разблокирован модулем абонплат по достаточному платежу;]@2d8bcf3,
bitel.billing.server.contract.bean.ContractStatus@[id=12811;contractId=158;status=3;dateFrom=2014-05-30;dateTo=2014-06-15;comment=Недостаток средств для начисления абонплаты;]@635cf6fa,
bitel.billing.server.contract.bean.ContractStatus@[id=13470;contractId=158;status=0;dateFrom=2014-06-16;dateTo=null;comment=Разблокирован модулем абонплат по достаточному платежу;]@6c5aca0c]


и второй:
Код:
[01.01.2014-28.04.2014, 30.05.2014-15.06.2014]


то есть выводятся два периода немного не о том. Расскажите, пожалуйста, как работают эти два метода, в документации комментариев по ним нет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июл 2014, 11:50 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Почему не то ? Так вы покажите скриншот какие статусы у вас реально . И какая версия у вас ?

Один метод выводи все статусы, второй - с фильтрацией по датам


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июл 2014, 11:56 
Не в сети
Разработчик

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июл 2014, 15:07 
Не в сети
Клиент

Зарегистрирован: 10 окт 2012, 17:00
Сообщения: 339
Карма: 0
Версия 6.1, а статусы реальные - как раз те, что выводит метод csm.getStatusList(158).

Я подумал, что в параметр java.util.Set<java.lang.Integer> statuses можно передать список статусов, которые и выведет метод getPeriodList. То есть - если передать, например, статус "3", то метод выведет все периоды, которые есть на договоре, с закрытым статусом. Ну а раз эти методы о другом, тогда буду с общим списком статусов работать.

Спасибо за ответ.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 июл 2014, 15:33 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Там есть еще
Код:
 getStatusList( int cid, Set<Integer> statuses, java.util.Date startMonth, java.util.Date endMonth )


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

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


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

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


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

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