/** * Deactivate a user and drops all his preferences. * * @return false if the user does not exist, true if the existing user has been deactivated */ public boolean deactivateUserByLogin(DbSession dbSession, String login) { UserMapper mapper = dbSession.getMapper(UserMapper.class); UserDto dto = mapper.selectUserByLogin(login); if (dto == null) { return false; } mapper.removeUserFromGroups(dto.getId()); mapper.deleteUserActiveDashboards(dto.getId()); mapper.deleteUnsharedUserDashboards(dto.getId()); mapper.deleteUnsharedUserIssueFilters(dto.getLogin()); mapper.deleteUserIssueFilterFavourites(dto.getLogin()); mapper.deleteUnsharedUserMeasureFilters(dto.getId()); mapper.deleteUserMeasureFilterFavourites(dto.getId()); mapper.deleteUserProperties(dto.getId()); mapper.deleteUserRoles(dto.getId()); mapper.deactivateUser(dto.getId(), system2.now()); dbSession.commit(); return true; }
@CheckForNull public UserDto selectActiveUserByLogin(DbSession session, String login) { UserMapper mapper = session.getMapper(UserMapper.class); return mapper.selectUserByLogin(login); }