BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Добавление услуги в модуль Rscm
СообщениеДобавлено: 01 июл 2016, 12:15 
Не в сети

Зарегистрирован: 14 июн 2013, 17:39
Сообщения: 68
Карма: 0
Здравствуйте!
Обновились с версии 6.0 до 7.0.

В версии 6.0 добавляли услугу в модуле rscm с помощью дин кода:
Код:
ContractServiceManager csm1 = new ContractServiceManager(getConnection(), 6);
      ContractService cs = new ContractService();
      cs.setId(-1);
      cs.setContractId(contr.getId());
      cs.setServiceId(1);
      cs.setAmount((long)debt);
      cs.setDate(Calendar.getInstance());
      cs.setUnit("");
      cs.setService("");
      cs.setComment(job_name);
      csm1.updateContractService(cs);
            
      new RunTaskDataManager(getConnection()).addTask( new RSCMRecalculator(6, Calendar.getInstance(), "", "" + contr.getId()));
      EventProcessor.getInstance().publishAfterCommit( new RSCMContractServiceUpdateEvent( uid, 6, contr.getId(), cs ) );

Код нормально работал.
После обновления на 7.0 текущий код сломался(API изменилось). Переписал код на:
Код:
RSCMContractServiceManager csm1 = new RSCMContractServiceManager(connectionSet2.getConnection(), 6);
      RSCMContractService cs = new RSCMContractService();
      cs.setId(-1);
      cs.setContractId(1303);
      cs.setServiceId(1);
      cs.setAmount((long)990000000.0);
      cs.setDate(new Date());
      cs.setUnit("");
      //cs.setService("");
      cs.setServiceId(1);
      cs.setServiceTitle("");
      cs.setComment("test");
      csm1.updateContractService(cs);
            
      new RunTaskDataManager(connectionSet2.getConnection()).addTask( new ru.bitel.bgbilling.modules.rscm.server.RSCMRecalculator(6, Calendar.getInstance(), "", "" + 1303));
      EventProcessor.getInstance().publishAfterCommit( new RSCMContractServiceUpdateEvent( 12, 6, 1303, cs ) );

Услуга добавляется. Но баланс у договора не пересчитывается. То есть с договора не списываются деньги за услугу.
Подскажите что теперь нужно использовать для корректного списания?

Не по теме. Из документации при обновлении необходимо запустить скрипт для копирования данных из нескольких таблиц в одну в модуле rscm.
Цитата:
Если используете модуль RSCM необходимо конвертировать таблицы, для этого скопируйте текст скрипта в файл и запустите его(работает в unix-подобных системах).

И приведен баш скрипт. Данный скрипт работает только если добавлен один модуль RSCM. Если их 2 то скрипт не работает. Для себя данную проблему решил.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление услуги в модуль Rscm
СообщениеДобавлено: 01 июл 2016, 12:33 
Не в сети

Зарегистрирован: 14 июн 2013, 17:39
Сообщения: 68
Карма: 0
Увидел что в планировщике задач куча тяжелых задач на начисление наработки в очереди.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Добавление услуги в модуль Rscm
СообщениеДобавлено: 01 июл 2016, 12:48 
Не в сети

Зарегистрирован: 14 июн 2013, 17:39
Сообщения: 68
Карма: 0
Проблема решилась перезагрузкой bgscheduler.


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

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


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

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


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

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