Package ru.bitel.bgbilling.kernel.contract.api.common.service

# Interface ContractService

public interface ContractService

- ## Method Summary

  Modifier and Type
  Method
  Description
  `List<ru.bitel.bgbilling.common.model.ConfigParameter>`
  `configParameterList(String className)`
  `Contract`
  `contractByTitle(String contractTitle)`
  `List<ContractCard>`
  `contractCardList(int contractId)`
  список карточек договора для указанного договра
  `org.json.JSONObject`
  `contractCommentPatternList(int contractId)`
  `String`
  `contractCommentPatternValue(int contractId, int patternId)`
  `int`
  `contractCreate(ContractCreateData contractCreateData)`
  `void`
  `contractCreateValidateParameters(ContractCreateData contractCreateData)`
  `void`
  `contractCreateValidateTariffs(ContractCreateData contractCreateData)`
  `void`
  `contractDateToUpdate(int contractId, Date dateTo)`
  `void`
  `contractDelete(int contractId, boolean save, String folder)`
  Удаление договора
  `void`
  `contractDomainUpdate(int contractId, int domainId)`
  Обновление домена договора
  `void`
  `contractFaceUpdate(int contractId, ContractFace contractFace)`
  `Contract`
  `contractGet(int contractId)`
  `ContractIdTitleComment`
  `contractIdTitleCommentGet(int contractId)`
  `org.json.JSONObject`
  `contractInfoGet(int contractId)`
  Информация о договоре
  `SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto>`
  `contractList(int contractId, String title, String comment, int fc, long groupMask, List<FilterEntityAttr> entityFilter, boolean subContracts, boolean closed, boolean hidden, Page page)`
  `String`
  `contractListByFilter(ContractFilters contractFilters, List<FilterEntityAttr> entityFilter, jakarta.xml.ws.Holder<Page> page)`
  `void`
  `contractModeUpdate(int contractId, ContractMode contractMode)`
  `void`
  `contractModuleAdd(int contractId, List<Integer> moduleIds)`
  `String`
  `contractModuleConfigGet(int contractId, int moduleId, String key)`
  `void`
  `contractModuleConfigSet(int contractId, int moduleId, String key, String value)`
  Установка параметра конфига модуля для договора.
  `void`
  `contractModuleDelete(int contractId, List<Integer> moduleIds)`
  `void`
  `contractParameterAddressUpdate(int contractId, EntityAttrAddress parameter)`
  `void`
  `contractParameterBooleanUpdate(int contractId, EntityAttrBoolean parameter)`
  `void`
  `contractParameterContractUpdate(int contractId, EntityAttrContract parameter)`
  `void`
  `contractParameterDateUpdate(int contractId, EntityAttrDate parameter)`
  `void`
  `contractParameterEmailUpdate(int contractId, EntityAttrEmail parameter)`
  `EntityAttr`
  `contractParameterGet(int contractId, int parameterId)`
  Получение параметра договора.
  `ContractParameterGroup`
  `contractParameterGroupGet(int id)`
  Deprecated.
  use `ContractParameterService.contractParameterGroupGet(int)`
  `List<ContractParameterGroup>`
  `contractParameterGroupList()`
  Deprecated.
  use `ContractParameterService.contractParameterGroupList()`
  `void`
  `contractParameterGroupSet(int contractId, int paramGroupId)`
  `List<ContractParameterHistoryData>`
  `contractParameterHistoryList(int contractId, int parameterId, int parameterType)`
  `void`
  `contractParameterIntUpdate(int contractId, EntityAttrInt parameter)`
  `List<IdTitleValue>`
  `contractParameterList(int contractId)`
  Параметры договора
  `void`
  `contractParameterListUpdate(int contractId, EntityAttrList parameter)`
  `MapHolder<Integer,EntityAttr>`
  `contractParameterMap(int contractId, int paramGroupId)`
  Map параметров договора.
  Если параметр не заведен (не указан, не добавлен), то данный параметр будет отсутствовать в результате.
  `MapHolder<Integer,EntityAttr>`
  `contractParameterMapByType(int contractId, int parameterType)`
  `void`
  `contractParameterMultiListUpdate(int contractId, EntityAttrMultiList parameter)`
  `void`
  `contractParameterPhoneUpdate(int contractId, EntityAttrPhone parameter)`
  `void`
  `contractParametersCopy(int fromContractId, int toContractId, List<Integer> parameterIds, String mode)`
  `void`
  `contractParameterTextUpdate(int contractId, EntityAttrText parameter)`
  `void`
  `contractParameterUpdate(int contractId, EntityAttr parameter)`
  Добавление/обновление/удаление параметра договора.
  `SearchResult<ContractPasswordLogItem>`
  `contractPasswordLogs(int contractId, String[] sort, Page page)`
  `int`
  `contractPasswordOnceCheck(String passwordOnce)`
  Вход по единоразовому паролю, сгенерированному при вызове contractPasswordReset
  `void`
  `contractPasswordReset(int contractId, String email)`
  Сброс пароля с отправкой нового на email.
  `void`
  `contractPasswordUpdate(int contractId, String password, boolean generate)`
  Установка нового пароля для ЛК договора.
  `void`
  `contractPatternDelete(int id)`
  `ContractPattern`
  `contractPatternGet(int id)`
  `void`
  `contractsDomainUpdate(List<Integer> contractIds, int domainId)`
  Обновление домена договоров
  `List<Contract>`
  `contractSubList(int contractId, int subMode, boolean withSuperCid, Date onDate)`
  Получение списка субдоговоров.
  `org.json.JSONObject`
  `contractTitleAndCommentGet(int contractId)`
  `void`
  `contractTitleAndCommentUpdate(int contractId, String title, String comment, int patternId)`
  `void`
  `contractUpdate(int contractId, Contract contract)`
  Обновление уже существующего договора в БД.
  `boolean`
  `hasModuleInstance(int contractId, int moduleId)`
  Проверка на наличие привязки указанного модуля к договору.
  `SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto>`
  `searchContractByObjectParameter(ContractSearchParam contractSearchParam)`
  `SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto>`
  `searchContractByParameter(ContractSearchParam contractSearchParam)`
  `SearchResult<ru.bitel.bgbilling.kernel.contract.search.common.ContractHistoryRecord>`
  `searchContractHistoryRecord(Page page)`
  `SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto>`
  `searchContractList(ContractSearchParam contractSearchParam)`
  `void`
  `sendWebPasswordOfContractToEmail(String email, int contractId)`
  Отправка пароля статистики на почту
  `void`
  `updateContractHistoryRecord(int contractId)`

