Package ru.bgcrm.dao

Class CustomerDAO

java.lang.Object
ru.bgcrm.dao.CommonDAO
ru.bgcrm.dao.CustomerDAO

public class CustomerDAO extends CommonDAO
  • Constructor Details

    • CustomerDAO

      public CustomerDAO(Connection con)
    • CustomerDAO

      public CustomerDAO(Connection con, boolean history, int userId)
  • Method Details

    • searchCustomerList

      public void searchCustomerList(Pageable<Customer> searchResult, String title)
      Выбирает контрагентов по названию.
      Parameters:
      searchResult -
      title -
      Throws:
      SQLException
    • searchCustomerList

      public void searchCustomerList(Pageable<Customer> searchResult, Set<Integer> groupIds)
      Выбирает контрагентов по группам.
      Parameters:
      searchResult -
      groupIds - - группы.
      Throws:
      SQLException
    • extractCustomerWithRef

      public Customer extractCustomerWithRef(int customerId)
    • searchCustomerListByEmail

      public void searchCustomerListByEmail(Pageable<ParameterSearchedObject<Customer>> searchResult, List<Integer> emailParamIdList, String email)
      Выбирает контрагентов по параметру типа E-Mail.
      Parameters:
      searchResult -
      emailParamIdList -
      email - E-Mail, поиск идёт по точному совпадению и совпадению домена
      Throws:
      SQLException
    • searchCustomerListByText

      public void searchCustomerListByText(Pageable<Customer> searchResult, List<Integer> textParamIdList, String value) throws SQLException
      Выбирает контрагентов по строковому параметру.
      Parameters:
      searchResult -
      textParamIdList -
      value -
      Throws:
      SQLException
    • searchCustomerListByAddress

      public void searchCustomerListByAddress(Pageable<ParameterSearchedObject<Customer>> searchResult, List<Integer> addressParamIdList, int streetId, String house, String houseFlat, String houseRoom) throws SQLException
      Выбирает контрагентов по адресному параметру.
      Parameters:
      searchResult -
      addressParamIdList -
      streetId -
      house -
      houseFlat -
      houseRoom -
      Throws:
      SQLException
    • searchCustomerListByAddress

      public void searchCustomerListByAddress(Pageable<ParameterSearchedObject<Customer>> searchResult, List<Integer> addressParamIdList, int houseId, String houseFlat, String houseRoom)
      Выбирает контрагентов по адресному параметру.
      Parameters:
      searchResult -
      addressParamIdList -
      houseId - код дома
      houseFlat - квартира
      houseRoom - комната
      Throws:
      SQLException
    • searchCustomerListByPhone

      public void searchCustomerListByPhone(Pageable<Customer> searchResult, Collection<Integer> phoneParamIdList, String... phoneNumbers)
      Выбирает контрагентов по номеру или номерам телефонов.
      Parameters:
      searchResult -
      phoneParamIdList -
      phoneNumbers -
    • searchCustomerByLinkedObjectTitle

      public void searchCustomerByLinkedObjectTitle(Pageable<Customer> searchResult, String linkedObjectTypeLike, String linkedObjectTitle)
      Выбирает контрагентов по привязанном объектам.
      Parameters:
      searchResult -
      linkedObjectTypeLike - LIKE строка типа привязанного объекта.
      linkedObjectTitle - LIKE строка наименования привязанного объекта.
    • getCustomerById

      public Customer getCustomerById(int customerId)
      Выбирает контрагента по его коду.
      Parameters:
      customerId -
      Returns:
    • getCustomers

      public static Set<Customer> getCustomers(Connection connection, Collection<Integer> customerIds)
      Получение набора контрагентов по их ID
      Parameters:
      customerIds - идентификаторы контрагентов
      Returns:
    • getCustomers

      public Set<Customer> getCustomers(Collection<Integer> customerIds)
      Получение набора контрагентов по их ID
      Parameters:
      customerIds - идентификаторы контрагентов
      Returns:
    • getCustomerByTitle

      public Customer getCustomerByTitle(String customerTitle) throws SQLException
      Выбирает контрагента по названию.
      Parameters:
      customerTitle - название
      Returns:
      Throws:
      SQLException
    • updateCustomer

      public void updateCustomer(Customer customer) throws SQLException
      Обновляет информацию о контрагенте в БД.
      Parameters:
      customer -
      Throws:
      SQLException
    • deleteCustomer

      public void deleteCustomer(int id) throws SQLException
      Удаляет контрагента из БД по коду.
      Parameters:
      id -
      Throws:
      SQLException
    • updateCustomerTitle

      public void updateCustomerTitle(String titleBefore, Customer customer, int changedParamId, Response response) throws Exception
      Обновляет название контрагента,генерируя его из параметров.
      Parameters:
      titleBefore - исходное название.
      customer - контрагент.
      changedParamId - код изменённого параметра.
      response - если параметр передан, туда будет добавлено событие о изменении названия договора.
      Throws:
      Exception
    • getCustomerTitles

      public List<String> getCustomerTitles(String title, int count)
      Возвращает названия контрагенов с подстрокой.
      Parameters:
      title - подстрока, поиск идёт с помощью LIKE выражения.
      count - количество первых названий.
      Returns:
    • getGroupIds

      public Set<Integer> getGroupIds(int customerId) throws SQLException
      Throws:
      SQLException
    • updateGroupIds

      public void updateGroupIds(int customerId, Set<Integer> groupIds) throws SQLException
      Throws:
      SQLException
    • getCustomerFromRs

      public static Customer getCustomerFromRs(ResultSet rs, String prefix) throws SQLException
      Возвращает созданный объект Customer заполненный из ResultSet.
      Parameters:
      rs -
      prefix -
      Throws:
      SQLException