Class SubscriptionDao
java.lang.Object
ru.bitel.bgbilling.plugins.dispatch.server.dao.SubscriptionDao
DAO для работы с подписками на рассылки напрямую. Вместо работы с этим DAO рекомендуется работать с веб-сервисом DispatchService
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
delete
(int subscriptionId) Удаляет подписку по её коду.void
deleteByDispatch
(int id) Удаляет подписки для данного типа рассылок.deleteByHash
(String hash) Фактически - отписка от рассылки для определенного контакта по хешу этой подписки.void
deleteContractSubscriptions
(int contractId) Удаляет подписки договора.void
generateHashes
(Subscription subscription) Генерирует хеш для подписки и заносит его в БД.get
(int id) Возвращает подписку по её коду.Получение подписки на рассылку по ее хешуgetList
(int dispatchId, int contractId) Возвращает список подписок по условиям.boolean
isContactSubscribed
(int contactId) Проверяет, подписан ли контакт с данным кодом хотя бы на одну рассылку.void
update
(Subscription subscription) Обновляет подписку.
-
Constructor Details
-
SubscriptionDao
-
-
Method Details
-
get
Возвращает подписку по её коду.- Parameters:
id
- код подписки- Returns:
- экземпляр подписки
- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибки
-
getList
public List<Subscription> getList(int dispatchId, int contractId) throws ru.bitel.bgbilling.common.BGException - Throws:
ru.bitel.bgbilling.common.BGException
-
getList
public List<Subscription> getList(int dispatchId, int contractId, Boolean active) throws ru.bitel.bgbilling.common.BGException Возвращает список подписок по условиям.- Parameters:
dispatchId
- если dispatchId > 0, то возвращает только подписки на эту рассылку.contractId
- если contractId > 0, то возвращает только подписки данного договора.active
- true - возвращает только активные подписки, false - все. Под активностью подразумевается наличие установленной галочки Активна.- Returns:
- список подписок
- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибок
-
delete
public void delete(int subscriptionId) throws ru.bitel.bgbilling.common.BGException Удаляет подписку по её коду.- Parameters:
subscriptionId
- код подписки- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибок
-
deleteByDispatch
public void deleteByDispatch(int id) throws ru.bitel.bgbilling.common.BGException Удаляет подписки для данного типа рассылок.- Parameters:
id
- код рассылки- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибок
-
isContactSubscribed
public boolean isContactSubscribed(int contactId) throws ru.bitel.bgbilling.common.BGException Проверяет, подписан ли контакт с данным кодом хотя бы на одну рассылку.- Parameters:
contactId
- код контакта.- Returns:
- true - есть минимум одна подписка, false - нет ни одной подписки
- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибки
-
update
Обновляет подписку.- Parameters:
subscription
- экземпляр подписки- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибки
-
deleteContractSubscriptions
public void deleteContractSubscriptions(int contractId) throws ru.bitel.bgbilling.common.BGException Удаляет подписки договора.- Parameters:
contractId
- код договора.- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибки
-
deleteByHash
Фактически - отписка от рассылки для определенного контакта по хешу этой подписки. Хеш подписки вычисляется как MD5(код подписки + код контакта).- Parameters:
hash
- хеш подписки.- Returns:
- экземпляр подписки
- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибки
-
getByHash
Получение подписки на рассылку по ее хешу- Parameters:
hashString
- хеш подписки. вычисляется как MD5(код подписки + код контакта)- Returns:
- экземпляр подписки
- Throws:
ru.bitel.bgbilling.common.BGException
-
generateHashes
Генерирует хеш для подписки и заносит его в БД. Хеш необходим для дальнейшей возможности отписаться от email-рассылки. Вычисляется как MD5 от строки "<код подписки>+<код контакта>".- Parameters:
subscription
- подписка на рассылку с контактами, для которых формируется хеш.- Throws:
ru.bitel.bgbilling.common.BGException
- в случае sql-ошибки
-