Fix mapper + DTO
This commit is contained in:
@@ -24,6 +24,7 @@ public class SecurityConfiguration {
|
||||
.csrf(csrf -> csrf.disable())
|
||||
.authorizeHttpRequests(auth -> auth
|
||||
.requestMatchers("/api/v1/auth/**").permitAll()
|
||||
.requestMatchers("/encomes").hasRole("ADMIN")
|
||||
.anyRequest().authenticated()
|
||||
)
|
||||
.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
|
||||
|
||||
@@ -20,7 +20,7 @@ public class AuthenticationController {
|
||||
}
|
||||
|
||||
@PostMapping("/authenticate")
|
||||
public ResponseEntity<AuthenticationResponse> register(@RequestBody AuthenticationRequest request) {
|
||||
public ResponseEntity<AuthenticationResponse> authenticate(@RequestBody AuthenticationRequest request) {
|
||||
return ResponseEntity.ok(service.authenticate(request));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,5 +6,11 @@ import lombok.Data;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class UserCreationDTO {
|
||||
private String uuid;
|
||||
|
||||
private String firstname;
|
||||
private String lastname;
|
||||
private String username;
|
||||
private String email;
|
||||
private String password;
|
||||
|
||||
}
|
||||
|
||||
@@ -6,8 +6,9 @@ import lombok.Data;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class UserDTO {
|
||||
private String uuid;
|
||||
|
||||
private String name;
|
||||
private String surname;
|
||||
private String username;
|
||||
|
||||
}
|
||||
|
||||
@@ -10,19 +10,17 @@ import org.springframework.stereotype.Component;
|
||||
@Component
|
||||
public class UserMapper {
|
||||
|
||||
private final UserService userService;
|
||||
|
||||
@Autowired
|
||||
public UserMapper(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
public UserDTO toDto(User user) {
|
||||
return new UserDTO(user.getUuid(), user.getName(), user.getSurname(), user.getUsername());
|
||||
return new UserDTO(user.getFirstName(), user.getLastName(), user.getUsername());
|
||||
}
|
||||
|
||||
public User toUser(UserCreationDTO userDTO) {
|
||||
return userService.getUserById(userDTO.getUuid());
|
||||
User user = new User();
|
||||
user.setFirstName(userDTO.getFirstname());
|
||||
user.setLastName(userDTO.getLastname());
|
||||
user.setUsername(userDTO.getUsername());
|
||||
|
||||
return user;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.faf223.expensetrackerfaf.repository;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.Expense;
|
||||
import com.faf223.expensetrackerfaf.model.User;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@@ -8,5 +9,5 @@ import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface ExpenseRepository extends JpaRepository<Expense, Long> {
|
||||
List<Expense> findByUserUuid(String userUuid);
|
||||
List<Expense> findByUser(User user);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.faf223.expensetrackerfaf.repository;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.Income;
|
||||
import com.faf223.expensetrackerfaf.model.User;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@@ -8,5 +9,5 @@ import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface IncomeRepository extends JpaRepository<Income, Long> {
|
||||
List<Income> findByUserUuid(String userUuid);
|
||||
List<Income> findByUser(User user);
|
||||
}
|
||||
|
||||
@@ -3,5 +3,8 @@ package com.faf223.expensetrackerfaf.repository;
|
||||
import com.faf223.expensetrackerfaf.model.User;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public interface UserRepository extends JpaRepository<User, String> {
|
||||
Optional<User> getUserByUserUuid(String userUuid);
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ public class AuthenticationService {
|
||||
.password(passwordEncoder.encode(request.getPassword()))
|
||||
.username(request.getUsername())
|
||||
.build();
|
||||
System.out.println(user);
|
||||
// System.out.println(user);
|
||||
userRepository.save(user);
|
||||
Credential credential = new Credential(user, request.getEmail(), passwordEncoder.encode(request.getPassword()));
|
||||
credentialRepository.save(credential);
|
||||
|
||||
@@ -1,25 +1,36 @@
|
||||
package com.faf223.expensetrackerfaf.service;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.Expense;
|
||||
import com.faf223.expensetrackerfaf.model.User;
|
||||
import com.faf223.expensetrackerfaf.repository.ExpenseRepository;
|
||||
import com.faf223.expensetrackerfaf.repository.UserRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ExpenseService {
|
||||
|
||||
private final ExpenseRepository expenseRepository;
|
||||
private final UserRepository userRepository;
|
||||
|
||||
public void createOrUpdateExpense(Expense expense) {
|
||||
expenseRepository.save(expense);
|
||||
}
|
||||
|
||||
public List<Expense> getExpensesByUserId(String userUuid) {
|
||||
return expenseRepository.findByUserUuid(userUuid);
|
||||
|
||||
Optional<User> user = userRepository.getUserByUserUuid(userUuid);
|
||||
if (user.isPresent()) {
|
||||
return expenseRepository.findByUser(user.get());
|
||||
}
|
||||
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
public List<Expense> getExpenses() {
|
||||
|
||||
@@ -1,18 +1,23 @@
|
||||
package com.faf223.expensetrackerfaf.service;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.Income;
|
||||
import com.faf223.expensetrackerfaf.model.User;
|
||||
import com.faf223.expensetrackerfaf.repository.IncomeRepository;
|
||||
import com.faf223.expensetrackerfaf.repository.UserRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class IncomeService {
|
||||
|
||||
private final IncomeRepository incomeRepository;
|
||||
private final UserRepository userRepository;
|
||||
|
||||
public void createOrUpdateIncome(Income income) {
|
||||
incomeRepository.save(income);
|
||||
@@ -23,7 +28,13 @@ public class IncomeService {
|
||||
}
|
||||
|
||||
public List<Income> getIncomesByUserId(String userUuid) {
|
||||
return incomeRepository.findByUserUuid(userUuid);
|
||||
|
||||
Optional<User> user = userRepository.getUserByUserUuid(userUuid);
|
||||
if (user.isPresent()) {
|
||||
return incomeRepository.findByUser(user.get());
|
||||
}
|
||||
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
public Income getIncomeById(long id) {
|
||||
|
||||
Reference in New Issue
Block a user