BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
СообщениеДобавлено: 28 янв 2016, 07:53 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Не могу разобраться, как с евента получить тариф и дальше работать с ним, простой скрипт, везде deprecated.
Код:
package ru.skyb.scripts.behavior;

import java.sql.Connection;
import java.util.Calendar;
import java.util.Date;

import bitel.billing.server.contract.bean.ContractManager;
import bitel.billing.server.contract.bean.ContractParameterManager;
import bitel.billing.server.contract.bean.ContractTariff;
import bitel.billing.server.contract.bean.ContractTariffManager;
import ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariffGroup;
import ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffDao;
import ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffGroupDao;
import ru.bitel.bgbilling.kernel.event.Event;
import ru.bitel.bgbilling.kernel.event.events.ContractTariffUpdateEvent;
import ru.bitel.bgbilling.kernel.module.common.bean.User;
import ru.bitel.bgbilling.kernel.module.server.bean.UserManager;
import ru.bitel.bgbilling.kernel.script.server.dev.EventScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;

public class ChangeTariffFuture
   extends EventScriptBase<ContractTariffUpdateEvent>
{
   @Override
   public void onEvent( ContractTariffUpdateEvent event, Setup setup, ConnectionSet set )
      throws Exception
   {
      Connection con = set.getConnection();   
      Calendar c = Calendar.getInstance();
      Calendar fourMounth = Calendar.getInstance();
      fourMounth.add(Calendar.MONTH, 4);
      c.add(Calendar.MONTH, 4);
      c.add(Calendar.DAY_OF_MONTH, -1);
      int cid = event.getContractId();
      User user = new UserManager(con).getUsersMap().get(event.getUserId());
      ContractTariffGroupDao ctgd = new ContractTariffGroupDao (con);
      ContractTariffGroup ctg = new ContractTariffGroup();
      ContractTariff ct = event.getContractTariff();
      ContractTariff ctn = new ContractTariff();
      ContractTariffManager ctm = new ContractTariffManager(con);
      
      if (ct.getTariffPlanId() == 144 && ct.getDate2() == null)
      {
         ct.setContractId(cid);
         ct.setComment("Зкрылся в " + new Date() + " пользоввателем " + user.getName());
         ct.setDate2(c);
         ctm.updateContractTariff(ct);
         ctn.setContractId(cid);
         ctn.setDate1(fourMounth);
         ctn.setPos(ct.getPos()+1);
         ctn.setComment("Установлен в " + new Date() + " пользоввателем " + user.getName());
         ctn.setTariffPlanId(120);
         ctm.updateContractTariff(ctn);
         ctg.setContractId(cid);
         ctg.setComment("Установлен в " + new Date() + " пользоввателем " + user.getName());
         ctg.setDateFrom(fourMounth.getTime());
         ctg.setTariffGroupId(1);
         ctgd.update(ctg);
         
      }
   }

}

