public final class SormUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CHANGED_CONTRACT_UPLOAD_TABLE |
static char |
CSV_SEPARATOR |
static java.lang.String |
PARAMETER_KEY_REGION |
static java.lang.String |
PARAMETER_KEY_ZONE |
static int |
sormModuleId |
Constructor and Description |
---|
SormUtils() |
Modifier and Type | Method and Description |
---|---|
static boolean |
checkThreeYearsAgo(java.util.Date dateTo)
Т.к. большинство поставщиков СОРМ просит данные за последние 3 года, создан метод для проверки даты
|
static boolean |
checkValidAddress(AddressStruct address)
Проверка адреса на заполненность обязательных для СОРМа полей
|
static void |
clearContractLogTable(java.sql.Connection con,
int sormProjectId)
Чистит запись о последнем выгруженном договоре для проекта СОРМ
|
static EntityAttrAddress |
getAddressFromDeviceAttributes(Device device) |
static java.util.List<Pair<java.lang.Integer,java.util.List<Pair<java.lang.String,java.lang.Integer>>>> |
getAddressList(Preferences config,
java.util.List<SormContract> contracts)
Для каждого договора формирует пары номер договора - пара,
где
first-идентификатор типа адреса,
second-pid параметра договора для данного типа адреса
|
static java.lang.String |
getAddressType(java.lang.String configAddressKey)
Используется для MfiSoft и SpecTeh
Соотносит тип адреса из конфига с типом адреса,
который должен быть указан в формировании файла для выгрузки адресов абонента
|
static java.lang.String |
getAdminEmail(Preferences config)
Возвращает указанный email для отправки информации по ошибкам
|
static java.util.List<Bunch> |
getBunches(Preferences config)
Возвращает список пучков оператора сохранённых в конфиге
|
static java.lang.String |
getConnectionStandart(Preferences config) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.nio.file.Path file) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.nio.file.Path file,
char quoteCharacter) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.nio.file.Path path,
java.nio.charset.Charset encoding,
char quoteCharacter) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.nio.file.Path path,
java.nio.charset.Charset charset,
char quoteCharacter,
char separator) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.nio.file.Path file,
java.lang.String encoding) |
static java.util.List<DialUpLogin> |
getDialUpLogins(ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext,
Preferences config,
java.util.List<SormContract> contracts)
Привязка договоров к логинам модуля DialUp.
|
static java.util.List<DialUpNAS> |
getDialUpNasList(ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext,
Preferences config,
boolean isSwitches)
список nas'ов модуля dialUp для выгрузки как коммутаторов
|
static java.util.List<IdTitle> |
getDocumentsTypes(Preferences config,
ContractParameterManager cpm)
Возвращает список документов из выбранного пользователем спискового параметра договора
|
static int |
getDocumentTypeIdOfContract(Preferences config,
ContractParameterManager cpm,
int cid,
java.util.List<IdTitle> documentTypes)
Возвращает id типа документа для договора
|
static java.lang.String |
getFullOperatorAddress(Preferences config)
Формирует адрес оператора одной строкой из конфигурации выгрузки
|
static java.util.List<java.lang.Integer> |
getIdsModulesFromConfig(Preferences config,
java.lang.String subKey)
Возвращает из конфига список id модулей по подключу.
|
static java.util.List<java.lang.Integer> |
getIdsServices(Preferences config) |
static java.util.List<Device> |
getInetDevices(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список устройств модуля Inet для выбранных в конфиге экземпляров Inet
|
static java.util.List<InetServ> |
getInetServices(Preferences preferences,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext,
java.util.List<SormContract> contractIds) |
static java.util.List<InternalUser> |
getInternalUsers(java.sql.Connection connection,
ObjectManager objectManager,
ParamValueManager valueManager,
int contractId,
java.lang.String contractTitle,
Preferences config) |
static java.lang.String[] |
getIPGatewayItem(Device inetDevice)
Только для МФИСофт и Спец.Технологий!
|
static java.util.List<IpResource> |
getIPResources(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список ip-ресурсов для выбранных в конфиге модулей inet,
за исключением тех, которые были выбраны, как не выгружаемые
|
static int |
getLastUploadContractId(java.sql.Connection con,
int sormProjectId)
Возвращает id последнего выгруженного договора для конкретного проекта выгрузки СОРМ
|
static java.util.List<java.lang.Integer> |
getListIntegerFromConfigByKey(Preferences config,
java.lang.String key)
Возвращает список(Integer) сохранённых в конфиге по переданному ключу
|
static java.util.Map<java.lang.Integer,java.util.List<InetServ>> |
getPairsAbonentInetServices(Preferences config,
java.util.List<SormContract> contracts,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Получение списка сервисов всех установленных модулей Inet с уникальными ip-адресами всех договоров, которые возвращает метод getContractIds
|
static java.util.Map<java.lang.Integer,java.util.List<java.lang.Integer>> |
getPairsMidsListIds(Preferences preferences,
java.lang.String subKey)
Достаёт Map по подключу из переданного конфига, где ключ-mid, value-ids для этого модуля
|
static java.lang.String |
getParameterOfCity(ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext,
AddressManager addressManager,
AddressStruct addressStruct,
java.lang.String parameterKey)
Возвращает значение дополнительного параметра для города
|
static java.util.List<Source> |
getPhoneSources(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext context) |
static java.util.List<Device> |
getSelectedGateways(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список устройств, которые выбраны, как шлюзы оператора
|
static java.util.List<java.lang.Integer> |
getSelectedInetModulesToUpload(Preferences config) |
static java.util.List<ServiceSorm> |
getSelectedServicesForUpload(Preferences config)
Возвращает список услуг, которые были выбраны пользователем для выгрузки
|
static java.util.Map<java.lang.String,java.util.List<java.lang.Integer>> |
getTelephoneModulesIds(Preferences config)
Возвращает список выбранныз для выгрузки телефонных модулей
|
static java.util.List<SormContract> |
getUploadContracts(java.sql.Connection con,
int sormProjectId,
boolean isFullUpload,
Preferences config)
Получение списка id договоров, которые будут участвовать в выгрузке.
|
static java.nio.file.Path |
getUploadFile(java.lang.String fileUploadPath,
java.lang.String filePrefix,
java.lang.String datePattern)
Создает новый файл на диске по заданному пути
|
static java.util.List<NumberRange> |
getUploadPhoneNumberingResources(Preferences config,
java.sql.Connection connection)
Возвращает список номеров, которые должны быть выгружены для выбранных модулей phone
|
static java.util.List<NumberRange> |
getUploadVoiceNumberingResources(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список номеров, которые должны быть выгружены
для выбранных экземпляров модулей Voice
|
static java.util.List<Device> |
getVoiceDevices(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список устройств модуля Voice для выбранных модулей в конфиге
|
static java.util.Map<java.lang.Integer,java.util.List<PhoneResourceSubscription>> |
getVoiceModuleSubscriptionList(java.util.List<java.lang.Integer> voiceModules,
ru.bitel.bgbilling.kernel.container.managed.ServerContext context,
Preferences config) |
static java.lang.String |
ip2Hex(java.lang.String ip)
Преобразование строки с ip-адресом из десятичного в шестнадцатеричное представление
|
static void |
sendErrorToEmail(Setup setup,
java.lang.Exception ex,
java.lang.String subject) |
static void |
sendErrorToEmail(Setup setup,
java.lang.Exception ex,
java.lang.String subject,
java.lang.String email)
В случае возникновения любой ошибки формируется письмо, которое отправляется на почту администратору.
|
static java.lang.String |
trimField(java.lang.String value,
int length)
Обрезает строку до указанной длины.
|
static void |
updateContractLogTable(java.sql.Connection con,
int lastUploadCid,
int sormProjectId)
Обновляет информацию о последнем выгруженном договоре
|
public static final java.lang.String CHANGED_CONTRACT_UPLOAD_TABLE
public static final java.lang.String PARAMETER_KEY_REGION
public static final java.lang.String PARAMETER_KEY_ZONE
public static final char CSV_SEPARATOR
public static int sormModuleId
public static java.util.List<SormContract> getUploadContracts(java.sql.Connection con, int sormProjectId, boolean isFullUpload, Preferences config)
con
- - соединение с БДsormProjectId
- - id проекта СОРМ для которого производится выгрузка.isFullUpload
- - флаг, полная ли выгрузка базы абонентов производится или инкрементальнаяconfig
- - конфигурация проекта СОРМ, в которой есть информация о выбранных для выгрузки модулейpublic static int getLastUploadContractId(java.sql.Connection con, int sormProjectId)
public static void updateContractLogTable(java.sql.Connection con, int lastUploadCid, int sormProjectId) throws java.sql.SQLException
lastUploadCid
- - id последнего выгруженного договораsormProjectId
- - id проекта выгрузки СОРМjava.sql.SQLException
public static void clearContractLogTable(java.sql.Connection con, int sormProjectId) throws ru.bitel.bgbilling.common.BGException
sormProjectId
- - id проекта СОРМru.bitel.bgbilling.common.BGException
public static java.util.Map<java.lang.Integer,java.util.List<InetServ>> getPairsAbonentInetServices(Preferences config, java.util.List<SormContract> contracts, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static java.util.List<InetServ> getInetServices(Preferences preferences, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext, java.util.List<SormContract> contractIds) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static java.util.List<java.lang.Integer> getSelectedInetModulesToUpload(Preferences config)
public static java.util.List<java.lang.Integer> getListIntegerFromConfigByKey(Preferences config, java.lang.String key)
public static java.util.List<java.lang.Integer> getIdsServices(Preferences config) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static java.util.List<ServiceSorm> getSelectedServicesForUpload(Preferences config)
public static void sendErrorToEmail(Setup setup, java.lang.Exception ex, java.lang.String subject)
public static void sendErrorToEmail(Setup setup, java.lang.Exception ex, java.lang.String subject, java.lang.String email)
setup
- конфигурация биллингаex
- экземпляр исключения. Из него берется сообщение об ошибке, а также печатается стектрейсsubject
- тема письма. Например, ошибка при выгрузке такого то файла, при формировании такого то списка и т.д.public static java.lang.String trimField(java.lang.String value, int length)
value
- строка, длину которой, возможно, нужно сократитьlength
- длина, до которой обрезаем строкуpublic static java.nio.file.Path getUploadFile(java.lang.String fileUploadPath, java.lang.String filePrefix, java.lang.String datePattern)
fileUploadPath
- путь в локальной директории для создания файлаfilePrefix
- префикс создаваемого файлаdatePattern
- формат даты, которая должна присутствовать в названии файлаpublic static java.lang.String getAdminEmail(Preferences config)
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.nio.file.Path file) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.nio.file.Path file, java.lang.String encoding) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.nio.file.Path file, char quoteCharacter) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.nio.file.Path path, java.nio.charset.Charset encoding, char quoteCharacter) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.nio.file.Path path, java.nio.charset.Charset charset, char quoteCharacter, char separator) throws java.io.IOException
path
- - созданный для записи файлquoteCharacter
- - Для поставщика Специальные Технологии использовать CSVWriter.NO_QUOTE_CHARACTER, для остальных CSVWriter.DEFAULT_QUOTE_CHARACTERjava.io.IOException
public static java.util.List<java.lang.Integer> getIdsModulesFromConfig(Preferences config, java.lang.String subKey)
public static java.util.Map<java.lang.Integer,java.util.List<java.lang.Integer>> getPairsMidsListIds(Preferences preferences, java.lang.String subKey)
public static java.util.List<Device> getInetDevices(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<DialUpNAS> getDialUpNasList(ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext, Preferences config, boolean isSwitches) throws ru.bitel.bgbilling.common.BGException
isSwitches
- если true, то вернётся список nas'ов выбранных в качестве коммутаторов,
если false, то список в качестве шлюзовru.bitel.bgbilling.common.BGException
public static java.util.List<DialUpLogin> getDialUpLogins(ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext, Preferences config, java.util.List<SormContract> contracts) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static java.util.List<IpResource> getIPResources(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<Device> getVoiceDevices(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<Source> getPhoneSources(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext context)
public static java.util.List<Device> getSelectedGateways(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<Bunch> getBunches(Preferences config)
public static java.util.List<NumberRange> getUploadVoiceNumberingResources(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<NumberRange> getUploadPhoneNumberingResources(Preferences config, java.sql.Connection connection)
public static java.util.Map<java.lang.String,java.util.List<java.lang.Integer>> getTelephoneModulesIds(Preferences config)
public static java.util.Map<java.lang.Integer,java.util.List<PhoneResourceSubscription>> getVoiceModuleSubscriptionList(java.util.List<java.lang.Integer> voiceModules, ru.bitel.bgbilling.kernel.container.managed.ServerContext context, Preferences config)
voiceModules
- - список id установленных модулей Voicepublic static boolean checkThreeYearsAgo(java.util.Date dateTo)
public static java.util.List<Pair<java.lang.Integer,java.util.List<Pair<java.lang.String,java.lang.Integer>>>> getAddressList(Preferences config, java.util.List<SormContract> contracts)
public static java.lang.String getAddressType(java.lang.String configAddressKey)
configAddressKey
- - тип адреса из конфигаpublic static java.lang.String ip2Hex(java.lang.String ip)
ip
- вида 192.168.1.12public static java.util.List<IdTitle> getDocumentsTypes(Preferences config, ContractParameterManager cpm) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static int getDocumentTypeIdOfContract(Preferences config, ContractParameterManager cpm, int cid, java.util.List<IdTitle> documentTypes) throws ru.bitel.bgbilling.common.BGException
config
- - конфиг выгрузкиcpm
- cid
- - id договораdocumentTypes
- - список типов документовru.bitel.bgbilling.common.BGException
public static java.lang.String getConnectionStandart(Preferences config)
public static java.lang.String getParameterOfCity(ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext, AddressManager addressManager, AddressStruct addressStruct, java.lang.String parameterKey) throws ru.bitel.bgbilling.common.BGException
parameterKey
- - ключ параметра, значение которого будет возвращеноaddressStruct
- - адрес из которого будет взят город, у которого будет взят параметрru.bitel.bgbilling.common.BGException
public static boolean checkValidAddress(AddressStruct address)
public static java.lang.String[] getIPGatewayItem(Device inetDevice)
inetDevice
- устройство модуля inetpublic static java.lang.String getFullOperatorAddress(Preferences config)
public static java.util.List<InternalUser> getInternalUsers(java.sql.Connection connection, ObjectManager objectManager, ParamValueManager valueManager, int contractId, java.lang.String contractTitle, Preferences config)
public static EntityAttrAddress getAddressFromDeviceAttributes(Device device)