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 TypeMethodDescriptionbooleanexistsByName(String name) Проверить существование роли по названию.findAbdByLogin(String login) Проверить, есть ли у пользователя роль с abd=1 (администратор безопасности).findLoginsByRole(String roleName) Найти список пользователей в роли.findRolesByLogin(String login) Найти все роли пользователя через таблицу CS.OPERATORROLE.findTpiByLogin(String login) Проверить, есть ли у пользователя роль с tpi=0 (ограничение на просмотр).Methods inherited from interface org.springframework.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, saveMethods inherited from interface org.springframework.data.jpa.repository.JpaRepository
deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlushMethods inherited from interface org.springframework.data.repository.ListCrudRepository
findAll, findAllById, saveAllMethods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository
findAllMethods inherited from interface org.springframework.data.repository.PagingAndSortingRepository
findAllMethods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor
count, exists, findAll, findBy, findOne
-
Method Details
-
existsByName
Проверить существование роли по названию. Аналог 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 = ?)
-