BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
 Заголовок сообщения: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 13:06 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Код:
ServerContext contextCc = ServerContext.get();
ChargeService chargeService = contextCc.getService(ChargeService.class, 0);
Charge charge = new Charge();
charge.setContractId(cid);
chargeService.chargeDelete(cid, ccid);
chargeService.chargeUpdate(charge);

не работает, как правильно это делать?

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 13:21 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
какая-то какафония кода.
зачем update то делать после удаления? тем более пустого объекта.
нужно просто один метод вызвать:
chargeDelete( int chargeId )
или его синоним:
chargeDelete( int contractId, int chargeId )

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 14:23 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
dimOn писал(а):
какая-то какафония кода.
зачем update то делать после удаления? тем более пустого объекта.
нужно просто один метод вызвать:
chargeDelete( int chargeId )
или его синоним:
chargeDelete( int contractId, int chargeId )

я так делал. баланс не обновлялся, тоесть сам расход был удален, а в расходах он был показан (напротив слова расход - был, а когда заходиш в расход, нет)

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 15:20 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
skyb писал(а):
Код:
ServerContext contextCc = ServerContext.get();
ChargeService chargeService = contextCc.getService(ChargeService.class, 0);
Charge charge = new Charge();
charge.setContractId(cid);
chargeService.chargeDelete(cid, ccid);
chargeService.chargeUpdate(charge);

не работает, как правильно это делать?



chargeUpdate - создает еще раз расход. Не нужно его вызывать. Это неправильно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 15:22 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
skyb писал(а):
dimOn писал(а):
какая-то какафония кода.
зачем update то делать после удаления? тем более пустого объекта.
нужно просто один метод вызвать:
chargeDelete( int chargeId )
или его синоним:
chargeDelete( int contractId, int chargeId )

я так делал. баланс не обновлялся, тоесть сам расход был удален, а в расходах он был показан (напротив слова расход - был, а когда заходиш в расход, нет)


Проверил по коду, там баланс должен был обновиться. Видимо дерево не обновилось при отображении. Попробуйте закрыть/открыть договор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 16:13 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
в логах вот так
Код:
06-09/13:06:29  WARN [Finalizer] ConnectionSet - Not recycled before finalize!
06-09/13:06:29  WARN [Finalizer] ConnectionSet - Not recycled before finalize!

И после строчки
Код:
ServerContext contextCc = ServerContext.get();
ChargeService chargeService = contextCc.getService(ChargeService.class, 0);
chargeService.chargeDelete(cid, ccid);

Ничего не выводится, тоесть действия не выполняются, принт не отрабатывает
переоткрывал, ничего не обновлено

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 16:27 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
skyb писал(а):
в логах вот так
Код:
06-09/13:06:29  WARN [Finalizer] ConnectionSet - Not recycled before finalize!
06-09/13:06:29  WARN [Finalizer] ConnectionSet - Not recycled before finalize!

И после строчки
Код:
ServerContext contextCc = ServerContext.get();
ChargeService chargeService = contextCc.getService(ChargeService.class, 0);
chargeService.chargeDelete(cid, ccid);

Ничего не выводится, тоесть действия не выполняются, принт не отрабатывает
переоткрывал, ничего не обновлено



т.е он упал чтоли ? Или повис в это месте ? Повисание можно jtstack-ом проверить . А вообще чувствую что от нас что-то скрывают :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 16:31 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А на какое действие скрипт?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 16:31 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
если после строчки ничего не выводится - значит оно вываливается наружу с экзепшеном

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 16:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
а что означает упал или повис?
в логах только это.
делается это в переписанном экшене, там все работает кроме удаление расхода
Код:
         EventProcessor eventProc = EventProcessor.getInstance();
         ChargeDao cd = new ChargeDao(con);
         Charge ch = new Charge();
         ch.setContractId(cid);
         ch.setDate(new Date());
         ch.setSum(new BigDecimal("-"+setup_fee));
         ch.setTypeId(7);
         ch.setUserId(0);
         ch.setComment("Добавлен к номеру " + phone_number);
         cd.update(ch);
         BalanceUtils bu = new BalanceUtils(con);
         bu.updateBalance(new Date(), cid);
         eventProc.publishAfterCommit(new ChargeEvent(0, ch));
         eventProc.publishAfterCommit(new ContractBalanceChangedEvent(0, ch.getSum()));
         cd.recycle();

так расход добавляется
Amir, дергается по http экшен

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 16:34 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Код:
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream - ru.bitel.bgbilling.common.BGException: java.sql.SQLException: Can't call commit when autocommit=true
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at ru.bitel.bgbilling.kernel.contract.balance.server.ChargeServiceImpl.chargeDelete(ChargeServiceImpl.java:109)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at ru.bitel.bgbilling.kernel.contract.balance.server.ChargeServiceImpl.chargeDelete(ChargeServiceImpl.java:81)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at ru.exchange.zoho.ActionNewContract.doAction(ActionNewContract.java:1259)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at bitel.billing.server.Executer.doModule(Unknown Source)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at bitel.billing.server.Executer$1.run(Unknown Source)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at java.security.AccessController.doPrivileged(Native Method)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at javax.security.auth.Subject.doAs(Subject.java:415)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at bitel.billing.server.Executer.doPost(Unknown Source)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
06-09/13:06:24 ERROR [http-bio-0.0.0.0-8080-exec-2] LoggingPrintStream -        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

это тоже нада гдето что то добавлять?

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 17:16 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Не понятно откуда autocommit=true. Может быть в ActionNewContract ставится принудительно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 17:21 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
Покажите весь код свой.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 18:14 
Не в сети
Клиент
Аватара пользователя

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

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 18:20 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
на чье место в бителе метишь с таким количеством?

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 18:54 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: как правильно удалять расход?
СообщениеДобавлено: 09 июн 2015, 19:16 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Amir писал(а):
Не понятно откуда autocommit=true. Может быть в ActionNewContract ставится принудительно?

Как всегда прав, а говорите нет штатного экстрасенса )))) уже второй раз разгадывает что я понах**вертил ))))

_________________
Код:
  Клиент: вер. 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
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 1


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

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