Все поля
Код:
      ContractTariff ct = event.getContractTariff();
      ContractTariff ctn = new ContractTariff();
      ContractTariffManager ctm = new ContractTariffManager(con);
      
      if (ct.getTariffPlanId() == 144 && ct.getDate2() == null)
      {
         ct.setContractId(cid);
         ct.setComment("Зкрылся в " + new Date() + " пользоввателем " + user.getName());
         ct.setDate2(c);
         ctm.updateContractTariff(ct);
         ctn.setContractId(cid);
         ctn.setDate1(fourMounth);
         ctn.setPos(ct.getPos()+1);
         ctn.setComment("Установлен в " + new Date() + " пользоввателем " + user.getName());
         ctn.setTariffPlanId(120);
         ctm.updateContractTariff(ctn);
помечены как deprecated, если использовать ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff, то в в классе ru.bitel.bgbilling.kernel.event.events.ContractTariffUpdateEvent нет этого метода. Так же не понятно как на заменненый bitel.billing.server.contract.bean.ContractTariffManager, классом ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffDao использовать, там уже идет ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff которого нет в евенте. ЧЯДНТ ?
Код:
Сервер: вер. 6.2.931 / 14.08.2015 18:01:24
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 28 янв 2016, 08:01 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Если частично убрать деприкейты получится как то так
Код:
package ru.skyb.scripts.behavior;

import java.sql.Connection;
import java.util.Calendar;
import java.util.Date;

import bitel.billing.server.contract.bean.ContractManager;
import bitel.billing.server.contract.bean.ContractParameterManager;
import bitel.billing.server.contract.bean.ContractTariff;
import bitel.billing.server.contract.bean.ContractTariffManager;
import ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariffGroup;
import ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffDao;
import ru.bitel.bgbilling.kernel.contract.api.server.bean.ContractTariffGroupDao;
import ru.bitel.bgbilling.kernel.event.Event;
import ru.bitel.bgbilling.kernel.event.events.ContractTariffUpdateEvent;
import ru.bitel.bgbilling.kernel.module.common.bean.User;
import ru.bitel.bgbilling.kernel.module.server.bean.UserManager;
import ru.bitel.bgbilling.kernel.script.server.dev.EventScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;

public class ChangeTariffFuture
   extends EventScriptBase<ContractTariffUpdateEvent>
{
   @Override
   public void onEvent( ContractTariffUpdateEvent event, Setup setup, ConnectionSet set )
      throws Exception
   {
      Connection con = set.getConnection();   
      Calendar c = Calendar.getInstance();
      Calendar fourMounth = Calendar.getInstance();
      fourMounth.add(Calendar.MONTH, 4);
      c.add(Calendar.MONTH, 4);
      c.add(Calendar.DAY_OF_MONTH, -1);
      int cid = event.getContractId();
      User user = new UserManager(con).getUsersMap().get(event.getUserId());
      ContractTariffGroupDao ctgd = new ContractTariffGroupDao (con);
      ContractTariffGroup ctg = new ContractTariffGroup();
      ContractTariff ct = event.getContractTariff();
      ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff ctn = new ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff();
      ContractTariffDao ctd = new ContractTariffDao (con);
      ContractTariffManager ctm = new ContractTariffManager(con);
      
      if (ct.getTariffPlanId() == 144 && ct.getDate2() == null)
      {
         ct.setContractId(cid);
         ct.setComment("Зкрылся в " + new Date() + " пользоввателем " + user.getName());
         ct.setDate2(c);
         ctm.updateContractTariff(ct);
         ctn.setContractId(cid);
         ctn.setDateFrom(fourMounth.getTime());
         ctn.setPosition(ct.getPos()+1);
         ctn.setComment("Установлен в " + new Date() + " пользоввателем " + user.getName());
         ctn.setTariffPlanId(120);
         ctd.update(ctn);
         ctg.setContractId(cid);
         ctg.setComment("Установлен в " + new Date() + " пользоввателем " + user.getName());
         ctg.setDateFrom(fourMounth.getTime());
         ctg.setTariffGroupId(1);
         ctgd.update(ctg);
         
      }
      ctgd.recycle();
      ctd.recycle();
   }

}

но что делать с евентом я так и не понял

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 янв 2016, 17:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
все так плохо? вы скажите где косяк, ждать поправки или я косяпор и на что обратить внимания

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 фев 2016, 08:01 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
ап

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 фев 2016, 17:58 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
ап

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 фев 2016, 05:27 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
бамп

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 фев 2016, 12:12 
Не в сети
Аватара пользователя

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
Здравствуйте.
У старого bitel.billing.server.contract.bean.ContractTariff есть метод

Код:
public static ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff toNew( bitel.billing.server.contract.bean.ContractTariff contractTariff )


На вход идет старый bitel.billing.server.contract.bean.ContractTariff, а на выходе получаем новый ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff, который можно использовать в ContractTariffDao. Надеюсь поможет.

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 фев 2016, 13:25 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Что то я не в api ненашел такого метода, и в эклипс тишина. Есть
bitel.billing.server.contract.bean.ContractTariff
public static ContractTariff toNew(ContractTariff contractTariff), в новом public static ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff нет такого метода

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 фев 2016, 13:33 
Не в сети
Аватара пользователя

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
Я не очень понимаю, в чем у вас возникла проблема. В событие передается старый bitel.billing.server.contract.bean.ContractTariff, вы его преобразуете в новый ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff с помощью метода toNew() у старого, вызвав bitel.billing.server.contract.bean.ContractTariff.toNew(<передаем_сюда_то_что_пришло_в_событии>) и дальше уже используете новый bean.

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 фев 2016, 13:52 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Это видимо я не правильно понял как пользоваться методом))) Да, так стало ещё меньше деприкейтов, но все же есть

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 фев 2016, 14:05 
Не в сети
Аватара пользователя

Зарегистрирован: 27 янв 2010, 16:12
Сообщения: 941
Откуда: Уфа
Карма: 124
Главное, что пока работает =) Других вариантов пока нет, т.к. событие работает только с старым bean.

_________________
С уважением, Гареев Артур. Вежливый разработчик ООО "Бител".


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

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


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

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


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

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