/
Apathy21
/
company
Обзор
Документация
Войти
/
Apathy21
/
company
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
MainService/src/main/java/org/example/dao/AddressDaoImpl.java
61 строка
2 KB
alexeev509
Skeletop company app realization
13 сен 2024, 19:21
13 сен 2024, 19:21
2a02e11
Код
Авторство
О чём код?
package org.example.dao; import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; import org.example.Entity.Address; import org.example.dao.api.AddressDao; import java.util.Optional; public class AddressDaoImpl implements AddressDao { @PersistenceContext(unitName = "example") protected EntityManager entityManager; @Override public Optional<Address> getAddressByCompanyId(long id) { return entityManager.createQuery("select a from Address a where id= :id", Address.class) .setParameter("id", id) .getResultList() .stream() .findFirst(); } @Override public Optional<Address> getAddressByBranchOfficeId(long id) { return entityManager.createQuery("select a from Address a where id= :id", Address.class) .setParameter("id", id) .getResultList() .stream() .findFirst(); } @Override public Optional<Address> getAddressByLocation(Address address) { return entityManager.createQuery("select a from Address a where (:post_code is null or post_code= :post_code) AND city= :city AND avenue= :avenue AND house= :house AND (:apartment is null or apartment= :apartment)", Address.class) .setParameter("post_code", address.getPost_code()) .setParameter("city", address.getCity()) .setParameter("avenue", address.getAvenue()) .setParameter("house", address.getHouse()) .setParameter("apartment", address.getApartment()) .getResultList() .stream() .findFirst(); } @Override public Optional<Address> get(long id) { // TODO return Optional.empty(); } @Override public void save(Address address) { // TODO } @Override public void delete(Address address) { // TODO } }