BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Лимит на новогодние праздники
СообщениеДобавлено: 31 дек 2012, 18:41 
Не в сети
Аватара пользователя

Зарегистрирован: 12 июл 2010, 21:22
Сообщения: 319
Карма: 11
Всех с наступающим 2013 годом!

Есть абоненты которые не успели заплатить за интернет, и буквально через несколько часов билинг их отключит, и вот хотелось бы подарить им отсрочку платежа на новогодние каникулы, но как сделать массово изменение лимита не знаю, подскажите может кто сталкивался с такой задачей?

_________________
Код:
    Клиент: вер. 6.2.874 / 05.02.2018 12:48:36
    os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_151
  Сервер: вер. 6.2.1203 / 05.02.2018 12:50:34
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 31 дек 2012, 19:14 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Вас тоже с наступающим

viewtopic.php?f=22&t=7576

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 31 дек 2012, 19:34 
Не в сети
Аватара пользователя

Зарегистрирован: 12 июл 2010, 21:22
Сообщения: 319
Карма: 11
Спасибо!!! Почти то что нужно, осталось придумать как договора перебрать )

_________________
Код:
    Клиент: вер. 6.2.874 / 05.02.2018 12:48:36
    os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_151
  Сервер: вер. 6.2.1203 / 05.02.2018 12:50:34
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 31 дек 2012, 20:07 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
в глобальных скриптах поведения
Код:
import bitel.billing.server.util.*;
import bitel.billing.server.contract.bean.*;
import bitel.billing.common.*;
import bitel.billing.server.admin.bean.*;
import ru.bitel.common.*;
import java.math.*;
import java.sql.*;
import java.util.*;

public void main( setup, con, conSlave )
{

   String query = "SELECT id FROM contract WHERE gr&(1<<3) > 0";
   PreparedStatement ps = con.prepareStatement( query );
   ResultSet rs = ps.executeQuery();
   while ( rs.next() )
   {
      cid = rs.getInt(1);
      lm = new LimitManager(con);
      summa = new BigDecimal(2000);
      days = 3;
      lm.lowLimit(cid, summa, days);
   }
}

Изменяет лимиты для всех договоров в группе договоров с ID = 3

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 31 дек 2012, 20:13 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Можно и как то так
Код:
import bitel.billing.server.util.*;
import bitel.billing.server.contract.bean.*;
import bitel.billing.common.*;
import bitel.billing.server.admin.bean.*;
import ru.bitel.common.*;
import java.math.*;
import java.sql.*;
import java.util.*;

public void main( setup, con, conSlave )
{

   String query = "SELECT id FROM contract WHERE gr&(1<<3) > 0";
   PreparedStatement ps = con.prepareStatement( query );
   ResultSet rs = ps.executeQuery();
   while ( rs.next() )
   {
      cid = rs.getInt(1);
      lm = new LimitManager(con);
      summa = new BigDecimal(-2000);
      days = 3;
      lm.updateContractLimit(User.USER_SERVER, summa, cid, "Временное изменение лимита на новогодние праздники", "3");
   }
}

Но в этом случае не создается автоматом задача восстановления лимита. Может она и есть где в API но я что то не найду так сразу :)

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 31 дек 2012, 21:10 
Не в сети
Аватара пользователя

Зарегистрирован: 12 июл 2010, 21:22
Сообщения: 319
Карма: 11
Спасибо огромное, получилось, теперь все будут включены, воспользовался первым способом, немного модернизировав запрос.
Код:
SELECT `id` FROM `contract` WHERE `gr` = 1 AND `status` = 0

_________________
Код:
    Клиент: вер. 6.2.874 / 05.02.2018 12:48:36
    os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_151
  Сервер: вер. 6.2.1203 / 05.02.2018 12:50:34
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 08 янв 2013, 09:26 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
borin писал(а):
воспользовался первым способом, немного модернизировав запрос.
Код:
SELECT `id` FROM `contract` WHERE `gr` = 1 AND `status` = 0
borin писал(а):
Код:
WHERE `gr` = 1


Группы надо искать так, как было показано выше, т.е. так:
Код:
SELECT ... FROM contract WHERE gr&(1<<цифровой_id_искомой_группы) > 0

Иначе запросто найдете не то, что ищите.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 08 янв 2013, 12:08 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
Ну если группа всегда одна то норм будет и так

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 19 фев 2014, 10:56 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
как переделать на 6.0, копипаст не вкатил и лог
Код:
ScriptInstance - Invoke method limit : main


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 19 фев 2014, 11:03 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Так новый год закончился же :D

Динкод.
Я правда нифига не помню когда и зачем я его писал.
Код:
package ru.ellcom.test;

import java.math.BigDecimal;
import java.sql.*;
import java.util.*;

import ru.bitel.bgbilling.kernel.module.common.bean.User;
import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;
import bitel.billing.common.TimeUtils;
import bitel.billing.server.contract.bean.Contract;
import bitel.billing.server.contract.bean.ContractManager;
import bitel.billing.server.contract.bean.LimitManager;

public class changeLimit
   extends GlobalScriptBase
{
   @Override
   public void execute( Setup setup, ConnectionSet connectionSet )
      throws Exception
   {
      print("Start");
      Connection con  = connectionSet.getConnection();
      ContractManager cm = new ContractManager(con);
      LimitManager lm = new LimitManager(con);
      
      
      long timeStart = System.currentTimeMillis();
      String query =    " SELECT c.id FROM contract AS c " +
                  " WHERE c.title LIKE '301%' AND c.closesumma=0 "; 
      java.sql.PreparedStatement ps = con.prepareStatement( query );
      ResultSet rs = ps.executeQuery();
      while ( rs.next() )
      {
         int cid = rs.getInt(1);
         Contract contract = cm.getContractById(cid);
         if(contract.getFc() == 1)
         {
            print(cid);
            BigDecimal limit = new BigDecimal(-50000);
            lm.updateContractLimit(User.USER_SERVER, limit, cid, "Лимит установленный для кредитовых телефонов", "");
         }
         if(contract.getFc() == 0)
         {
            print(cid);
            BigDecimal limit = new BigDecimal(-10000);
            lm.updateContractLimit(User.USER_SERVER, limit, cid, "Лимит установленный для кредитовых телефонов", "");
         }
      }
      rs.close();
      ps.close();
      long timeEnd = System.currentTimeMillis();
      print( "Process time: " + (timeEnd - timeStart)/1000 + " s." );
            
   }
}

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Лимит на новогодние праздники
СообщениеДобавлено: 19 фев 2014, 11:13 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
спс осталось понять что куда:)


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

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


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

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


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

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