/
VladIaz
/
UserService
Обзор
Документация
Войти
/
VladIaz
/
UserService
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
main/java/com/example/demo/service/UserService.java
57 строк
2 KB
VladIaz
upload files
05 авг 2025, 18:56
05 авг 2025, 18:56
4a5edb7
Код
Авторство
О чём код?
package com.example.demo.service; import com.example.demo.model.Role; import com.example.demo.model.User; import com.example.demo.repository.RoleRepository; import com.example.demo.repository.UserRepository; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; @Service public class UserService { private final UserRepository userRepository; private final RoleRepository roleRepository; public UserService(UserRepository userRepository, RoleRepository roleRepository) { this.userRepository = userRepository; this.roleRepository = roleRepository; } public User saveUser(User user) { // Проверка и загрузка роли if (user.getRole() != null && user.getRole().getId() != null) { Role role = roleRepository.findById(user.getRole().getId()) .orElseThrow(() -> new RuntimeException("Role not found")); user.setRole(role); // Используем ручной сеттер } return userRepository.save(user); } public Page<User> getUsers(String search, Pageable pageable) { return userRepository.findByFullNameContainingOrLoginContainingOrRole_NameContaining( search, search, search, pageable ); } public User getUserById(Long id) { return userRepository.findById(id).orElse(null); } public void deleteUser(Long id) { userRepository.deleteById(id); } public Page<User> searchUsers(String query, Pageable pageable) { if (query == null || query.trim().isEmpty()) { return userRepository.findAll(pageable); } return userRepository.findByFullNameContainingOrLoginContainingOrRole_NameContaining( query, query, query, pageable ); } }