package fr.openwide.core.basicapp.core.business.user.dao; import java.util.List; import org.springframework.stereotype.Repository; import com.querydsl.jpa.impl.JPAQuery; import fr.openwide.core.basicapp.core.business.user.model.QUser; import fr.openwide.core.basicapp.core.business.user.model.User; import fr.openwide.core.jpa.security.business.person.dao.GenericUserDaoImpl; import fr.openwide.core.spring.util.StringUtils; @Repository("personDao") public class UserDaoImpl extends GenericUserDaoImpl<User> implements IUserDao { private final QUser qUser = QUser.user; public UserDaoImpl() { super(); } @Override public User getByEmailCaseInsensitive(String email) { return new JPAQuery<User>(getEntityManager()) .from(qUser) .where(qUser.email.lower().eq(StringUtils.lowerCase(email))) .fetchOne(); } @Override public List<User> listByUserName(String userName) { return super.listByField(QUser.user, QUser.user.userName, userName, QUser.user.id.desc()); } }