| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package com.platform2easy.genesis.domain.service;
- import com.platform2easy.genesis.domain.model.AppUser;
- import com.platform2easy.genesis.domain.repository.AppUserRepository;
- import lombok.AllArgsConstructor;
- import org.springframework.security.core.userdetails.UserDetails;
- import org.springframework.security.core.userdetails.UserDetailsService;
- import org.springframework.security.core.userdetails.UsernameNotFoundException;
- import org.springframework.stereotype.Service;
- import java.util.List;
- import java.util.Collections;
- import org.springframework.security.core.authority.SimpleGrantedAuthority;
- import org.springframework.security.core.userdetails.User;
- @Service
- @AllArgsConstructor
- public class UserService implements UserDetailsService {
- private final AppUserRepository appUserRepository;
- @Override
- public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
- AppUser appUser = appUserRepository.findByUserEmail(username)
- .orElseThrow(() -> new UsernameNotFoundException("User not found: " + username));
- return new User(appUser.getUserEmail(), appUser.getUserPassword(),
- Collections.singletonList(new SimpleGrantedAuthority("ROLE_USER")));
- }
- @Transactional
- public AppUser salvar(AppUser user) {
- appUserRepository.save(user);
- return user;
- }
- public AppUser buscarPorEmpresa(Integer companyId) {
- return appUserRepository.findByCompanyId(companyId).orElseThrow();
- }
- public List<AppUser> listAll(){
- return appUserRepository.findAll();
- }
- public void deletarPorId(Long id) {
- appUserRepository.deleteById(id);
- }
- }
|