public final class SormUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CHANGED_CONTRACT_UPLOAD_TABLE |
static int |
sormModuleId |
Constructor and Description |
---|
SormUtils() |
Modifier and Type | Method and Description |
---|---|
static boolean |
checkThreeYearAgo(java.util.Date dateTo)
Т.к. большинство поставщиков СОРМ просит данные за последние 3 года, создан метод для проверки даты
|
static void |
clearContractLogTable(java.sql.Connection con,
int sormProjectId)
Чистит запись о последнем выгруженном договоре для проекта СОРМ
|
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.lang.String |
getAttributeFromBill(java.sql.Connection con,
int cid,
int billMid,
java.lang.String attributeName)
Получение значения реквизита по договору из модуля бухгалтерия
|
static java.util.List<Bunch> |
getBunches(Preferences config)
Возвращает список пучков оператора сохранённых в конфиге
|
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.io.File file) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.io.File file,
char quoteCharacter) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.io.File file,
java.lang.String encoding) |
static au.com.bytecode.opencsv.CSVWriter |
getCSVFile(java.io.File file,
java.lang.String encoding,
char quoteCharacter) |
static java.util.List<IdTitle> |
getDocumentsTypes(Preferences config,
ContractParameterManager cpm)
Возвращает список документов из выбранного пользователем спискового параметра договора
|
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,
java.sql.Connection con) |
static java.util.List<InetDevice> |
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<IpResource> |
getIPResources(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список ip-ресурсов для выбранных в конфиге модулей inet,
за исключением тех, которые были выбраны, как не выгружаемые
|
static int |
getLastPaymentId(java.sql.Connection con,
int sormProjectId)
Возвращает id последнего выгруженного платежа для конкретного проекта выгрузки СОРМ
|
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.lang.String |
getLocalUserPath(Preferences config)
Возвращает локальный путь для файлов, указанный пользователем в модуле
|
static java.util.List<Service> |
getNpayServicesList(Preferences config,
java.sql.Connection con)
Возвращает список услуг, которые были выбраны пользователем для выгрузки
|
static java.util.Map<java.lang.Integer,java.util.List<InetServ>> |
getPairsAbonentInetServices(Preferences preferences,
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.util.List<Payment> |
getPaymentList(java.sql.Connection connection,
int lastPaymentId,
int sormProjectId,
boolean isFullUpload)
Получение списка платежей договоров.
|
static java.lang.String |
getPaymentTypeCode(Preferences config,
int paymentTypeId)
Только для Спец.Технологий и МФИСОФТ!
|
static java.util.List<PaymentType> |
getPaymentTypes(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список типов платежей, которые были выбраны для выгрузки
|
static java.util.List<InetDevice> |
getSelectedGateways(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список устройств, которые выбраны, как шлюзы оператора
|
static java.util.Map<java.lang.String,java.util.List<java.lang.Integer>> |
getTelephoneModulesIds() |
static java.util.List<SormContract> |
getUploadContracts(java.sql.Connection con,
int sormProjectId,
boolean isFullUpload)
Получение списка id договоров, которые будут участвовать в выгрузке.
|
static java.io.File |
getUploadFile(java.lang.String fileUploadPath,
java.lang.String filePrefix,
java.lang.String datePattern)
Создает новый временный файл в темповой директории на диске
|
static java.util.List<PhoneResource> |
getUploadVoiceNumberingResources(Preferences config,
ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
Возвращает список номеров, которые должны быть выгружены
для всех установленных экземпляров модулей Voice
|
static java.util.List<VoiceDevice> |
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)
Обновляет информацию о последнем выгруженном договоре
|
static void |
updatePaymentsLogTable(java.sql.Connection con,
int lastPaymentId,
int sormProjectId)
Обновляет информацию о последнем выгруженном платеже
|
public static final java.lang.String CHANGED_CONTRACT_UPLOAD_TABLE
public static int sormModuleId
public static java.util.List<SormContract> getUploadContracts(java.sql.Connection con, int sormProjectId, boolean isFullUpload)
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 preferences, 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> getListIntegerFromConfigByKey(Preferences config, java.lang.String key)
public static java.util.List<Service> getNpayServicesList(Preferences config, java.sql.Connection con) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static java.util.List<java.lang.Integer> getIdsServices(Preferences config, java.sql.Connection con) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
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.io.File getUploadFile(java.lang.String fileUploadPath, java.lang.String filePrefix, java.lang.String datePattern)
fileUploadPath
- путь в локальной директории для создания файлаfilePrefix
- префикс создаваемого файлаpublic static java.lang.String getLocalUserPath(Preferences config)
public static java.lang.String getAdminEmail(Preferences config)
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.io.File file) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.io.File file, java.lang.String encoding) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.io.File file, char quoteCharacter) throws java.io.IOException
java.io.IOException
public static au.com.bytecode.opencsv.CSVWriter getCSVFile(java.io.File file, java.lang.String encoding, char quoteCharacter) throws java.io.IOException
file
- - созданный для записи файл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<InetDevice> getInetDevices(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<IpResource> getIPResources(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<VoiceDevice> getVoiceDevices(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.List<InetDevice> 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<PhoneResource> getUploadVoiceNumberingResources(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext)
public static java.util.Map<java.lang.String,java.util.List<java.lang.Integer>> getTelephoneModulesIds()
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 checkThreeYearAgo(java.util.Date dateTo)
public static java.lang.String getAttributeFromBill(java.sql.Connection con, int cid, int billMid, java.lang.String attributeName)
attributeName
- - имя атрибутаcid
- - id договораbillMid
- - id модуля бухгалтерии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 java.util.List<PaymentType> getPaymentTypes(Preferences config, ru.bitel.bgbilling.kernel.container.managed.ServerContext serverContext) throws ru.bitel.bgbilling.common.BGException
ru.bitel.bgbilling.common.BGException
public static java.util.List<Payment> getPaymentList(java.sql.Connection connection, int lastPaymentId, int sormProjectId, boolean isFullUpload) throws java.lang.Exception
connection
- соединение с БДlastPaymentId
- код последнего выгруженного платежаsormProjectId
- id проекта СОРМ для которого формируем список платежейisFullUpload
- флаг о том, полная выгрузка выполняется или инкрементальнаяjava.lang.Exception
public static java.lang.String getPaymentTypeCode(Preferences config, int paymentTypeId)
config
- - конфиг выгрузкиpaymentTypeId
- - id типа платежа в биллингеpublic static int getLastPaymentId(java.sql.Connection con, int sormProjectId) throws java.sql.SQLException
sormProjectId
- - id проекта выгрузки СОРМjava.sql.SQLException
public static void updatePaymentsLogTable(java.sql.Connection con, int lastPaymentId, int sormProjectId) throws java.sql.SQLException
lastPaymentId
- - id последнего выгруженного платежаsormProjectId
- - id проекта выгрузки СОРМjava.sql.SQLException