forum.bitel.ru http://forum.bitel.ru/ |
|
Изменение статуса договора при окончании периода действия http://forum.bitel.ru/viewtopic.php?f=22&t=6030 |
Страница 1 из 1 |
Автор: | ioann [ 25 окт 2011, 09:32 ] |
Заголовок сообщения: | Изменение статуса договора при окончании периода действия |
Добрый день! Прошу пояснить - должен ли изменяться статус договора на закрыт при окончании периода его действия? В доке об этом молчок, упоминается только закрытие периодов действия всех услуг - по логике и договор тогда должен сменить статус на закрыт и шлюзы должны закрыться? |
Автор: | skyb [ 25 окт 2011, 10:21 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
нет, а зачем? |
Автор: | ioann [ 25 окт 2011, 10:38 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
Заключил абонент договор на определённый период, по окончании он будет автоматически отключен. |
Автор: | skyb [ 25 окт 2011, 10:50 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
а период чем не подходит? |
Автор: | ioann [ 25 окт 2011, 12:00 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
Есть договор, указан период, при его окончании статус договора остается "активен", шлюз остается "открыт", соответственно услуги продолжают оказываться. А Вы о каком периоде? |
Автор: | skyb [ 25 окт 2011, 13:07 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
Справа даты период. Ну вообще это можно и как баг расценить, потому как модуль должен закрываться и уже не работать. А по факту можно написать скрипт. |
Автор: | ioann [ 25 окт 2011, 13:19 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
Скрипты наше все, но хочется штатно... А что скажут разработчики? |
Автор: | snark [ 26 окт 2011, 00:27 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
ioann писал(а): Заключил абонент договор на определённый период, по окончании он будет автоматически отключен. Создаем договор и указываем период дейсвия С даты ПО дату - даты всех услуг должны проставится автоматически в соответствии с датами договора. |
Автор: | ioann [ 26 окт 2011, 06:50 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
Так и делаем, создаем договор, указываем период, даты услуг при этом автоматически проставляются, НО при окончании периода статус договора не изменяется, соответственно не закрывается шлюз, соответственно услуги продолжают оказываться. Возможно и наверняка даты услуг имеют значение для других сервисов, работающих например с авторизацией через radius, я этого не проверял. В случае же c IPN ему образно говоря начихать на даты услуг. |
Автор: | Cromeshnic [ 26 окт 2011, 06:56 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
У нас тоже теоретически могут оставаться не расформированные интерфейсы на железках, но пока никто не жаловался на такую проблему. Видимо хватает организационных решений. На вашем месте я бы скрипт написал, который раз в сутки проходит и закрывает статусом закрытые датой договоры. зы. Я даже скрипт у себя нашел, только он не используется: Код: import bitel.billing.server.util.*; import java.sql.*; import bitel.billing.server.contract.bean.ContractStatus; import bitel.billing.server.contract.bean.ContractStatusManager; public void main( setup, con, conSlave ) { //Закрываем статусом закрытые датой договоры, если дата закрытия = вчера print("Закрываем статусом закрытые датой договоры, если дата закрытия = вчера"); PreparedStatement ps = con.prepareStatement("select c.id from contract c where c.date2=date(now())- interval 1 day"); ResultSet rs = ps.executeQuery(); while(rs.next()){ ContractStatus cs = new ContractStatus(); cs.setContractId(rs.getInt(1)); cs.setComment("Договор закрыт датой => закрываем статусом со следующего дня"); cs.setStatus(3); cs.setDate1(Calendar.getInstance()); ContractStatusManager csm = new ContractStatusManager(con); csm.changeStatus(cs, 0); print("Закрыт договор: id="+cs.getContractId()); } } ![]() Можно также выбирать не "закрытые вчера", а вообще все закрытые датой, у которых статус = активен |
Автор: | ioann [ 26 окт 2011, 13:10 ] |
Заголовок сообщения: | Re: Изменение статуса договора при окончании периода действи |
Спасибо, работает. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |