diff --git a/src/main/java/com/example/nto/config/WebSecurityConfig.java b/src/main/java/com/example/nto/config/WebSecurityConfig.java index 5dc057d..8ed8804 100644 --- a/src/main/java/com/example/nto/config/WebSecurityConfig.java +++ b/src/main/java/com/example/nto/config/WebSecurityConfig.java @@ -1,10 +1,12 @@ package com.example.nto.config; +import com.example.nto.service.EmployeeService; import lombok.RequiredArgsConstructor; import org.springframework.boot.web.servlet.FilterRegistrationBean; import org.springframework.boot.web.servlet.support.ErrorPageFilter; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; @@ -49,6 +51,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { .passwordEncoder(passwordEncoder()); } + @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); diff --git a/src/main/java/com/example/nto/controller/EmployeeController.java b/src/main/java/com/example/nto/controller/EmployeeController.java index b7f7999..a11a32b 100644 --- a/src/main/java/com/example/nto/controller/EmployeeController.java +++ b/src/main/java/com/example/nto/controller/EmployeeController.java @@ -29,7 +29,17 @@ public class EmployeeController { @GetMapping("/login") public ResponseEntity login(Authentication authentication) { - System.out.println("out" + authentication.getAuthorities()); - return ResponseEntity.ok(employeeService.getUserByUsername(authentication.getName())); + System.out.println("Authentication object: " + authentication); + String username = authentication.getName(); + System.out.println("Username: " + username); + + EmployeeDTO employeeDTO = employeeService.getUserByUsername(username); + if (employeeDTO == null) { + System.out.println("User not found for username: " + username); + return ResponseEntity.status(404).body(null); + } + + System.out.println("EmployeeDTO: " + employeeDTO); + return ResponseEntity.ok(employeeDTO); } } diff --git a/src/main/java/com/example/nto/entity/Credentials.java b/src/main/java/com/example/nto/entity/Credentials.java index d9cd486..faf549d 100644 --- a/src/main/java/com/example/nto/entity/Credentials.java +++ b/src/main/java/com/example/nto/entity/Credentials.java @@ -19,7 +19,4 @@ public class Credentials { @Column(name = "hashed_password") private String hashedPassword; - @OneToMany(mappedBy = "credentials") - @JsonIgnore - private List employees; } \ No newline at end of file diff --git a/src/main/java/com/example/nto/entity/Employee.java b/src/main/java/com/example/nto/entity/Employee.java index 3d0c1cf..2615daa 100644 --- a/src/main/java/com/example/nto/entity/Employee.java +++ b/src/main/java/com/example/nto/entity/Employee.java @@ -40,8 +40,6 @@ public class Employee implements UserDetails { private Credentials credentials; @Column(name = "photo") private String photo; - @ManyToMany(fetch = FetchType.EAGER) - private Set authorities; @Column(name = "position") private String position; @Column(name = "lastVisit") diff --git a/src/main/java/com/example/nto/service/impl/EmployeeCodeServiceImpl.java b/src/main/java/com/example/nto/service/impl/EmployeeCodeServiceImpl.java index f722dab..83a6a04 100644 --- a/src/main/java/com/example/nto/service/impl/EmployeeCodeServiceImpl.java +++ b/src/main/java/com/example/nto/service/impl/EmployeeCodeServiceImpl.java @@ -113,7 +113,6 @@ public class EmployeeCodeServiceImpl implements EmployeeService, CodeService { employee.setLogin(dto.getLogin()); employee.setName(dto.getName()); employee.setPassword(passwordEncoder.encode(dto.getPassword())); - employee.setAuthorities(Set.of(roleUser.get())); employee.setCredentials(credentials); employee.setAuthority(roleUser.get()); diff --git a/src/main/java/com/example/nto/service/impl/UserDetailsServiceImpl.java b/src/main/java/com/example/nto/service/impl/UserDetailsServiceImpl.java index bf2a403..c6a5ef7 100644 --- a/src/main/java/com/example/nto/service/impl/UserDetailsServiceImpl.java +++ b/src/main/java/com/example/nto/service/impl/UserDetailsServiceImpl.java @@ -14,10 +14,10 @@ import java.util.Optional; @RequiredArgsConstructor public class UserDetailsServiceImpl implements UserDetailsService { - private final EmployeeRepository usersRepository; + private final EmployeeRepository employeeRepository; @Override public UserDetails loadUserByUsername(String s) throws UsernameNotFoundException { - Optional optionalUsers = usersRepository.findByLogin(s); + Optional optionalUsers = employeeRepository.findByLogin(s); if(optionalUsers.isEmpty()) { throw new UsernameNotFoundException("User not found");