Interface BonusService
public interface BonusService
-
Method Summary
Modifier and Type Method Description int
activateTO(int contractId, int tariffOptionId, int modeId)
Активация ТО с списанием бонусов в качестве оплаты.java.math.BigDecimal
balance(int contractId, java.util.Date date)
java.math.BigDecimal
balanceAdvanced(int contractId, java.util.Date date, java.lang.Integer chargId, boolean withFutureCharge)
java.util.List<BonusBalance>
balanceList(int contractId, java.util.Date date)
java.math.BigDecimal
balanceNotActive(int contractId, java.util.Date date)
java.math.BigDecimal
bonusSummaMax(int contractId, int contractChargeId, java.math.BigDecimal chargeSum, boolean bonusSum)
Получение максиально возможной суммы для оплаты части расхода договора бонусами.java.math.BigDecimal
bonusSummaMaxAdvanced(int contractId, int contractChargeId, java.math.BigDecimal chargeSum, boolean bonusSum, java.math.BigDecimal MaxBonusSum)
Получение максиально возможной суммы для оплаты части расхода договора бонусами которая зависет от выставленного макс. процента для данного типа расхода, бонусного баланса и MaxBonusSum.BonusCharge
chargeBonus(int contractChargeId)
Вернет бонусный расхода по ид расхода договора.void
chargeDeleteByContractChargeId(int contractChargeId)
Удаление бонусного расхода в соответсвии ид расхода договора.java.util.List<BonusCharge>
chargeDetailsList(int paymentId)
java.util.List<BonusCharge>
chargeList(int contractId, java.util.Date dateFrom, java.util.Date dateTo)
boolean
chargeUpdate(int contractId, BonusCharge charge)
Создание,редактирование бонусного расходаboolean
checkProgramPeriodOnCrossing(BonusProgram bonusProgram)
Проверка на пересечения нового периода бонусной программы с периодом программы у договоров(экземпляров данной программы).void
extendPaymentsGroupOperation(java.lang.String cids, Period paymentPeriod, java.util.Set<java.lang.Integer> paymentTypeSet, int typeExtend, java.lang.String valueExtend, boolean onlyActive)
Групповая операция расширения периода действия бонусных платежей.java.lang.String
getDataProgramOfContract(int programId, int contractId)
boolean
paymentDelete(int paymentId)
java.util.List<BonusPayment>
paymentDetailsList(int chargeId)
java.util.List<BonusPayment>
paymentList(int contractId, java.util.Date dateFrom, java.util.Date dateTo)
(Не путать dateFrom и dateTo с одноименными полями в BonusPayment)java.util.List<BonusPayment>
paymentsNotActiveNow(int cid)
boolean
paymentTypeDelete(int paymentId)
Удаление типа платежаjava.util.List<BonusPaymentType>
paymentTypeList(boolean usedOnly)
void
paymentTypeUpdate(BonusPaymentType paymentType)
Обновление или создание типа приходаvoid
paymentUpdate(int contractId, BonusPayment payment)
Создание бонусного платежаint
percentOfBonus(int contractChargeId)
Вернет кол-во процентов которыми можно оплатить бонусами для данного расхода.boolean
pluginInclude(int contractId)
java.util.List<BonusContractProgram>
programContractList(int contractId)
void
programContractUpdate(BonusContractProgram contractProgram)
Обновление или создание бонусной программы у договора.void
programDelete(int programId)
Удаление бонусной программы.java.util.List<java.lang.Integer>
programInContractList(int idProgram, java.util.Date date)
java.util.List<BonusProgram>
programList(java.util.Date date)
MapHolder<java.lang.String,java.lang.String>
programTypeMap()
void
programUpdate(BonusProgram program)
Обновление или создание бонусной программы.int
rate()
Вернет бонусный курс.java.lang.String
treeNodeTitle(int contractId)
Получение значение для элемента дерева("Бонус") в договоре.Содержит текущий остаток бонусов, как активных так и ожидающих( разделены чере "/" )void
updatePluginInclude(int contractId, boolean include)
Включение/выкл. плагина у договора.void
updateProgramAndPluginIncludeGroupOperation(java.util.List<BonusProgram> programs, java.lang.String cids, Period period, boolean include)
Добавления бонусных программ, установка периода, вкл/выкл плагина у договоров для групповых операций.
-
Method Details
-
paymentTypeList
java.util.List<BonusPaymentType> paymentTypeList(boolean usedOnly) throws ru.bitel.bgbilling.common.BGException- Parameters:
usedOnly
- - если true то вернет только используемые- Returns:
- - список типов бонусных платежей
- Throws:
ru.bitel.bgbilling.common.BGException
-
paymentTypeUpdate
Обновление или создание типа прихода- Parameters:
paymentType
-- Throws:
ru.bitel.bgbilling.common.BGException
-
paymentTypeDelete
boolean paymentTypeDelete(int paymentId) throws ru.bitel.bgbilling.common.BGExceptionУдаление типа платежа- Parameters:
paymentId
-- Returns:
- - true если тип был удален, иначе false
- Throws:
ru.bitel.bgbilling.common.BGException
-
paymentList
java.util.List<BonusPayment> paymentList(int contractId, java.util.Date dateFrom, java.util.Date dateTo) throws ru.bitel.bgbilling.common.BGException(Не путать dateFrom и dateTo с одноименными полями в BonusPayment)- Parameters:
cid
- - номер договораdateFrom
-dateTo
-- Returns:
- - список бонусных платежей, где дата платежа находится в границах dateFrom и dateTo (dateFrom< date
- Throws:
ru.bitel.bgbilling.common.BGException
-
paymentsNotActiveNow
java.util.List<BonusPayment> paymentsNotActiveNow(int cid) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договора- Returns:
- - вернет список платежей которые будут доступны для оплаты в будущем
- Throws:
ru.bitel.bgbilling.common.BGException
-
chargeList
java.util.List<BonusCharge> chargeList(int contractId, java.util.Date dateFrom, java.util.Date dateTo) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договораdateFrom
-dateTo
-- Returns:
- - список бонусных расходов, где дата расхода находится в границах dateFrom и dateTo (dateFrom< date
- Throws:
ru.bitel.bgbilling.common.BGException
-
chargeBonus
Вернет бонусный расхода по ид расхода договора.- Parameters:
contractChargeId
- - ид расхода- Returns:
- - BonusCharge в случае успеха, иначе null.
- Throws:
ru.bitel.bgbilling.common.BGException
-
paymentUpdate
void paymentUpdate(int contractId, BonusPayment payment) throws ru.bitel.bgbilling.common.BGExceptionСоздание бонусного платежа- Parameters:
payment
-- Throws:
ru.bitel.bgbilling.common.BGException
-
chargeUpdate
boolean chargeUpdate(int contractId, BonusCharge charge) throws ru.bitel.bgbilling.common.BGExceptionСоздание,редактирование бонусного расхода- Parameters:
cid
- - номер договораcharge
-- Returns:
- true - если средств хватило и расход был создан
- Throws:
ru.bitel.bgbilling.common.BGException
-
activateTO
int activateTO(int contractId, int tariffOptionId, int modeId) throws ru.bitel.bgbilling.common.BGExceptionАктивация ТО с списанием бонусов в качестве оплаты. Списывается максимально возможная сумма(зависит от текущего бонусного баланса, а так же настроек плагина).- Parameters:
contractId
- - код договораtariffOptionId
- - код тарифной опцииmodeId
- - код режима активации- Returns:
- - код бонусного расхода
- Throws:
ru.bitel.bgbilling.common.BGException
- если: - указана ТО которую можно активировать только бонусами, но списать необходимую сумму не удалось.
- баланс не положительный
- неверно задан режим активации или опция
- сумма у режима активации == 0
- плагин выключен
- недостаточно средств для снятия остатка на договоре
-
paymentDelete
boolean paymentDelete(int paymentId) throws ru.bitel.bgbilling.common.BGException- Parameters:
paymentId
- - ид удаляемого платежа- Throws:
ru.bitel.bgbilling.common.BGException
-
chargeDeleteByContractChargeId
void chargeDeleteByContractChargeId(int contractChargeId) throws ru.bitel.bgbilling.common.BGExceptionУдаление бонусного расхода в соответсвии ид расхода договора.- Parameters:
contractChargeId
- - ид удаляемого расхода- Throws:
ru.bitel.bgbilling.common.BGException
-
paymentDetailsList
java.util.List<BonusPayment> paymentDetailsList(int chargeId) throws ru.bitel.bgbilling.common.BGException- Parameters:
chargeId
-- Returns:
- - вернет платежи из которых были списаны средства для данного расхода
- Throws:
ru.bitel.bgbilling.common.BGException
-
chargeDetailsList
java.util.List<BonusCharge> chargeDetailsList(int paymentId) throws ru.bitel.bgbilling.common.BGException- Parameters:
paymentId
-- Returns:
- - вернет расходы которые списали средства из данного прихода
- Throws:
ru.bitel.bgbilling.common.BGException
-
balanceList
java.util.List<BonusBalance> balanceList(int contractId, java.util.Date date) throws ru.bitel.bgbilling.common.BGException- Parameters:
contractId
- - номер договораdate
- - дата- Returns:
- вернет список для таблицы баланса на конкретную дату
- Throws:
ru.bitel.bgbilling.common.BGException
-
balance
java.math.BigDecimal balance(int contractId, java.util.Date date) throws ru.bitel.bgbilling.common.BGException- Parameters:
contractId
- - номер договораdate
- - дата- Returns:
- - вернет бонусный баланс на конкретный момент.
- Throws:
ru.bitel.bgbilling.common.BGException
-
balanceAdvanced
java.math.BigDecimal balanceAdvanced(int contractId, java.util.Date date, java.lang.Integer chargId, boolean withFutureCharge) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договораdate
- - на какую датуchargeId
- - если не null, ид бонусного расхода который не будет учитываться.withFutureCharge
- - если = true, то вернет баланс с учетом будущих расходов у приходов которые были активны на тот момент. Если баланс берется на текущий момент, то разницы не должно быть.- Returns:
- вернет баланс на конкретную дату
- Throws:
ru.bitel.bgbilling.common.BGException
-
balanceNotActive
java.math.BigDecimal balanceNotActive(int contractId, java.util.Date date) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договораdate
- - дата- Returns:
- - вернет ожидаемы быллы на конкретную дату
- Throws:
ru.bitel.bgbilling.common.BGException
-
pluginInclude
boolean pluginInclude(int contractId) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договора.- Returns:
- вернет true- если плагин включен у данного договора
- Throws:
ru.bitel.bgbilling.common.BGException
-
updatePluginInclude
void updatePluginInclude(int contractId, boolean include) throws ru.bitel.bgbilling.common.BGExceptionВключение/выкл. плагина у договора.- Parameters:
cid
- - номер договора.include
- - если true то вкл. плагин у договора.- Throws:
ru.bitel.bgbilling.common.BGException
-
percentOfBonus
int percentOfBonus(int contractChargeId) throws ru.bitel.bgbilling.common.BGExceptionВернет кол-во процентов которыми можно оплатить бонусами для данного расхода. Если возврощаемое значение равно 0 , то это равносильно запрету на оплату бонусами для данного расхода.- Parameters:
contractChargeId
- - ид расхода договора- Throws:
ru.bitel.bgbilling.common.BGException
-
rate
int rate()Вернет бонусный курс.- Returns:
- кол-во бонусов к одному рублю(1руб.= rateBonus ).
-
bonusSummaMax
java.math.BigDecimal bonusSummaMax(int contractId, int contractChargeId, java.math.BigDecimal chargeSum, boolean bonusSum) throws ru.bitel.bgbilling.common.BGExceptionПолучение максиально возможной суммы для оплаты части расхода договора бонусами.- Parameters:
cid
- номер договора.contractChargeId
- - ид типа расхода договора, если он будет < 0, то макс. процент будет принят за 100%.chargeSum
- планируемая(изначальная) сумма списания с договора.bonusSum
- если true то вернет макс. возможную сумму бонусов иначе вернет макс. возможную сумму рублей(точнее в еденицах расхода) Влияет на maxSum.- Throws:
ru.bitel.bgbilling.common.BGException
-
bonusSummaMaxAdvanced
java.math.BigDecimal bonusSummaMaxAdvanced(int contractId, int contractChargeId, java.math.BigDecimal chargeSum, boolean bonusSum, java.math.BigDecimal MaxBonusSum) throws ru.bitel.bgbilling.common.BGExceptionПолучение максиально возможной суммы для оплаты части расхода договора бонусами которая зависет от выставленного макс. процента для данного типа расхода, бонусного баланса и MaxBonusSum. Эта сумма не может быть меньше MaxBonusSum - иметь ввиду.- Parameters:
cid
- номер договора.contractChargeId
- - ид типа расхода договора, если он будет < 0, то макс. процент будет принят за 100%.chargeSum
- планируемая(изначальная) сумма списания с договора.bonusSum
- если true то вернет макс. возможную сумму бонусов иначе вернет макс. возможную сумму рублей(точнее в еденицах расхода) Влияет на maxSum.MaxBonusSum
- - если не null, то возвращаемая сумма будет ограничена ею и процентом. То есть этим параметром можно задать минимум. ( maxSum - это либо рубли либо бонусы, соответсвует параметру bonusSum ).- Throws:
ru.bitel.bgbilling.common.BGException
-
treeNodeTitle
java.lang.String treeNodeTitle(int contractId) throws ru.bitel.bgbilling.common.BGExceptionПолучение значение для элемента дерева("Бонус") в договоре.Содержит текущий остаток бонусов, как активных так и ожидающих( разделены чере "/" )- Parameters:
cid
- - номер договора.- Returns:
- строка со значением.
- Throws:
ru.bitel.bgbilling.common.BGException
-
programTypeMap
MapHolder<java.lang.String,java.lang.String> programTypeMap() throws ru.bitel.bgbilling.common.BGException- Throws:
ru.bitel.bgbilling.common.BGException
-
programList
java.util.List<BonusProgram> programList(java.util.Date date) throws ru.bitel.bgbilling.common.BGException- Parameters:
date
- - если date=null, то вернет все программы- Returns:
- все бонусные программы активные на момент времени date.
- Throws:
ru.bitel.bgbilling.common.BGException
-
programUpdate
Обновление или создание бонусной программы.- Parameters:
program
-- Throws:
ru.bitel.bgbilling.common.BGException
-
programContractList
java.util.List<BonusContractProgram> programContractList(int contractId) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договора.- Returns:
- список бонусных програм установленных для данного договора.
- Throws:
ru.bitel.bgbilling.common.BGException
-
programContractUpdate
void programContractUpdate(BonusContractProgram contractProgram) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageExceptionОбновление или создание бонусной программы у договора.- Parameters:
contractProgram
-- Throws:
ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGMessageException
-
checkProgramPeriodOnCrossing
boolean checkProgramPeriodOnCrossing(BonusProgram bonusProgram) throws ru.bitel.bgbilling.common.BGExceptionПроверка на пересечения нового периода бонусной программы с периодом программы у договоров(экземпляров данной программы). Необходимо проверять при изменении периода бонусной программы.- Parameters:
program
- - бонусная программа у который выставлен проверяемый период.- Returns:
- - true если пересечение имеет место или program==null или период==null или dateFrom==null.
- Throws:
ru.bitel.bgbilling.common.BGException
-
programInContractList
java.util.List<java.lang.Integer> programInContractList(int idProgram, java.util.Date date) throws ru.bitel.bgbilling.common.BGException- Parameters:
idProgram
- - ид программы.date
- - на какое время, если null то вернет за все время.- Returns:
- список ид договоров у которых активна данная бонусная программа на момент date.
- Throws:
ru.bitel.bgbilling.common.BGException
-
programDelete
void programDelete(int programId) throws ru.bitel.bgbilling.common.BGExceptionУдаление бонусной программы.- Parameters:
programId
- - ид бонусной программы.- Throws:
ru.bitel.bgbilling.common.BGException
-
updateProgramAndPluginIncludeGroupOperation
void updateProgramAndPluginIncludeGroupOperation(java.util.List<BonusProgram> programs, java.lang.String cids, Period period, boolean include) throws ru.bitel.bgbilling.common.BGExceptionДобавления бонусных программ, установка периода, вкл/выкл плагина у договоров для групповых операций. Если programs == null, то только вкл/выкл плагина.- Parameters:
programs
- - список бонусных программ. Можно null или пустой список.cids
- - договора через запятую.period
- - период для программ. Можно null, если programs == null.include
- - если true то плагин будет вкл. для данных договоров.- Throws:
ru.bitel.bgbilling.common.BGException
-
extendPaymentsGroupOperation
void extendPaymentsGroupOperation(java.lang.String cids, Period paymentPeriod, java.util.Set<java.lang.Integer> paymentTypeSet, int typeExtend, java.lang.String valueExtend, boolean onlyActive) throws ru.bitel.bgbilling.common.BGExceptionГрупповая операция расширения периода действия бонусных платежей. Расширяет период только еще не до конца списанных платежей.- Parameters:
cids
- - договора через запятую.paymentPeriod
- - все платежи дата которых входит в данный период, будут расширены. Не может быть null.paymentTypeSet
- - сет кодов типов платежейtypeExtend
- - тип расширения. 1 - до даты, 2 - на кол-во дней от даты завершения платежаvalueExtend
- - значение расширения. Если typeExtend = 1, то тут должна быть дата(dd.MM.yyyy), если typeExtend = 2, то число дней.onlyActive
- - если true, то операция будет производиться только с платежами период которых еще не завершился- Throws:
ru.bitel.bgbilling.common.BGException
-
getDataProgramOfContract
java.lang.String getDataProgramOfContract(int programId, int contractId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException- Throws:
ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGMessageException
-