Package ru.bgcrm.plugin.fulltext.dao

# Class SearchDAO

java.lang.Object
ru.bgcrm.dao.CommonDAO
ru.bgcrm.plugin.fulltext.dao.SearchDAO

public class SearchDAO extends CommonDAO

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class ru.bgcrm.dao.CommonDAO

  `CommonDAO.ObjectExtractor<T>, CommonDAO.RecordUpdater<T extends Id>`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `TABLE`

  ### Fields inherited from class ru.bgcrm.dao.CommonDAO

  `con, SQL_AND, SQL_DELETE, SQL_DELETE_FROM, SQL_DESC, SQL_DISTINCT, SQL_FROM, SQL_GROUP_BY, SQL_INNER_JOIN, SQL_INSERT_IGNORE_INTO, SQL_INSERT_INTO, SQL_LEFT_JOIN, SQL_LIMIT, SQL_ON_DUP_KEY_UPDATE, SQL_ORDER_BY, SQL_REPLACE, SQL_SELECT, SQL_SELECT_ALL_FROM, SQL_SELECT_COUNT_ROWS, SQL_SET, SQL_UNION_ALL, SQL_UPDATE, SQL_VALUES, SQL_VALUES_1, SQL_VALUES_2, SQL_VALUES_3, SQL_VALUES_4, SQL_VALUES_5, SQL_WHERE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SearchDAO(Connection con)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `delete(String objectType, int objectId)`
  Удаляет запись об объекте.
  `void`
  `delete(SearchItem item)`
  Удаляет запись об объекте.
  `List<SearchItem>`
  `getScheduledUpdates(int secondsOld, int maxCount)`
  Выбирает записи необходимые для обновления.
  `void`
  `init(String objectType, String objectTable)`
  Initialize indexing for object types.
  `void`
  `scheduleUpdate(String objectType, int objectId)`
  Помечает объект необходимым для обновления.
  `void`
  `searchCustomer(Pageable<Customer> result, String filter)`
  Полнотекстовый поиск контрагентов.
  `void`
  `searchMessages(Pageable<Pair<Message,Process>> result, String filter)`
  Полнотекстовый поиск сообщений, привязанных к процессам.
  `void`
  `searchProcess(Pageable<Process> result, String filter)`
  Полнотекстовый поиск процессов.
  `void`
  `update(SearchItem item)`
  Обновляет искомый текст записи.

  ### Methods inherited from class ru.bgcrm.dao.CommonDAO

  `deleteById, foundRows, getById, getGroupedIds, getGroupedIds, getIds, getIds, getPageLimit, getPeriodSql, lastInsertId, setPeriodParamValue, setRecordCount, update, updateColumn, updateIds, updateIds, updateOrInsert`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### TABLE

    public static final String TABLE
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### SearchDAO

    public SearchDAO(Connection con)

- ## Method Details

  - ### searchCustomer

    public void searchCustomer(Pageable<Customer> result, String filter) throws SQLException
    Полнотекстовый поиск контрагентов.
    Parameters:
      `result` -
      `filter` - строка запроса с символами + и - для добавления / удаления слов.
    Throws:
      `SQLException`

  - ### searchProcess

    public void searchProcess(Pageable<Process> result, String filter) throws SQLException
    Полнотекстовый поиск процессов.
    Parameters:
      `result` -
      `filter` - строка запроса с символами + и - для добавления / удаления слов.
    Throws:
      `SQLException`

  - ### searchMessages

    public void searchMessages(Pageable<Pair<Message,Process>> result, String filter) throws SQLException
    Полнотекстовый поиск сообщений, привязанных к процессам.
    Parameters:
      `result` -
      `filter` - строка запроса с символами + и - для добавления / удаления слов.
    Throws:
      `SQLException`

  - ### scheduleUpdate

    public void scheduleUpdate(String objectType, int objectId) throws SQLException
    Помечает объект необходимым для обновления.
    Parameters:
      `objectType` -
      `objectId` -
    Throws:
      `SQLException`

  - ### delete

    public void delete(String objectType, int objectId)
    Удаляет запись об объекте.
    Parameters:
      `objectType` -
      `objectId` -

  - ### delete

    public void delete(SearchItem item)
    Удаляет запись об объекте.
    Parameters:
      `item` -

  - ### getScheduledUpdates

    public List<SearchItem> getScheduledUpdates(int secondsOld, int maxCount)
    Выбирает записи необходимые для обновления.
    Parameters:
      `secondsOld` - последнее изменение объекта более чем секунд назад.
      `maxCount` - максимальное количество.

  - ### update

    public void update(SearchItem item)
    Обновляет искомый текст записи.
    Parameters:
      `item` -

  - ### init

    public void init(String objectType, String objectTable) throws SQLException
    Initialize indexing for object types.
    Parameters:
      `objectType` -
      `objectTable` -
    Throws:
      `SQLException`