forum.bitel.ru http://forum.bitel.ru/ |
|
Как пользоваться BalanceDao? http://forum.bitel.ru/viewtopic.php?f=22&t=13132 |
Страница 1 из 1 |
Автор: | Dog [ 27 ноя 2018, 18:51 ] |
Заголовок сообщения: | Как пользоваться BalanceDao? |
ru.bitel.bgbilling.kernel.contract.balance.server.bean.BalanceDao Почему то при попытке получить баланс везде получаем 0 Вложение: 2018-11-27_15-47-05.png [ 5.5 КБ | Просмотров: 2197 ] Код: BalanceDao bd = new BalanceDao( con ); Contract contract = cm.getContractById( cid ); Сalendar date = Calendar.getInstance(); date = TimeUtils.getStartMonth( date ); ContractBalance contractBalance = bd.getContractBalance( contract.getId(), date.get( Calendar.MONTH ), date.get( Calendar.YEAR ) ); BigDecimal bb = bd.getBalance( contract.getId(), date.get( Calendar.MONTH ), date.get( Calendar.YEAR ) ); BigDecimal saldo = contractBalance.toBalance(); sb.append( "contractBalance:" + bb + ";" + contractBalance.getAccounts() + ";" + contractBalance.getCharges() + ";" + contractBalance.getPayments() + ";" + contractBalance.getReserve() + "\n"); Код: contractBalance:0;0;0;0;0
|
Автор: | dimOn [ 27 ноя 2018, 18:55 ] |
Заголовок сообщения: | Re: Как пользоваться BalanceDao? |
как минимум думаю потому что там надо в обоих местах: date.get( Calendar.MONTH ) + 1 сначала это проверьте |
Автор: | Phricker [ 27 ноя 2018, 19:00 ] |
Заголовок сообщения: | Re: Как пользоваться BalanceDao? |
1) Не пользоваться BalanceDao а пользоваться BalanceService 2) Помнить что в java.util.Calendar месяцы начинаются с 0. Код: import ru.bitel.bgbilling.kernel.container.managed.ServerContext; import ru.bitel.bgbilling.kernel.contract.balance.common.BalanceService; import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase; import ru.bitel.bgbilling.server.util.Setup; import ru.bitel.common.sql.ConnectionSet; import java.sql.Connection; import java.util.Calendar; public class TestGit extends GlobalScriptBase { @Override public void execute(Setup setup, ConnectionSet connectionSet) throws Exception { int contractId = 315753; Connection con = connectionSet.getConnection(); ServerContext serverContext = ServerContext.get(); BalanceService balanceService = serverContext.getService(BalanceService.class, 0); Calendar cal = Calendar.getInstance(); print(balanceService.contractBalanceGet(contractId, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH)).getPayments()); print(balanceService.contractBalanceGet(contractId, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1).getPayments()); } } Код: 0 123123.00 Upd: Димон опередил, но я пример писал. |
Автор: | Phricker [ 27 ноя 2018, 19:06 ] |
Заголовок сообщения: | Re: Как пользоваться BalanceDao? |
Dog писал(а): Код: bd.getContractBalance( contract.getId(), date.get( Calendar.MONTH ), date.get( Calendar.YEAR ) ); Код: public ContractBalance getContractBalance(int contractId, int yy, int mm) throws BGException { И у вас местами поменялся год и месяц видимо. |
Автор: | Dog [ 27 ноя 2018, 19:16 ] |
Заголовок сообщения: | Re: Как пользоваться BalanceDao? |
Спасибо всем =) |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |