BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 28 апр 2024, 14:12

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




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Дебетовые абонплаты
СообщениеДобавлено: 07 апр 2015, 08:15 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
Имеем дебетовый супердоговор на который поступаю платежи абонентов, на нем нет никаких модулей, так же имеем дебетовый субдоговора с зависимым балансом на. На субдоговоре висит модуль абонплаты и интернет, если у абонента баланс меньше 0 - модуль интернет ставит статус отключен по балансу в модуле интерент, но на этот договор не действует событие в планировщике Закрытие статуса NPay договоров по балансу. Если создать отдельный договор не имеющий не субдоговоров, не супердоговора - планировщик отрабатывает нормально. Так и должно быть или это косяк? Если так и должно быть, то как можно сменить статус субдоговора по балансу?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Дебетовые абонплаты
СообщениеДобавлено: 07 апр 2015, 16:45 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Код:
#при открытии статуса супердоговора  открывать статусы зависимых договоров(1-открывать, 0 - не открывать).
debet.npay.processDependentSub=0


В доке пока этого нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Дебетовые абонплаты
СообщениеДобавлено: 07 апр 2015, 17:17 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
stark писал(а):
Код:
#при открытии статуса супердоговора  открывать статусы зависимых договоров(1-открывать, 0 - не открывать).
debet.npay.processDependentSub=0


В доке пока этого нет.

Спасибо, но это точно то что нужно? Оно дает закрывать договора по событию Закрытие статуса NPay договоров по балансу, а то судя по комментарию оно наоборот открывает :)
Я решил свою проблему глобальным скриптом(Может кому пригодится)
Код:
import java.sql.*;
import java.util.*;
import java.math.*;
import bitel.billing.server.contract.bean.*;
import bitel.billing.server.tariff.*;
import bitel.billing.server.util.*;
import ru.bitel.bgbilling.kernel.event.*;

public void main( setup, con, conSlave )
{
   ContractStatusManager contract_status_manager  = new ContractStatusManager( con );
   String sql = "SELECT id FROM contract where mode=1 and status=0";
   PreparedStatement ps = con.prepareStatement( sql );
   ResultSet rs = ps.executeQuery();
   while(rs.next())
   {
      int cid = rs.getInt( 1 );
      Calendar DateNow = Calendar.getInstance();
      BalanceUtils bu = new BalanceUtils( con );
      contract_balance = bu.getBalance (DateNow.getTime(), cid);
      
      if (contract_balance.compareTo( new BigDecimal("0.00") )<= 0)
      {
      
      print("cid: "+cid+" Contract_Balance: "+contract_balance);
         // суспендим договор
         ContractStatus status = new ContractStatus();
         status.setContractId( cid );
         status.setDateFrom( DateNow.getTime() );
         status.setDateTo( null );
         status.setStatus(3);
         status.setComment( "Недостаточно средств" );
         contract_status_manager.changeStatus( status, 0 );
      }
      else
      {
         print ("Normal");
      }
   }
}


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

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


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

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


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

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