Merge branch 'master' of https://github.com/lumijiez/ExpenseTrackerFAF into front-v3

This commit is contained in:
2024-01-11 00:42:36 +02:00
5 changed files with 105 additions and 43 deletions

View File

@@ -84,7 +84,8 @@ public class UserController {
userData.put("firstname", user.getFirstName());
userData.put("lastname", user.getLastName());
userData.put("username", user.getUsername());
userData.put("userrole", credential.get().getRole().toString()); // Assuming UserRole is an enum
userData.put("email", credential.get().getEmail());
userData.put("userrole", credential.get().getRole().toString());
return ResponseEntity.ok(userData);
}
@@ -94,10 +95,25 @@ public class UserController {
@GetMapping()
@PreAuthorize("hasRole('ADMIN')")
public ResponseEntity<ArrayList<UserDTO>> getAllUsers() {
public ResponseEntity<ArrayList<Map<String, String>>> getAllUsers() {
ArrayList<User> users = new ArrayList<>(userService.getUsers());
return ResponseEntity.ok(userMapper.toDto(users));
ArrayList<Map<String, String>> mappedUsers = new ArrayList<>();
for (User u: users) {
Map<String, String> userData = new HashMap<>();
userData.put("firstname", u.getFirstName());
userData.put("lastname", u.getLastName());
userData.put("username", u.getUsername());
Optional<Credential> credential = credentialRepository.findByUser(u);
if (credential.isEmpty()) continue;
userData.put("email", credential.get().getEmail());
userData.put("userrole", credential.get().getRole().toString());
mappedUsers.add(userData);
}
return ResponseEntity.ok(mappedUsers);
}
@GetMapping("/delete/{username}")

View File

@@ -2,6 +2,7 @@ package com.faf223.expensetrackerfaf.model;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@@ -9,6 +10,7 @@ import lombok.NoArgsConstructor;
@Entity(name = "credentials")
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Credential {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)

View File

@@ -34,8 +34,6 @@
private String username;
@Transient
// @NotNull(message = "Password must not be null")
// @NotEmpty(message = "Password must not be empty")
private String password;
@OneToMany(mappedBy = "user", fetch = FetchType.LAZY, cascade = CascadeType.ALL)