Class BalanceUtils
java.lang.Object
ru.bitel.bgbilling.kernel.contract.balance.server.util.BalanceUtils
- All Implemented Interfaces:
java.lang.AutoCloseable
public class BalanceUtils
extends java.lang.Object
implements java.lang.AutoCloseable
-
Constructor Summary
Constructors Constructor Description BalanceUtils(java.sql.Connection con)
-
Method Summary
Modifier and Type Method Description void
addBalanceAccount(Contract contract, java.util.Calendar time, float summa)
Приращение наработки в таблице баланса.void
addContractAccount(int cid, java.util.Calendar time, int sid, float add)
Deprecated.использовать addContractAccount( int cid, Date time, int sid, float add )void
addContractAccount(int contractId, java.util.Date time, int serviceId, float add)
Deprecated.void
addContractAccount(int contractId, java.util.Date time, int serviceId, java.math.BigDecimal addSum)
Приращение наработки за услугуvoid
close()
java.math.BigDecimal
getAccountSumma(int contractId, java.util.Calendar month, java.lang.String sids)
Получить наработку договора за указанный месяц по указанному перечню услуг.java.math.BigDecimal
getBalance(java.time.LocalDate localDate, int contractId)
java.math.BigDecimal
getBalance(java.util.Date time, int contractId)
Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.java.math.BigDecimal
getBalance(java.util.Date time, Contract contract)
java.math.BigDecimal
getBalanceOut(java.util.Date time, int contractId)
Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.
ВАЖНО!java.math.BigDecimal
getBalanceSumma1(java.util.Date time, int contractId)
Входящий остаток на начало месяца ВАЖНО!java.util.Date
getLastBalanceMonth(Contract contract)
Возращает самый старший месяц, за который есть данные по Балансуjava.math.BigDecimal
getSaldo(java.util.Date time, int contractId)
Сальдо - входящий остаток на начало месяца.
ВАЖНО!void
recalculateBalance(int contractId, java.util.Date dateFrom)
Пересчет баланса договора c датыvoid
setAccount(java.sql.Connection con, org.apache.logging.log4j.Logger logger, java.util.Calendar month, ServiceCostCache costCache, java.lang.String sids, java.lang.String cids, java.util.List<java.lang.Integer> contractLabelIds)
Массовая установка наработки после какого-либо переобсчета.void
setBalanceFromAccount(int cid, java.util.Calendar time)
Установка баланса договора за какой-либо месяц.void
setBalanceFromAccount(int cid, java.util.Calendar time, boolean lowPrior)
Deprecated.void
setBalanceFromAccount(Contract contract, java.util.Calendar time)
Установка наработки в балансе как суммы наработок из contract_accountvoid
setContractAccount(int contractId, java.util.Date time, int serviceId, float summa)
Deprecated.void
setContractAccount(int contractId, java.util.Date time, int serviceId, java.math.BigDecimal summa)
Установка суммы наработки за услугуvoid
transitBalanceToCurdate1(int cid, java.util.Calendar time)
Deprecated.void
updateBalance(java.util.Date date, int contractId)
Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы.void
updateBalance(java.util.Date date, Contract contract)
Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы.void
updateBalance(java.util.Date date, Contract contract)
Устанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей датыvoid
updateBalanceFromCharges(int contractId, java.time.LocalDate month)
void
updateBalanceFromPayments(int contractId, java.time.LocalDate month)
boolean
wasMoveByAccount(java.util.Calendar time, int cid)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
BalanceUtils
public BalanceUtils(java.sql.Connection con)
-
-
Method Details
-
getSaldo
public java.math.BigDecimal getSaldo(java.util.Date time, int contractId)Сальдо - входящий остаток на начало месяца.
ВАЖНО! После использования BalanceUtils, вызвать метод close(), дабы закрыть PrepearStatement-ы у даошек.- Parameters:
time
- месяцcontractId
- код договора- Returns:
-
getBalance
public java.math.BigDecimal getBalance(java.util.Date time, int contractId)Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.- Parameters:
localDate
- месяцcontractId
- код договора- Returns:
-
getBalance
public java.math.BigDecimal getBalance(java.time.LocalDate localDate, int contractId) -
getBalanceOut
public java.math.BigDecimal getBalanceOut(java.util.Date time, int contractId)Получение исходящего остатка договора на требуемый месяц, либо последний предыдущий.
ВАЖНО! После использования BalanceUtils, вызвать метод close(), дабы закрыть PrepearStatement-ы у даошек.- Parameters:
time
- месяцcontract
- объект договора- Returns:
-
getBalance
-
getBalanceSumma1
public java.math.BigDecimal getBalanceSumma1(java.util.Date time, int contractId)Входящий остаток на начало месяца ВАЖНО! После использования BalanceUtils, вызвать метод close(), дабы закрыть PrepearStatement-ы у даошек.- Parameters:
time
- - месяц на который требуется входящий остатокcontractId
- - код договора- Returns:
- входящий остаток на начала месяца
-
setContractAccount
@Deprecated public void setContractAccount(int contractId, java.util.Date time, int serviceId, float summa)Deprecated. -
setContractAccount
public void setContractAccount(int contractId, java.util.Date time, int serviceId, java.math.BigDecimal summa)Установка суммы наработки за услугу- Parameters:
contractId
- - код договораtime
- - месяцserviceId
- - код услугиsumma
- - сумма
-
addContractAccount
@Deprecated public void addContractAccount(int cid, java.util.Calendar time, int sid, float add)Deprecated.использовать addContractAccount( int cid, Date time, int sid, float add )- Parameters:
cid
-time
-sid
-add
-
-
addContractAccount
@Deprecated public void addContractAccount(int contractId, java.util.Date time, int serviceId, float add)Deprecated. -
addContractAccount
public void addContractAccount(int contractId, java.util.Date time, int serviceId, java.math.BigDecimal addSum)Приращение наработки за услугу- Parameters:
cid
- - код договораtime
- - месяцsid
- - код услугиaddSum
- - сумма приращения
-
addBalanceAccount
Приращение наработки в таблице баланса.- Parameters:
contract
- - объект договораtime
- - месяцsumma
- - сумма приращения
-
transitBalanceToCurdate1
@Deprecated public void transitBalanceToCurdate1(int cid, java.util.Calendar time)Deprecated.Перенос остатков для договора с указанного месяца до текущего- Parameters:
cid
- - код договораtime
- - месяц
-
wasMoveByAccount
public boolean wasMoveByAccount(java.util.Calendar time, int cid)- Parameters:
time
- Calendarcid
- int- Returns:
- boolean - было ли движение по счету в указанный месяц
-
updateBalance
public void updateBalance(java.util.Date date, int contractId) throws ru.bitel.bgbilling.common.BGExceptionУстанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы. Если такого договора нет, то просто выйдет из метода.- Parameters:
date
- - месяцcontractId
- - код договора- Throws:
ru.bitel.bgbilling.common.BGException
-
updateBalance
public void updateBalance(java.util.Date date, Contract contract) throws ru.bitel.bgbilling.common.BGExceptionУстанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты, но НЕ ПЕРЕСЧИТЫВАЯ платежи, расходы итд при этом за последующие месяцы.- Parameters:
date
- - месяцcontract
- - объект договора- Throws:
java.lang.NullPointerException
- - Если договор = nullru.bitel.bgbilling.common.BGException
-
updateBalance
public void updateBalance(java.util.Date date, Contract contract) throws ru.bitel.bgbilling.common.BGExceptionУстанавливает в таблицу contract_balance сумму баланса из приходов, расходов автоматически меняет баланс до текущей даты- Parameters:
date
- - месяцcontract
- - объект договора- Throws:
java.lang.NullPointerException
- - Если договор = nullru.bitel.bgbilling.common.BGException
-
recalculateBalance
public void recalculateBalance(int contractId, java.util.Date dateFrom)Пересчет баланса договора c даты- Parameters:
contractId
-dateFrom
-
-
setBalanceFromAccount
public void setBalanceFromAccount(int cid, java.util.Calendar time)Установка баланса договора за какой-либо месяц.- Parameters:
cid
- - код договораtime
- - месяц
-
setBalanceFromAccount
@Deprecated public void setBalanceFromAccount(int cid, java.util.Calendar time, boolean lowPrior)Deprecated.Установка баланса договора за какой-либо месяц, заменен наsetBalanceFromAccount(int, Calendar)
- Parameters:
cid
- - код договораtime
- - месяцlowPrior
- - параметр не используется
-
setBalanceFromAccount
Установка наработки в балансе как суммы наработок из contract_account- Parameters:
contract
- - объект договораtime
- - месяц
-
setAccount
public void setAccount(java.sql.Connection con, org.apache.logging.log4j.Logger logger, java.util.Calendar month, ServiceCostCache costCache, java.lang.String sids, java.lang.String cids, java.util.List<java.lang.Integer> contractLabelIds) throws java.sql.SQLExceptionМассовая установка наработки после какого-либо переобсчета.- Parameters:
con
-month
- - месяц, для которого устанавливается наработкаsids
- - коды услуг через запятуюcids
- - коды договоров через запятую, либо null, если для всех договоровgroups
- - битовая маска групп договоров- Throws:
java.sql.SQLException
-
getLastBalanceMonth
Возращает самый старший месяц, за который есть данные по Балансу -
getAccountSumma
public java.math.BigDecimal getAccountSumma(int contractId, java.util.Calendar month, java.lang.String sids) throws ru.bitel.bgbilling.common.BGExceptionПолучить наработку договора за указанный месяц по указанному перечню услуг. Для супердоговора выдаётся наработка его и всех зависимых субов.- Parameters:
contractId
- - код договора.month
- - месяц.sids
- - услуги через запятые.- Returns:
- Throws:
ru.bitel.bgbilling.common.BGException
-
updateBalanceFromCharges
public void updateBalanceFromCharges(int contractId, java.time.LocalDate month) throws java.lang.NullPointerException, java.sql.SQLException- Throws:
java.lang.NullPointerException
java.sql.SQLException
-
updateBalanceFromPayments
public void updateBalanceFromPayments(int contractId, java.time.LocalDate month) throws java.lang.NullPointerException, java.sql.SQLException- Throws:
java.lang.NullPointerException
java.sql.SQLException
-
close
public void close()- Specified by:
close
in interfacejava.lang.AutoCloseable
-