Interface BiudRoleRepository

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

@Repository public interface BiudRoleRepository extends org.springframework.data.jpa.repository.JpaRepository<BiudRole,String>
Репозиторий для работы с таблицей CS.ROLE.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Проверить существование роли по названию.
    Проверить, есть ли у пользователя роль с abd=1 (администратор безопасности).
    Найти список пользователей в роли.
    Найти все роли пользователя через таблицу CS.OPERATORROLE.
    Проверить, есть ли у пользователя роль с tpi=0 (ограничение на просмотр).

    Methods inherited from interface org.springframework.data.repository.CrudRepository

    count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, save

    Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository

    deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlush

    Methods inherited from interface org.springframework.data.repository.ListCrudRepository

    findAll, findAllById, saveAll

    Methods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor

    count, exists, findAll, findBy, findOne
  • Method Details

    • existsByName

      boolean existsByName(String name)
      Проверить существование роли по названию. Аналог isValidGroup(): select NAME from CS.ROLE where NAME = ?
    • findRolesByLogin

      @Query("SELECT r FROM BiudRole r WHERE r.name IN (SELECT orl.id.role FROM BiudOperatorRole orl WHERE orl.id.login = :login)") List<BiudRole> findRolesByLogin(@Param("login") String login)
      Найти все роли пользователя через таблицу CS.OPERATORROLE. Аналог getGroupsForUser(): SELECT name FROM cs.role WHERE name in (SELECT role FROM cs.operatorrole WHERE login LIKE ?)
    • findAbdByLogin

      @Query("SELECT r.abd FROM BiudRole r WHERE r.name IN (SELECT orl.id.role FROM BiudOperatorRole orl WHERE orl.id.login = :login) AND r.abd = 1") List<Short> findAbdByLogin(@Param("login") String login)
      Проверить, есть ли у пользователя роль с abd=1 (администратор безопасности). Аналог fndAbd(): select abd from cs.role where name in (select role from cs.operatorrole where login=?) and abd=1
    • findTpiByLogin

      @Query("SELECT r.tpi FROM BiudRole r WHERE r.name IN (SELECT orl.id.role FROM BiudOperatorRole orl WHERE orl.id.login = :login) AND r.tpi = 0") List<Short> findTpiByLogin(@Param("login") String login)
      Проверить, есть ли у пользователя роль с tpi=0 (ограничение на просмотр). Аналог fndTpi(): select tpi from cs.role where name in (select role from cs.operatorrole where login=?) and tpi=0
    • findLoginsByRole

      @Query("SELECT orl.id.login FROM BiudOperatorRole orl WHERE orl.id.role = :roleName") List<String> findLoginsByRole(@Param("roleName") String roleName)
      Найти список пользователей в роли. Аналог getUsersForGroup(): select login from cs.operator where login in (select login from cs.operatorrole where role = ?)