Package ru.bitel.bgbilling.plugins.shop.common.service

# Interface WarehouseOperationService

public interface WarehouseOperationService
Операции склада. Отвечает за историю переноса товаров на склады, договоры. Логирование при удалении товаров, типов

- ## Method Summary

  Modifier and Type
  Method
  Description
  `SearchResult<ContractStockItem>`
  `contractStockItemList(Page page, int contractId, Date dateFrom, Date dateTo)`
  Список записей товаров, которые были добавлены на договор
  `void`
  `returnStockItemToWarehouse(int stockItemId)`
  Вернуть товар с договора на склад
  `void`
  `stockItemAdded(StockItem stockItem)`
  Создание записи в истории о добавлении нового товара на склад
  `void`
  `stockItemDeleted(StockItem stockItem)`
  Создание записи в логе об удалении товара
  `void`
  `transferToContract(int stockItemId, int contractId, Date dateFrom, Date dateTo)`
  Запись о переносе товара на договор
  `void`
  `transferToWarehouse(int stockItemId, int warehouseFrom, int warehouseTo)`
  Перенос товара на другой склад
  `SearchResult<WarehouseOperationEntry>`
  `warehouseOperationList(SearchResult<WarehouseOperationEntry> searchResult)`
  Получения истории по товарам и перемещениям товаров с возможностью фильтрации

- ## Method Details

  - ### transferToWarehouse

    void transferToWarehouse(int stockItemId, int warehouseFrom, int warehouseTo) throws ru.bitel.bgbilling.common.BGException
    Перенос товара на другой склад
    Parameters:
      `stockItemId` - ID товара
      `warehouseFrom` - ID текущего склада
      `warehouseTo` - ID нового склада
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### transferToContract

    void transferToContract(int stockItemId, int contractId, Date dateFrom, Date dateTo) throws ru.bitel.bgbilling.common.BGException
    Запись о переносе товара на договор
    Parameters:
      `stockItemId` - ID товара
      `contractId` - ID договора на который переносится
      `dateFrom` - дата с которой
      `dateTo` - дата по которую
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### contractStockItemList

    SearchResult<ContractStockItem> contractStockItemList(Page page, int contractId, Date dateFrom, Date dateTo) throws ru.bitel.bgbilling.common.BGException
    Список записей товаров, которые были добавлены на договор
    Parameters:
      `page` - параметры пейджинации или null, чтобы вернуть весь список
      `contractId` - ID договора или invalid input: '<'=0, если нужно вернуть список товаров по всем договорам
      `dateFrom` - дата начала актуальности или null
      `dateTo` - дата окончания актуальности или null
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### warehouseOperationList

    SearchResult<WarehouseOperationEntry> warehouseOperationList(SearchResult<WarehouseOperationEntry> searchResult) throws ru.bitel.bgbilling.common.BGException
    Получения истории по товарам и перемещениям товаров с возможностью фильтрации
    Parameters:
      `searchResult` - данные для поиска и фильтрации: id договора, id пользователя, id склада, период
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### returnStockItemToWarehouse

    void returnStockItemToWarehouse(int stockItemId) throws ru.bitel.bgbilling.common.BGException
    Вернуть товар с договора на склад
    Parameters:
      `stockItemId` - id товара
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### stockItemAdded

    void stockItemAdded(StockItem stockItem) throws ru.bitel.bgbilling.common.BGException
    Создание записи в истории о добавлении нового товара на склад
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### stockItemDeleted

    void stockItemDeleted(StockItem stockItem) throws ru.bitel.bgbilling.common.BGException
    Создание записи в логе об удалении товара
    Throws:
      `ru.bitel.bgbilling.common.BGException`