dev add method link
Test Workflow / test (push) Has been cancelled

This commit is contained in:
2026-05-08 11:42:59 +07:00
parent 9dd174eb60
commit ff44763f88
5 changed files with 162 additions and 1 deletions
@@ -1,7 +1,10 @@
package ru.soune.nocopy.repository;
import jakarta.validation.constraints.Size;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import ru.soune.nocopy.entity.tarif.TariffInfo;
@@ -10,12 +13,17 @@ import ru.soune.nocopy.entity.user.User;
import java.util.List;
import java.util.Optional;
public interface UserRepository extends JpaRepository<User, Long> {
public interface UserRepository extends JpaRepository<User, Long>, JpaSpecificationExecutor<User> {
User findByEmail(String email);
boolean existsByEmail(String email);
boolean existsByPhone(@Size(min = 11, max = 14) String phone);
List<User> findByCompanyId(String companyId);
long countByCompanyId(String companyId);
User findByPersonalTariffInfo(TariffInfo tariffInfo);
@Query("SELECT COUNT(u.Id) FROM User u")
@@ -48,4 +56,7 @@ public interface UserRepository extends JpaRepository<User, Long> {
@Query("SELECT u.email FROM User u WHERE u.company.id = :company")
List<String> emailsByCompany(@Param("company") String company);
@Query("SELECT u FROM User u LEFT JOIN u.personalTariffInfo t")
Page<User> findAllWithTariff(Pageable pageable);
}