- ## Method Details

  - ### contractGet

    Contract contractGet(int contractId) throws ru.bitel.bgbilling.common.BGException
    Parameters:
      `contractId` - - код договора.
    Returns:
      - договор или null, если договор отсутствует.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractByTitle

    Contract contractByTitle(String contractTitle) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractIdTitleCommentGet

    ContractIdTitleComment contractIdTitleCommentGet(int contractId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractUpdate

    void contractUpdate(int contractId, Contract contract) throws ru.bitel.bgbilling.common.BGException
    Обновление уже существующего договора в БД.
    Parameters:
      `contractId` - ID договора.
      `contract` - договор.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractSubList

    List<Contract> contractSubList(int contractId, int subMode, boolean withSuperCid, Date onDate) throws ru.bitel.bgbilling.common.BGException
    Получение списка субдоговоров.
    Parameters:
      `contractId` - - код договора.
      `subMode` - - зависимый, независимый режим из KernelConst. Если subMode == -1, вернет все субдоговора.
      `withSuperCid` - - если == true, то в список добавится и супер договор в начало списка.
      `onDate` - если не null, отфильтровать договора активные по периоду на указанную дату
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### searchContractByParameter

    SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto> searchContractByParameter(ContractSearchParam contractSearchParam) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### searchContractByObjectParameter

    SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto> searchContractByObjectParameter(ContractSearchParam contractSearchParam) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### searchContractList

    SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto> searchContractList(ContractSearchParam contractSearchParam) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractList

    SearchResult<ru.bitel.bgbilling.kernel.contract.api.common.dto.ContractSearchDto> contractList(int contractId, String title, String comment, int fc, long groupMask, List<FilterEntityAttr> entityFilter, boolean subContracts, boolean closed, boolean hidden, Page page) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractListByFilter

    String contractListByFilter(ContractFilters contractFilters, List<FilterEntityAttr> entityFilter, jakarta.xml.ws.Holder<Page> page) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### hasModuleInstance

    boolean hasModuleInstance(int contractId, int moduleId) throws ru.bitel.bgbilling.common.BGException
    Проверка на наличие привязки указанного модуля к договору.
    Parameters:
      `contractId` - код договора
      `moduleId` - код модуля
    Returns:
      true если экземпляр модуля привязан к договору, false - в противном случае.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractPasswordReset

    void contractPasswordReset(int contractId, String email) throws ru.bitel.bgbilling.common.BGException
    Сброс пароля с отправкой нового на email.
    Parameters:
      `contractId` -
      `email` - если указан, то происходит проверка что он совпадает с тем, что указан в договоре - иначе просто отправляет на тот что в договоре.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractPasswordOnceCheck

    int contractPasswordOnceCheck(String passwordOnce) throws ru.bitel.bgbilling.common.BGException
    Вход по единоразовому паролю, сгенерированному при вызове contractPasswordReset
    Parameters:
      `passwordOnce` - единоразовый пароль
    Returns:
      ID договора или 0, если пароль не найден
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParametersCopy

    void contractParametersCopy(int fromContractId, int toContractId, List<Integer> parameterIds, String mode) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterMap

    MapHolder<Integer,EntityAttr> contractParameterMap(int contractId, int paramGroupId) throws ru.bitel.bgbilling.common.BGException
    Map параметров договора.
    Если параметр не заведен (не указан, не добавлен), то данный параметр будет отсутствовать в результате. Примером может служить параметр типа флаг - отсутствие параметра означает false.
    Parameters:
      `contractId` - ID договора.
      `paramGroupId` - ID группы параметров договора `ContractParameterGroup`. Если значение >0, то выдаются параметры указанной группы, иначе - все параметры.
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterList

    List<IdTitleValue> contractParameterList(int contractId) throws ru.bitel.bgbilling.common.BGException
    Параметры договора
    Parameters:
      `contractId` -
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### contractParameterGroupSet

    void contractParameterGroupSet(int contractId, int paramGroupId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterGroupGet

    @Deprecated ContractParameterGroup contractParameterGroupGet(int id) throws ru.bitel.bgbilling.common.BGException
    Deprecated.
    use `ContractParameterService.contractParameterGroupGet(int)`
    Получение группы параметров договора по ID.
    Parameters:
      `id` - ID группы параметров.
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterGroupList

    @Deprecated List<ContractParameterGroup> contractParameterGroupList() throws ru.bitel.bgbilling.common.BGException
    Deprecated.
    use `ContractParameterService.contractParameterGroupList()`
    Получение списка групп параметров договора.
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`
    See Also:
      - `ContractParameterGroup`

  - ### searchContractHistoryRecord

    SearchResult<ru.bitel.bgbilling.kernel.contract.search.common.ContractHistoryRecord> searchContractHistoryRecord(Page page) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### updateContractHistoryRecord

    void updateContractHistoryRecord(int contractId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractModuleConfigGet

    String contractModuleConfigGet(int contractId, int moduleId, String key) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractModuleConfigSet

    void contractModuleConfigSet(int contractId, int moduleId, String key, String value) throws ru.bitel.bgbilling.common.BGException
    Установка параметра конфига модуля для договора.
    Parameters:
      `contractId` - ID договора.
      `moduleId` - ID модуля.
      `key` - ключ.
      `value` - значение.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractDomainUpdate

    void contractDomainUpdate(int contractId, int domainId) throws ru.bitel.bgbilling.common.BGException
    Обновление домена договора
    Parameters:
      `contractId` - ID договора.
      `domainId` - ID домена.
    Throws:
      `ru.bitel.bgbilling.common.BGException`
    See Also:
      - `Domain`

  - ### contractsDomainUpdate

    void contractsDomainUpdate(List<Integer> contractIds, int domainId)
    Обновление домена договоров
    Parameters:
      `contractIds` - ID договоров.
      `domainId` - ID домена.
    See Also:
      - `Domain`

  - ### contractParameterUpdate

    void contractParameterUpdate(int contractId, EntityAttr parameter) throws ru.bitel.bgbilling.common.BGException
    Добавление/обновление/удаление параметра договора. Удаление происходит в случае, если entityAttr null или значение внутри entityAttr пустое.
    Parameters:
      `contractId` - ID договора.
      `parameter` - параметр.
    Throws:
      `ru.bitel.bgbilling.common.BGException`
    See Also:
      - `EntityAttr`
      - `EntityAttrText`

  - ### contractParameterTextUpdate

    void contractParameterTextUpdate(int contractId, EntityAttrText parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterDateUpdate

    void contractParameterDateUpdate(int contractId, EntityAttrDate parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterBooleanUpdate

    void contractParameterBooleanUpdate(int contractId, EntityAttrBoolean parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterPhoneUpdate

    void contractParameterPhoneUpdate(int contractId, EntityAttrPhone parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterListUpdate

    void contractParameterListUpdate(int contractId, EntityAttrList parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterIntUpdate

    void contractParameterIntUpdate(int contractId, EntityAttrInt parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterAddressUpdate

    void contractParameterAddressUpdate(int contractId, EntityAttrAddress parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterEmailUpdate

    void contractParameterEmailUpdate(int contractId, EntityAttrEmail parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterContractUpdate

    void contractParameterContractUpdate(int contractId, EntityAttrContract parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterMultiListUpdate

    void contractParameterMultiListUpdate(int contractId, EntityAttrMultiList parameter) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterGet

    EntityAttr contractParameterGet(int contractId, int parameterId) throws ru.bitel.bgbilling.common.BGException
    Получение параметра договора.
    Parameters:
      `contractId` - ID договора
      `parameterId` - ID параметра
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterMapByType

    MapHolder<Integer,EntityAttr> contractParameterMapByType(int contractId, int parameterType) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### sendWebPasswordOfContractToEmail

    void sendWebPasswordOfContractToEmail(String email, int contractId) throws ru.bitel.bgbilling.common.BGException
    Отправка пароля статистики на почту
    Parameters:
      `email` - адрес или несколько адресов, куда будет отправлен пароль
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractDelete

    void contractDelete(int contractId, boolean save, String folder) throws ru.bitel.bgbilling.common.BGException
    Удаление договора
    Parameters:
      `contractId` - id удаляемого договора
      `save` - нужно ли сохранять удаляемый договор на диск
      `folder` - путь до директории для сохранения копии удаляемого договора
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractInfoGet

    org.json.JSONObject contractInfoGet(int contractId) throws ru.bitel.bgbilling.common.BGException
    Информация о договоре
    Parameters:
      `contractId` -
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractTitleAndCommentGet

    org.json.JSONObject contractTitleAndCommentGet(int contractId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractCommentPatternList

    org.json.JSONObject contractCommentPatternList(int contractId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractTitleAndCommentUpdate

    void contractTitleAndCommentUpdate(int contractId, String title, String comment, int patternId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractCommentPatternValue

    String contractCommentPatternValue(int contractId, int patternId) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractCardList

    List<ContractCard> contractCardList(int contractId) throws Exception
    список карточек договора для указанного договра
    Throws:
      `Exception`

  - ### configParameterList

    List<ru.bitel.bgbilling.common.model.ConfigParameter> configParameterList(String className) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractPatternGet

    ContractPattern contractPatternGet(int id) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractPatternDelete

    void contractPatternDelete(int id) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractParameterHistoryList

    List<ContractParameterHistoryData> contractParameterHistoryList(int contractId, int parameterId, int parameterType) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractCreate

    int contractCreate(ContractCreateData contractCreateData) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractCreateValidateParameters

    void contractCreateValidateParameters(ContractCreateData contractCreateData) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractCreateValidateTariffs

    void contractCreateValidateTariffs(ContractCreateData contractCreateData) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractModuleAdd

    void contractModuleAdd(int contractId, List<Integer> moduleIds) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractModuleDelete

    void contractModuleDelete(int contractId, List<Integer> moduleIds) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractDateToUpdate

    void contractDateToUpdate(int contractId, Date dateTo) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractPasswordLogs

    SearchResult<ContractPasswordLogItem> contractPasswordLogs(int contractId, String[] sort, Page page) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractPasswordUpdate

    void contractPasswordUpdate(int contractId, String password, boolean generate) throws ru.bitel.bgbilling.common.BGException
    Установка нового пароля для ЛК договора.
    Parameters:
      `contractId` - ID договора.
      `password` - пароль.
      `generate` - нужно ли сгенерировать автоматически, если true - то значение аргумента password игнорируется.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractModeUpdate

    void contractModeUpdate(int contractId, ContractMode contractMode) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractFaceUpdate

    void contractFaceUpdate(int contractId, ContractFace contractFace) throws ru.bitel.bgbilling.common.BGException
    Throws:
      `ru.bitel.bgbilling.common.BGException`