forum.bitel.ru
http://forum.bitel.ru/

IPN. Передернуть шлюзы для открытых договоров
http://forum.bitel.ru/viewtopic.php?f=25&t=4394
Страница 1 из 1

Автор:  nolka4 [ 06 авг 2010, 09:47 ]
Заголовок сообщения:  IPN. Передернуть шлюзы для открытых договоров

что это такое:
Скрипт нужен в тех случаях, когда у вас "случайным" образом на шлюзах потерлись правила для IP клиентов. Скрипт в цикле сначала закрывает шлюзы для каждого открытого договора, потом открывает.

требования:
  • BGBilling 4.6 (на остальных не тестировалось, но по идее должно тоже работать)

установка:
  • Создать новый глобальный скрипт поведения
  • Скопировать этот код в тело скрипта:
    Код:
    import bitel.billing.server.util.*;
    import bitel.billing.server.ipn.bean.*;

    public void main( setup, con, conSlave )
    {
       st = con.prepareStatement("SELECT `id`, `comment` FROM `contract` WHERE `id` IN(SELECT `cid` FROM `contract_service` WHERE `sid` IN(КОДЫ_УСЛУГ_МОДУЛЯ_IPN))  AND `status`=0");
       rs = st.executeQuery();
       gm = new IPNContractStatusManager(con, КОД_МОДУЛЯ_IPN, setup.getSetup().getModuleSetup(КОД_МОДУЛЯ_IPN));
       while(rs.next())
       {
          print("reset gate for cid: "+rs.getInt(1)+" - "+rs.getString(2));
          gm.changeStatus(rs.getInt(1),2,1,true);
                    gm.changeStatus(rs.getInt(1),0,1,true);
       }
    }
  • В скрипте вместо КОДЫ_УСЛУГ_МОДУЛЯ_IPN вписать коды услуг Вашего модуля IPN через запятую
  • В скрипте вместо КОД_МОДУЛЯ_IPN Ваш код, под которым у Вас установлен модуль IPN

как пользоваться:
  • заходим в скрипты поведения
  • открываем созданный скрипт с кодом приведенным выше
  • нажимаем кнопку "Выполнить скрипт"
  • ждем пока скрипт выполнится, одновременно наблюдая за логом манада

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/