Class BonusDao
java.lang.Object
ru.bitel.bgbilling.plugins.bonus.server.dao.BonusDao
-
Field Summary
Modifier and TypeFieldDescriptionprotected Connection
static final boolean
Флаг определяющий, можно ли уводить в минус.static int
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addCharge
(int userId, int cid, BonusCharge charge) Добавление расходаvoid
addDetailsItem
(int chargeId, int paymentId, BigDecimal sum) Добавит детали расхода, какую сумму какой расход списал с конкретного платежа.boolean
checkContractOnProgramType
(int cid, int programType, Date date) boolean
checkProgramPeriodOnCrossing
(BonusProgram program) Проверка на пересечения нового периода бонусной программы с периодом программы у договоров.void
deleteCharge
(int chargeId) Удаление расхода.void
deleteChargeAccordingToContractChargeId
(int contractChargeId) Удаление расхода по ид расхода договора.void
deleteDeatails
(int id) Удаление деталей расхода по его ид.void
deletePayment
(int paymentId) Удаление приходаvoid
deletePaymentType
(int paymentId) void
deleteProgram
(int programId) Удаление бонусной программы.getBalance
(int cid, Date date) getBalance
(int cid, Date date, Integer chargeId, boolean withFutureCharge) getCharge
(int contractChargeId) Вернет бонусный расход который был повешан на конкретный расход договора.getChargeDetailsList
(int paymentId) Deprecated.getChargeList
(int contractId, Date dateFrom, Date dateTo) getChargesAll
(int contractId) Вернет все расходыgetChargesLinkedPayments
(int cid, List<BonusPayment> paymentList, Date date) getContractsOfThisProgram
(int idProgram, Date date) getDataProgramOfContract
(int programId, int contractId) Получение мапа с данными для договора по выбранной программе.getDetailsChargeList
(int paymentId) getNotActiveBalanceStill
(int cid, Date date) getPaymentDetailsList
(int chargeId) getPaymentList
(int contractId, Date dateFrom, Date dateTo) getPaymentsActiveAndPositive
(int cid, Date date, HashMap<Integer, BigDecimal> residueSumMap) getPaymentsActiveToDate
(int cid, Date date, HashMap<Integer, BigDecimal> residueSumMap) getPaymentsAll
(int cid) Вернет все платежи для данного договораgetPaymentsToActiveInFuture
(int contractId, Date date) getPaymentTypeList
(boolean usedOnly) getProgram
(int id) getProgramAction
(BonusProgram bonusProgram) Получение программы действий для бонусной программы.getProgramCotractList
(int cid) getProgramCotractList
(int cid, int programTypeId, Date date) getProgramList
(Date date, int programTypeId) Возврощает заведенные бонусные программы.getProgramSpecificationForDynamicProgram
(String className) Вернет спецификацию для динамической программы по ее полному имени.boolean
isUseChargeType
(int chargeId) boolean
isUsePaymentsInDetailsTable
(int paymentId) boolean
isUsePaymentType
(int paymentId) boolean
pluginInclude
(int cid) programInContractList
(int idProgram, Date date) Deprecated.void
updateDataProgramOfContract
(int programId, int contractId, Map<String, String> map) Сохранение/обновлене данных для договора по выбранной программе.void
updateDetailsCharge
(int id, int paymentId, BigDecimal sum) Обновление записи bonus_details_charge.void
updatePayment
(int userId, int cid, BonusPayment payment) Создание платежа.void
updatePaymentType
(BonusPaymentType paymentType) void
updatePluginInclude
(int cid, boolean include) Включение/выкл. плагина у договора.void
updateProgram
(BonusProgram program) Обновление или создание бонусной программы.void
updateProgramContract
(BonusContractProgram contractProgram) Обновление или добовление бонусной программы для договора.
-
Field Details
-
con
-
pluginTurnOn
public static int pluginTurnOn -
flagBalanceCanBeNegative
public static final boolean flagBalanceCanBeNegativeФлаг определяющий, можно ли уводить в минус.
-
-
Constructor Details
-
BonusDao
-
-
Method Details
-
getPaymentTypeList
public List<BonusPaymentType> getPaymentTypeList(boolean usedOnly) throws ru.bitel.bgbilling.common.BGException - Parameters:
usedOnly
-- Returns:
- - если usedOnly==true,то вернет только используемые
- Throws:
ru.bitel.bgbilling.common.BGException
-
getChargesLinkedPayments
public List<BonusCharge> getChargesLinkedPayments(int cid, List<BonusPayment> paymentList, Date date) throws ru.bitel.bgbilling.common.BGException - Parameters:
paymentList
-- Returns:
- - вернет список расходов которые были повешаны на дынные приходы на конкретную дату.
- Throws:
ru.bitel.bgbilling.common.BGException
-
updatePaymentType
public void updatePaymentType(BonusPaymentType paymentType) throws ru.bitel.bgbilling.common.BGException - Throws:
ru.bitel.bgbilling.common.BGException
-
deletePaymentType
public void deletePaymentType(int paymentId) throws ru.bitel.bgbilling.common.BGException - Throws:
ru.bitel.bgbilling.common.BGException
-
isUsePaymentType
public boolean isUsePaymentType(int paymentId) throws ru.bitel.bgbilling.common.BGException - Parameters:
paymentId
-- Returns:
- - true если есть платежи с таким типом
- Throws:
ru.bitel.bgbilling.common.BGException
-
isUseChargeType
public boolean isUseChargeType(int chargeId) throws ru.bitel.bgbilling.common.BGException - Parameters:
chargeId
-- Returns:
- - true если есть расходы с таким типом
- Throws:
ru.bitel.bgbilling.common.BGException
-
getPaymentList
public List<BonusPayment> getPaymentList(int contractId, Date dateFrom, Date dateTo) throws ru.bitel.bgbilling.common.BGException - Parameters:
contractId
- - номер договораdateFrom
- - от датыdateTo
- - до даты- Returns:
- вернет платежи в промежутке данных дат, есл и
- Throws:
ru.bitel.bgbilling.common.BGException
-
getPaymentsAll
Вернет все платежи для данного договора- Parameters:
cid
-- Throws:
ru.bitel.bgbilling.common.BGException
-
getPaymentsActiveAndPositive
public List<BonusPayment> getPaymentsActiveAndPositive(int cid, Date date, HashMap<Integer, BigDecimal> residueSumMap) throws ru.bitel.bgbilling.common.BGException- Parameters:
date
- - на какой моментcid
- - номер договораresidueSumMap
- - мап c остатками средств у платежей, можно передать null,если эти данные не нужны(ключ - id платежа, значение - остаток средсв у платежа).- Returns:
- вернет активные(то есть dateFrom<date<dateTo) платежи на данное время и у которых еще положительный баланс.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getPaymentsActiveToDate
public List<BonusPayment> getPaymentsActiveToDate(int cid, Date date, HashMap<Integer, BigDecimal> residueSumMap) throws ru.bitel.bgbilling.common.BGException- Parameters:
cid
- - номер договораdate
-residueSumMap
- - мап c остатками средств у платежей, можно передать null,если эти данные не нужны(ключ - id платежа, значение - остаток средсв у платежа).- Returns:
- - список платежей активные на дату - date
- Throws:
ru.bitel.bgbilling.common.BGException
-
getPaymentsToActiveInFuture
public List<BonusPayment> getPaymentsToActiveInFuture(int contractId, Date date) throws ru.bitel.bgbilling.common.BGException - Parameters:
contractId
- - номер договораdate
- - на дату(обычно текущее)- Returns:
- - список платежей еще не активных на дынный момент
- Throws:
ru.bitel.bgbilling.common.BGException
-
getCharge
Вернет бонусный расход который был повешан на конкретный расход договора.- Parameters:
contractChargeId
- - ид расхода договора- Returns:
- если результат успешный то BonusChargee, иначе null.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getChargeList
public List<BonusCharge> getChargeList(int contractId, Date dateFrom, Date dateTo) throws ru.bitel.bgbilling.common.BGException - Parameters:
contractId
- - номер договораdateFrom
- - от датыdateTo
- - до даты- Returns:
- вернет список расходов в промежутке dateFrom и dateTo(с точностью до дня), если одна из дат == null, то вернет все
- Throws:
ru.bitel.bgbilling.common.BGException
-
getChargesAll
Вернет все расходы- Parameters:
contractId
-- Returns:
- Throws:
ru.bitel.bgbilling.common.BGException
-
updatePayment
public void updatePayment(int userId, int cid, BonusPayment payment) throws ru.bitel.bgbilling.common.BGException Создание платежа. После совершения платежа, в платеже будет реальный его id.
Либо, если id > 0, обновление даты завершения платежа.- Parameters:
userId
- - пользователь совершивcid
- - код договораpayment
- - бонусный платеж- Throws:
ru.bitel.bgbilling.common.BGException
-
addCharge
public void addCharge(int userId, int cid, BonusCharge charge) throws ru.bitel.bgbilling.common.BGException Добавление расхода- Parameters:
userId
-cid
- - номер договораcharge
- - расход. После добаления, id будет присвоено значение.- Throws:
ru.bitel.bgbilling.common.BGException
-
deletePayment
public void deletePayment(int paymentId) throws ru.bitel.bgbilling.common.BGException Удаление прихода- Parameters:
paymentId
- - ид прихода- Throws:
ru.bitel.bgbilling.common.BGException
-
deleteCharge
public void deleteCharge(int chargeId) throws ru.bitel.bgbilling.common.BGException Удаление расхода.- Parameters:
chargeId
- - ид расхода- Throws:
ru.bitel.bgbilling.common.BGException
-
deleteChargeAccordingToContractChargeId
public void deleteChargeAccordingToContractChargeId(int contractChargeId) throws ru.bitel.bgbilling.common.BGException Удаление расхода по ид расхода договора.- Parameters:
chargeId
- - ид расхода- Throws:
ru.bitel.bgbilling.common.BGException
-
getPaymentDetailsList
public List<BonusPayment> getPaymentDetailsList(int chargeId) throws ru.bitel.bgbilling.common.BGException - Parameters:
chargeId
- - ид расхода- Returns:
- вернет список платежей у которых данный расход списывал средства, в поле сумма у приходов будет сумма которую данный расход списал, а не сумма всего прихода.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getChargeDetailsList
@Deprecated public List<BonusCharge> getChargeDetailsList(int paymentId) throws ru.bitel.bgbilling.common.BGException Deprecated.- Throws:
ru.bitel.bgbilling.common.BGException
-
getDetailsChargeList
public List<BonusDetailCharge> getDetailsChargeList(int paymentId) throws ru.bitel.bgbilling.common.BGException - Parameters:
paymentId
- - ид бонусного платежа- Returns:
- вернет список расходов которые списывали средства с данного прихода, поле суммы у расхода будет занесенно сумма расхода конкретно для этого прихода, а не та сумма которую списал данный расход.
- Throws:
ru.bitel.bgbilling.common.BGException
-
deleteDeatails
public void deleteDeatails(int id) throws ru.bitel.bgbilling.common.BGException Удаление деталей расхода по его ид.- Parameters:
id
- - ид детали расхода.- Throws:
ru.bitel.bgbilling.common.BGException
-
isUsePaymentsInDetailsTable
public boolean isUsePaymentsInDetailsTable(int paymentId) - Parameters:
paymentId
- - ид платежа
-
addDetailsItem
public void addDetailsItem(int chargeId, int paymentId, BigDecimal sum) throws ru.bitel.bgbilling.common.BGException Добавит детали расхода, какую сумму какой расход списал с конкретного платежа.- Parameters:
chargeId
- - ид расхода.paymentId
- - ид прихода.sum
- - сумма списание с данного расхода.- Throws:
ru.bitel.bgbilling.common.BGException
-
updateDetailsCharge
public void updateDetailsCharge(int id, int paymentId, BigDecimal sum) throws ru.bitel.bgbilling.common.BGException Обновление записи bonus_details_charge.- Parameters:
id
- - код bonus_details_charge. Не путать с bonus_contract_charge.paymentId
- - код платежа с которого списывает данная часть расхода.sum
- - сумма.- Throws:
ru.bitel.bgbilling.common.BGException
-
getBalance
- Parameters:
cid
- - номер договораdate
- - на какую дату- Returns:
- вернет баланс на конкретную дату
- Throws:
ru.bitel.bgbilling.common.BGException
-
getBalance
public BigDecimal getBalance(int cid, Date date, Integer chargeId, boolean withFutureCharge) throws ru.bitel.bgbilling.common.BGException - Parameters:
cid
- - номер договораdate
- - на какую датуchargeId
- - если не null, ид бонусного расхода который не будет учитываться.withFutureCharge
- - если = true, то вернет баланс с учетом будущих расходов у приходов которые были активны на тот момент. Если баланс берется на текущий момент, то разницы не должно быть.- Returns:
- вернет баланс на конкретную дату
- Throws:
ru.bitel.bgbilling.common.BGException
-
getNotActiveBalanceStill
public BigDecimal getNotActiveBalanceStill(int cid, Date date) throws ru.bitel.bgbilling.common.BGException - Parameters:
cid
- - номер договораdate
- - на какую дату- Returns:
- - сумму еще не активных платежей, которые будут доступны в будущем
- Throws:
ru.bitel.bgbilling.common.BGException
-
pluginInclude
public boolean pluginInclude(int cid) throws ru.bitel.bgbilling.common.BGException - Parameters:
cid
- - номер договора- Returns:
- вернет true- если плагин включен у данного договора
- Throws:
ru.bitel.bgbilling.common.BGException
-
updatePluginInclude
public void updatePluginInclude(int cid, boolean include) throws ru.bitel.bgbilling.common.BGException Включение/выкл. плагина у договора.- Parameters:
cid
- - номер договора.include
- - если true то вкл. плагина у договора.- Throws:
ru.bitel.bgbilling.common.BGException
-
updateProgram
Обновление или создание бонусной программы.- Parameters:
program
- - бонусная программ.- Throws:
ru.bitel.bgbilling.common.BGException
-
checkProgramPeriodOnCrossing
public boolean checkProgramPeriodOnCrossing(BonusProgram program) throws ru.bitel.bgbilling.common.BGException Проверка на пересечения нового периода бонусной программы с периодом программы у договоров.- Parameters:
program
- - бонусная программа у который выставлен проверяемый период.- Returns:
- - true если пересечение имеет место или program==null или период==null или dateFrom==null.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getProgram
- Parameters:
id
- - ид бонусной программы- Returns:
- бонусную программу, если существует, иначе null.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getProgramList
public List<BonusProgram> getProgramList(Date date, int programTypeId) throws ru.bitel.bgbilling.common.BGException Возврощает заведенные бонусные программы.- Parameters:
date
- - вернет активные программы на эту дату, если = null, то вернет все програамы вне зависемости от активности.programTypeId
- - вернет программы только данного типа, если = 0, то вернет все программы вне зависемости от типа.- Returns:
- - список бонусных программ.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getProgramCotractList
public List<BonusContractProgram> getProgramCotractList(int cid) throws ru.bitel.bgbilling.common.BGException - Parameters:
cid
- - номер договора.- Returns:
- список бонусных програма у данного договора.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getProgramCotractList
public List<BonusContractProgram> getProgramCotractList(int cid, int programTypeId, Date date) throws ru.bitel.bgbilling.common.BGException - Parameters:
cid
- - номер договора.programTypeId
- - тип программы. Если < 1, то вернет все программы. На момент создание метода существует только 2 типа программ: операционный=1 и динамический=2.date
- - активную на дату, если передать null, то вернет за все время.- Returns:
- список бонусных программ у данного договора.
- Throws:
ru.bitel.bgbilling.common.BGException
-
updateProgramContract
public void updateProgramContract(BonusContractProgram contractProgram) throws ru.bitel.bgbilling.common.BGException Обновление или добовление бонусной программы для договора.- Parameters:
contractProgram
- - бонусная программа для договора.- Throws:
ru.bitel.bgbilling.common.BGException
-
programInContractList
@Deprecated public List<Integer> programInContractList(int idProgram, Date date) throws ru.bitel.bgbilling.common.BGException Deprecated.- Throws:
ru.bitel.bgbilling.common.BGException
-
getContractsOfThisProgram
public List<Integer> getContractsOfThisProgram(int idProgram, Date date) throws ru.bitel.bgbilling.common.BGException - Parameters:
idProgram
- - ид программы.date
- - на какое время, если null то вернет за все время.- Returns:
- список ид договоров у которых активна данная бонусная программа на момент date.
- Throws:
ru.bitel.bgbilling.common.BGException
-
checkContractOnProgramType
public boolean checkContractOnProgramType(int cid, int programType, Date date) throws ru.bitel.bgbilling.common.BGException - Parameters:
cid
- - номер договораprogramType
- - тип программы(пока статик поля в BonusProgram)date
- на какую дату проверку- Returns:
- если у договора есть активные программы с данным типом бонусной программы то true
- Throws:
ru.bitel.bgbilling.common.BGException
-
deleteProgram
public void deleteProgram(int programId) throws ru.bitel.bgbilling.common.BGException Удаление бонусной программы.- Parameters:
programId
- - ID бонусной программы.- Throws:
ru.bitel.bgbilling.common.BGException
-
getProgramAction
Получение программы действий для бонусной программы.- Returns:
- соответствующий класс конкретной программы.
-
getProgramSpecificationForDynamicProgram
Вернет спецификацию для динамической программы по ее полному имени.- Returns:
- в случае успеха BonusProgramSpecification, иначе null.
-
updateDataProgramOfContract
public void updateDataProgramOfContract(int programId, int contractId, Map<String, String> map) throws SQLExceptionСохранение/обновлене данных для договора по выбранной программе.- Parameters:
programId
- - код программы.contractId
- - код договора.map
- - непосредственно сами данные которые нужно сохранить.- Throws:
SQLException
-
getDataProgramOfContract
public Map<String,String> getDataProgramOfContract(int programId, int contractId) throws ru.bitel.bgbilling.common.BGException Получение мапа с данными для договора по выбранной программе.- Parameters:
programid
- - код программы.contractId
- - код договора.- Returns:
- map с данными, всегда не null.
- Throws:
SQLException
ru.bitel.bgbilling.common.BGException
-