Package ru.bitel.oss.systems.inventory.product.common.service

# Interface ProductService

    public interface ProductService

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `java.util.List<java.lang.String[]>` | `getIncompatibleItems​(int moduleId)` |
  `void` | `productDelete​(int contractId, int productId)` |
  `Product` | `productGet​(int contractId, int productId)` |
  `java.util.List<Product>` | `productList​(int moduleId, int contractId, int accountId, boolean kernel, java.util.Date timeFrom, java.util.Date timeTo, java.util.Date intersectTimeFrom, java.util.Date intersectTimeTo, boolean nonActive)` | Deprecated.
  `java.util.List<Product>` | `productList​(int moduleId, int contractId, int accountId, boolean kernel, java.util.Date timeFrom, java.util.Date timeTo, java.util.Date intersectTimeFrom, java.util.Date intersectTimeTo, boolean nonActive, boolean needProductPeriods)` |
  `void` | `productPeriodDelete​(int contractId, int productPeriodId)` |
  `java.util.List<ProductPeriod>` | `productPeriodList​(int contractId, int productId)` |
  `int` | `productPeriodUpdate​(int contractId, ProductPeriod productPeriod)` |
  `java.util.List<ProductSpecActivationMode>` | `productSpecActivationModeList​(int productSpecId, java.util.Date date)` |
  `void` | `productSpecDelete​(int id)` |
  `ProductSpec` | `productSpecGet​(int id)` |
  `ProductSpec` | `productSpecGetByIdentifier​(java.lang.String identifier)` |
  `java.util.List<ProductSpec>` | `productSpecList​(java.lang.Integer moduleId, java.util.Date dateFrom, java.util.Date dateTo, java.lang.String title, java.util.List<FilterEntityAttr> entityFilter)` |
  `void` | `productSpecMove​(int id, java.util.Set<java.lang.Integer> ids)` |
  `ProductSpec` | `productSpecTree​(java.lang.Integer moduleId, java.util.Date dateFrom, java.util.Date dateTo, java.lang.String title, java.util.List<FilterEntityAttr> entityFilter)` |
  `int` | `productSpecUpdate​(ProductSpec productSpec)` |
  `int` | `productUpdate​(Product product)` |
  `java.util.List<ProductSpecServiceLink>` | `serviceLinkList​(int productSpecId, java.util.Date date)` |
  `void` | `serviceLinkUpdate​(int productSpecId, java.util.List<ProductSpecServiceLink> linkList)` |

- ## Method Details

  - ### productSpecGet

    ProductSpec productSpecGet​(int id) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecGetByIdentifier

    ProductSpec productSpecGetByIdentifier​(java.lang.String identifier) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecList

    java.util.List<ProductSpec> productSpecList​(java.lang.Integer moduleId, java.util.Date dateFrom, java.util.Date dateTo, java.lang.String title, java.util.List<FilterEntityAttr> entityFilter) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecTree

    ProductSpec productSpecTree​(java.lang.Integer moduleId, java.util.Date dateFrom, java.util.Date dateTo, java.lang.String title, java.util.List<FilterEntityAttr> entityFilter) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecUpdate

    int productSpecUpdate​(ProductSpec productSpec) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecDelete

    void productSpecDelete​(int id) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecActivationModeList

    java.util.List<ProductSpecActivationMode> productSpecActivationModeList​(int productSpecId, java.util.Date date) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productSpecMove

    void productSpecMove​(int id, java.util.Set<java.lang.Integer> ids) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### serviceLinkList

    java.util.List<ProductSpecServiceLink> serviceLinkList​(int productSpecId, java.util.Date date) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### serviceLinkUpdate

    void serviceLinkUpdate​(int productSpecId, java.util.List<ProductSpecServiceLink> linkList) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productList

    @RequestWrapper(className="ru.bitel.oss.systems.inventory.product.common.jaxws.ProductListOldRequest") @ResponseWrapper(className="ru.bitel.oss.systems.inventory.product.common.jaxws.ProductListOldResponse") @Deprecated java.util.List<Product> productList​(int moduleId, int contractId, int accountId, boolean kernel, java.util.Date timeFrom, java.util.Date timeTo, java.util.Date intersectTimeFrom, java.util.Date intersectTimeTo, boolean nonActive) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Deprecated.
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productList

    java.util.List<Product> productList​(int moduleId, int contractId, int accountId, boolean kernel, java.util.Date timeFrom, java.util.Date timeTo, java.util.Date intersectTimeFrom, java.util.Date intersectTimeTo, boolean nonActive, boolean needProductPeriods) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Parameters:
      `moduleId` - -1 или 0 (ядро) или ID модуля
      `contractId` - ID договора (>0)
      `accountId` - -1 или ID аккаунта
      `kernel` - добавить продукты ядра ()
      `timeFrom` -
      `timeTo` -
      `intersectTimeFrom` -
      `intersectTimeTo` -
      `nonActive` - включать ли неактивные (timeTo
      `needProductPeriods` - проставить ли subscriptionTimeFrom/subscriptionTimeTo
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productUpdate

    int productUpdate​(Product product) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productGet

    Product productGet​(int contractId, int productId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productDelete

    void productDelete​(int contractId, int productId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productPeriodUpdate

    int productPeriodUpdate​(int contractId, ProductPeriod productPeriod) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productPeriodList

    java.util.List<ProductPeriod> productPeriodList​(int contractId, int productId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### productPeriodDelete

    void productPeriodDelete​(int contractId, int productPeriodId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`

  - ### getIncompatibleItems

    java.util.List<java.lang.String[]> getIncompatibleItems​(int moduleId) throws ru.bitel.bgbilling.common.BGException, ru.bitel.bgbilling.common.BGMessageException
    Throws:
      `ru.bitel.bgbilling.common.BGException`
      `ru.bitel.bgbilling.common.BGMessageException`