/
on-line-javalex
/
HW_NoSQL_JavaData
Обзор
Документация
Войти
/
on-line-javalex
/
HW_NoSQL_JavaData
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Mommy/service/UserService.java
75 строк
2 KB
on-line-javalex
create: GlobalExceptionHandler.java, OpenApiConfig.java, UserController.java, UserCreateRequest.java, UserResponse.java, User.java, UserMapper.java, MommyApplication.java, UserRepository.java, UserService.java
12 май 2026, 13:58
Верифицирован
12 май 2026, 13:58
aac6fe8
Код
Авторство
О чём код?
package Mommy.service; import Mommy.dto.UserCreateRequest; import Mommy.dto.UserResponse; import Mommy.entity.User; import Mommy.mapper.UserMapper; import Mommy.repository.UserRepository; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; import org.springframework.web.server.ResponseStatusException; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; import java.util.List; import java.util.Optional; @Service public class UserService { private final UserRepository userRepository; public UserService(UserRepository userRepository) { this.userRepository = userRepository; } public User create (User user){ if (userRepository.existsByEmail(user.getEmail())){ throw new ResponseStatusException(HttpStatus.CONFLICT, "Пользователь с таким email уже существует"); }return userRepository.save(user); } public User save(User user) { return userRepository.save(user); } public User findById(String id) { return userRepository.findByIdAndDeletedFalse(id) .orElseThrow(() -> new ResponseStatusException(HttpStatus.NOT_FOUND, "Пользователь с id " + id + " не найден")); } public User findByIdHard(String id) { return userRepository.findById(id) .orElseThrow(() -> new ResponseStatusException(HttpStatus.NOT_FOUND, "Пользователь с id " + id + " не найден")); } public Page<UserResponse> findAll(Pageable pageable) { return userRepository.findByDeletedFalse(pageable) .map(UserMapper::toResponse); } public User update(String id, UserCreateRequest request) { User exist = findById(id); UserMapper.updateFromRequest(request, exist); return userRepository.save(exist); } public void deleteById(String id) { User deleted = findById(id); deleted.setDeleted(true); userRepository.save(deleted); } // internal needs public void deleteAll() { userRepository.deleteAll(); } public List<User> findByName(String name) { return userRepository.findByName(name); } public List<User> findByAgeGreaterThan(int age) { return userRepository.findByAgeGreaterThan(age); } }