Class ContractManager
java.lang.Object
bitel.billing.server.contract.bean.ContractManager
- All Implemented Interfaces:
java.lang.AutoCloseable
,ru.bitel.common.worker.Recyclable
public class ContractManager
extends java.lang.Object
implements ru.bitel.common.worker.Recyclable, java.lang.AutoCloseable
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
MESSAGE_ABOUT_DUPLICATE
static java.lang.String
TABLE_CONTRACT
-
Constructor Summary
Constructors Constructor Description ContractManager(java.sql.Connection con)
-
Method Summary
Modifier and Type Method Description void
addContractGroup(int cid, int groupId)
Привязываем договор к группе.java.lang.String
addSub(int superId, int subId, int subMode)
Добавляет договора в качестве субдоговора в другой договораboolean
checkContractService(int contractId, int serviceId, java.util.Date date)
Проверка наличия на договоре услуги на указанную датуboolean
checkContractTitleOnDublication(java.lang.String contractTitle, int contractId)
Проверка, если в базе договора у которых id<>contractId AND UPPER(title)=contractTirle.toUpperCase()void
close()
void
closeContract(int cid)
Закрываем период действия договораvoid
closeContract(int cid, int mid, int userId)
Закрываем период действия договора текущей датойvoid
closeContract(int cid, int mid, int userId, java.util.Date date)
Закрываем период действия договора указанной датойContract
createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd)
Создает договор по шаблонуContract
createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode)
Создает договор по шаблонуContract
createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode, java.lang.String customTitle)
Создает договор по шаблонуContract
createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode, java.lang.String customTitle, int userId)
Создает договор по шаблонуContract
createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode, java.lang.String customTitle, int userId, java.util.Map<java.lang.String,java.lang.Object> params)
Создает договор по шаблонуvoid
deleteContractGroup(int cid, long groupId)
Удаляем договор из группы.java.lang.String
freeContract(int cid)
Перевод субдоговора в независимый договорContract
getContractById(int contractId)
Возвращает договор по его кодуContract
getContractByTitle(java.lang.String title)
Deprecated.java.util.Map<java.lang.Integer,java.lang.Integer>
getContractParameterGroupCountMap()
Возвращает Map содержащий коды групп параметров договоров и кол-ва договоров в каждой из них ("SELECT pgid, COUNT(*) FROM contract GROUP BY pgid")java.util.List<Contract>
getContracts(java.lang.String idList)
Возвращает список Договоров по строке с кодами договоров, перечисленными через запятуюjava.util.List<Contract>
getContractsByTitles(java.lang.String titles)
Возвращает договора по списку их номеров.ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet
getRealtimeTariffTreeSet(int cid, java.util.Calendar time, java.lang.String module, int mid, boolean useChache)
Deprecated.ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet
getRealtimeTariffTreeSet(int cid, java.util.Calendar time, java.lang.String module, int mid, int emid, int eid, boolean useChache)
Deprecated.ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet
getRealtimeTariffTreeSet(int cid, java.util.Date date, java.lang.String module, int mid, boolean useChache)
Создает TariffTreeSet для обсчета сессийru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet
getRealtimeTariffTreeSet(int cid, java.util.Date time, java.lang.String module, int mid, int emid, int eid, boolean useChache)
Создает TariffTreeSet для обсчета сессийjava.util.List<Contract>
getSubContracts(int cid)
Получает все субдоговоры данного договора.java.util.List<Contract>
getSubContracts(int cid, int subMode)
Получает зависимые или независимые субдоговора данного договораru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet
getTariffTreeSetForDay(int contractId, java.time.LocalDate time, java.lang.String module, int moduleId, boolean useChache)
Создает TariffTreeSet для обработки одного дняru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet
getTariffTreeSetForDay(int contractId, java.util.Calendar time, java.lang.String module, int moduleId, boolean useChache)
Deprecated.boolean
isSubContract(int cid, int subcid)
Проверят зависимый ли контракт один от другого.void
recycle()
void
updateContract(Contract contract)
Обновление записи о договореvoid
updateLastTariffChange(int cid)
Deprecated.Вместо этого метода теперь будет добавление события на изменение тарифных плановvoid
updateSuperContractDependSubList(int superId)
Обновляет перечень зависимых субдоговоров.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
TABLE_CONTRACT
public static final java.lang.String TABLE_CONTRACT- See Also:
- Constant Field Values
-
MESSAGE_ABOUT_DUPLICATE
public static final java.lang.String MESSAGE_ABOUT_DUPLICATE- See Also:
- Constant Field Values
-
-
Constructor Details
-
ContractManager
public ContractManager(java.sql.Connection con)
-
-
Method Details
-
createFromPattern
public Contract createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd) throws java.lang.ExceptionСоздает договор по шаблону- Parameters:
pattern_id
- номер шаблонаtitle
- имяdate
- датаpswd
- пароль- Returns:
- Throws:
java.lang.Exception
-
createFromPattern
public Contract createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode) throws java.lang.ExceptionСоздает договор по шаблону- Parameters:
pattern_id
- номер шаблонаtitle
- имяdate
- датаpswd
- парольtitleParams
- параметры имениinModules
- проверка в модуляхsuperId
- ID супердоговораsubMode
- режим субдоговора- Returns:
- Throws:
java.lang.Exception
-
createFromPattern
public Contract createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode, java.lang.String customTitle) throws java.lang.ExceptionСоздает договор по шаблону- Parameters:
pattern_id
- номер шаблонаtitle
- имяdate
- датаpswd
- парольtitleParams
- параметры имениinModules
- проверка в модуляхsuperId
- ID супердоговораsubMode
- режим субдоговораcustomTitle
- ручной режим задания имени- Returns:
- Throws:
java.lang.Exception
-
createFromPattern
public Contract createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode, java.lang.String customTitle, int userId) throws java.lang.ExceptionСоздает договор по шаблону- Parameters:
pattern_id
- номер шаблонаtitle
- имяdate
- датаpswd
- парольtitleParams
- параметры имениinModules
- проверка в модуляхsuperId
- ID супердоговораsubMode
- режим субдоговораcustomTitle
- ручной режим задания имениuserId
- код пользователя биллинга- Returns:
- Throws:
java.lang.Exception
-
createFromPattern
public Contract createFromPattern(int pattern_id, java.lang.String title, java.util.Calendar date, java.lang.String pswd, java.util.Map<java.lang.String,java.lang.Object> titleParams, boolean inModules, int superId, int subMode, java.lang.String customTitle, int userId, java.util.Map<java.lang.String,java.lang.Object> params) throws java.lang.ExceptionСоздает договор по шаблону- Parameters:
pattern_id
- номер шаблонаtitle
- имяdate
- датаpswd
- парольtitleParams
- параметры имениinModules
- проверка в модуляхsuperId
- ID супердоговораsubMode
- режим субдоговораcustomTitle
- ручной режим задания имениuserId
- код пользователя биллингаparams
- дополнительные параметры создания договора для модулей- Returns:
- Throws:
java.lang.Exception
-
getContracts
Возвращает список Договоров по строке с кодами договоров, перечисленными через запятую- Parameters:
idList
-- Returns:
-
getContractById
Возвращает договор по его коду- Parameters:
contractId
- код договора- Returns:
-
getContractByTitle
Deprecated.Использовать ContractDao - getByTitle Возвращает договор по его номеру- Parameters:
title
- номер договора- Returns:
-
getContractsByTitles
Возвращает договора по списку их номеров.- Parameters:
titles
- номера договоров- Returns:
-
getRealtimeTariffTreeSet
public ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet getRealtimeTariffTreeSet(int cid, java.util.Date date, java.lang.String module, int mid, boolean useChache)Создает TariffTreeSet для обсчета сессий- Parameters:
contract
- BGContractmodule
- Stringmid
- intuseChache
- boolean
-
getRealtimeTariffTreeSet
@Deprecated public ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet getRealtimeTariffTreeSet(int cid, java.util.Calendar time, java.lang.String module, int mid, boolean useChache)Deprecated. -
getRealtimeTariffTreeSet
@Deprecated public ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet getRealtimeTariffTreeSet(int cid, java.util.Calendar time, java.lang.String module, int mid, int emid, int eid, boolean useChache)Deprecated. -
getRealtimeTariffTreeSet
public ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet getRealtimeTariffTreeSet(int cid, java.util.Date time, java.lang.String module, int mid, int emid, int eid, boolean useChache)Создает TariffTreeSet для обсчета сессий- Parameters:
contract
- BGContractmodule
- Stringmid
- intuseChache
- boolean
-
getTariffTreeSetForDay
@Deprecated public ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet getTariffTreeSetForDay(int contractId, java.util.Calendar time, java.lang.String module, int moduleId, boolean useChache)Deprecated. -
getTariffTreeSetForDay
public ru.bitel.bgbilling.kernel.tariff.server.tree.TariffTreeSet getTariffTreeSetForDay(int contractId, java.time.LocalDate time, java.lang.String module, int moduleId, boolean useChache)Создает TariffTreeSet для обработки одного дня -
freeContract
public java.lang.String freeContract(int cid) throws java.sql.SQLExceptionПеревод субдоговора в независимый договор- Parameters:
cid
- код договора- Throws:
java.sql.SQLException
-
updateSuperContractDependSubList
public void updateSuperContractDependSubList(int superId) throws java.sql.SQLExceptionОбновляет перечень зависимых субдоговоров.- Parameters:
superId
- код супердоговора- Throws:
java.sql.SQLException
-
addSub
public java.lang.String addSub(int superId, int subId, int subMode) throws java.sql.SQLException, ru.bitel.bgbilling.common.BGExceptionДобавляет договора в качестве субдоговора в другой договора- Parameters:
superId
- супердоговорsubId
- субдоговорsubMode
- режим "субирования"- Returns:
- null - если все успешно, строку с ошибкой - если произошла ошибка
- Throws:
java.sql.SQLException
ru.bitel.bgbilling.common.BGException
-
getSubContracts
Получает все субдоговоры данного договора.- Parameters:
cid
- код договора.- Returns:
- список субдоговоров.
-
isSubContract
public boolean isSubContract(int cid, int subcid) throws ru.bitel.bgbilling.common.BGExceptionПроверят зависимый ли контракт один от другого.- Parameters:
cid
- договорsubcid
- потенциальный зависимый субконтракт.- Returns:
- true - зависимость есть.
- Throws:
ru.bitel.bgbilling.common.BGException
-
getSubContracts
Получает зависимые или независимые субдоговора данного договора- Parameters:
cid
-subMode
- зависимый или независимый режим из KernelConst- Returns:
-
updateLastTariffChange
@Deprecated public void updateLastTariffChange(int cid)Deprecated.Вместо этого метода теперь будет добавление события на изменение тарифных планов- Parameters:
cid
-
-
updateContract
Обновление записи о договоре- Parameters:
contract
-
-
checkContractTitleOnDublication
public boolean checkContractTitleOnDublication(java.lang.String contractTitle, int contractId)Проверка, если в базе договора у которых id<>contractId AND UPPER(title)=contractTirle.toUpperCase()- Parameters:
contractTitle
- название договора.contractId
- код договора для которого название проверяться не будет.- Returns:
- true - если дубликата нет.
-
addContractGroup
public void addContractGroup(int cid, int groupId) throws java.sql.SQLExceptionПривязываем договор к группе.- Parameters:
cid
- код договораgroupId
- код группы- Throws:
java.sql.SQLException
-
deleteContractGroup
public void deleteContractGroup(int cid, long groupId) throws java.sql.SQLExceptionУдаляем договор из группы.- Parameters:
cid
- код договораgroupId
- код группы- Throws:
java.sql.SQLException
-
closeContract
public void closeContract(int cid) throws java.sql.SQLException, ru.bitel.bgbilling.common.BGExceptionЗакрываем период действия договора- Parameters:
cid
- код договора- Throws:
java.sql.SQLException
ru.bitel.bgbilling.common.BGException
-
closeContract
public void closeContract(int cid, int mid, int userId) throws java.sql.SQLException, ru.bitel.bgbilling.common.BGExceptionЗакрываем период действия договора текущей датой- Parameters:
cid
- код договораmid
- код модуляuserId
- идентификатор пользователя- Throws:
java.sql.SQLException
ru.bitel.bgbilling.common.BGException
-
closeContract
public void closeContract(int cid, int mid, int userId, java.util.Date date) throws java.sql.SQLException, ru.bitel.bgbilling.common.BGExceptionЗакрываем период действия договора указанной датой- Parameters:
cid
- - код договораmid
- - код модуляuserId
- - идентификатор пользователяdate
- - дата закрытия договора- Throws:
java.sql.SQLException
ru.bitel.bgbilling.common.BGException
-
recycle
public void recycle()- Specified by:
recycle
in interfaceru.bitel.common.worker.Recyclable
-
getContractParameterGroupCountMap
public java.util.Map<java.lang.Integer,java.lang.Integer> getContractParameterGroupCountMap() throws ru.bitel.bgbilling.common.BGExceptionВозвращает Map содержащий коды групп параметров договоров и кол-ва договоров в каждой из них ("SELECT pgid, COUNT(*) FROM contract GROUP BY pgid")- Returns:
- Map
в какой группе сколько договоров - Throws:
ru.bitel.bgbilling.common.BGException
-
checkContractService
public boolean checkContractService(int contractId, int serviceId, java.util.Date date) throws ru.bitel.bgbilling.common.BGExceptionПроверка наличия на договоре услуги на указанную дату- Parameters:
contractId
- код договораserviceId
- код услугиdate
- дата- Returns:
- true - если услуга есть, false - услуги нет или дата вне периода
- Throws:
ru.bitel.bgbilling.common.BGException
-
close
public void close()- Specified by:
close
in interfacejava.lang.AutoCloseable
-