Interface UserRepository

All Superinterfaces:
org.springframework.data.repository.CrudRepository<User,String>, org.springframework.data.jpa.repository.JpaRepository<User,String>, org.springframework.data.repository.PagingAndSortingRepository<User,String>, org.springframework.data.repository.query.QueryByExampleExecutor<User>, org.springframework.data.repository.Repository<User,String>

@Repository public interface UserRepository extends org.springframework.data.jpa.repository.JpaRepository<User,String>
Repository interface to do queries for Users data.
  • Method Details

    • findOneById

      User findOneById(@Param("id") String userId)
      Get user is in BBDD.
      Parameters:
      userId - user id of user.
      Returns:
      User object if it is possiblr to find.
    • findOneByDocumentIdAndCompanyId

      User findOneByDocumentIdAndCompanyId(@Param("document_id") String documentId, @Param("company_id") String companyId)
      Get user is in BBDD.
      Parameters:
      documentId - document id of user.
      companyId - bank entity.
      Returns:
      User object if it is possiblr to find.
    • findOneByEmailAndCompanyId

      User findOneByEmailAndCompanyId(@Param("email") String email, @Param("company_id") String companyId)
      Get user is in BBDD.
      Parameters:
      email - document id of user.
      companyId - bank entity.
      Returns:
      User object if it is possiblr to find.
    • findByEmail

      Optional<User> findByEmail(@Param("email") String email)
      Get user is in BBDD.
      Parameters:
      email - document id of user.
      Returns:
      User object if it is possible to find.
    • findOneByRememberTokenAndCompanyId

      @Query("select u from User u join fetch u.userDeviceList ud where ud.rememberToken = :rememberToken and u.companyId = :companyId and ud.deviceId = :deviceId") User findOneByRememberTokenAndCompanyId(@Param("rememberToken") String rememberToken, @Param("companyId") String companyId, @Param("deviceId") String deviceId)
      query for filter user and remember me token.
      Parameters:
      rememberToken - remember me token.
      companyId - entity bank.
      deviceId - unique identifier of the device.
      Returns:
      User found in database.
    • findRememberTokenByUserIdAndDeviceId

      @Query("select u from User u join fetch u.userDeviceList ud where ud.deviceId = :deviceId and u.id = :userId") User findRememberTokenByUserIdAndDeviceId(@Param("userId") String userId, @Param("deviceId") String deviceId)
      query for filter user and remember me token.
      Parameters:
      userId - user identifier
      deviceId - unique identifier of device.
      Returns:
      User found in database.
    • findOneByBiometricTokenAndCompanyId

      @Query("select u from User u join fetch u.userDeviceList ud where ud.biometricToken = :biometricToken and u.companyId = :companyId and ud.deviceId = :deviceId") User findOneByBiometricTokenAndCompanyId(@Param("biometricToken") String biometricToken, @Param("companyId") String companyId, @Param("deviceId") String deviceId)
      query for filter user and remember me token.
      Parameters:
      biometricToken - unique biometric token.
      companyId - entity bank.
      deviceId - unique identifier for device.
      Returns:
      User found in database.
    • findOneByBiometricTokenAndDeviceId

      @Query("select u from User u join fetch u.userDeviceList ud where ud.biometricToken = :biometricToken and ud.deviceId = :deviceId") User findOneByBiometricTokenAndDeviceId(@Param("biometricToken") String biometricToken, @Param("deviceId") String deviceId)
      query for filter user and remember me token.
      Parameters:
      biometricToken - unique biometric token.
      deviceId - unique identifier for device.
      Returns:
      User found in database.
    • findByUserIdAndDeviceId

      @Query("select u from User u join fetch u.userDeviceList ud where ud.deviceId = :deviceId and u.id = :userId") User findByUserIdAndDeviceId(@Param("userId") String userId, @Param("deviceId") String deviceId)
      query for filter user and remember me token.
      Parameters:
      userId - user identifier
      deviceId - unique identifier of the device..
      Returns:
      User found in database.
    • findOneByIdAndCompanyId

      Optional<User> findOneByIdAndCompanyId(String id, String companyId)
      Find an user in DB by its id and company.
      Parameters:
      id - user identifier.
      companyId - entity identifier.
      Returns:
      the user entity if found.
    • findIdByCompanyIdAndDocumentIdAndTypeOrPhoneAndEmail

      @Query(value="select u.id from \"user\" u left join user_document ud on u.id = ud.user_id and ud.end_date is null where u.company_id = :companyId and ( (u.document_id = :documentId and ud.document_type_id = :documentIdType) or (u.document_id is null and u.phone = :phone and u.email = :email) )order by u.document_id limit 1", nativeQuery=true) Optional<String> findIdByCompanyIdAndDocumentIdAndTypeOrPhoneAndEmail(@Param("companyId") String companyId, @Param("documentId") String documentId, @Param("documentIdType") int documentIdType, @Param("phone") String phone, @Param("email") String email)
      Find user by document identifier or by phone and email.
      Parameters:
      companyId - user company identifier
      documentId - document identification number
      documentIdType - document identification type
      phone - phone number
      email - email address
      Returns:
      user identifier