Files
expensetracker/src/main/java/com/faf223/expensetrackerfaf/dto/mappers/ExpenseMapper.java
2023-10-05 13:13:53 +03:00

32 lines
1.0 KiB
Java

package com.faf223.expensetrackerfaf.dto.mappers;
import com.faf223.expensetrackerfaf.dto.ExpenseCreationDTO;
import com.faf223.expensetrackerfaf.dto.ExpenseDTO;
import com.faf223.expensetrackerfaf.model.Expense;
import com.faf223.expensetrackerfaf.service.ExpenseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class ExpenseMapper {
private final ExpenseService expenseService;
private final UserMapper userMapper;
@Autowired
public ExpenseMapper(ExpenseService expenseService, UserMapper userMapper) {
this.expenseService = expenseService;
this.userMapper = userMapper;
}
public ExpenseDTO toDto(Expense expense) {
return new ExpenseDTO(expense.getExpenseId(), userMapper.toDto(expense.getUser()),
expense.getCategory(), expense.getDate(), expense.getAmount());
}
public Expense toExpense(ExpenseCreationDTO expenseDTO) {
return expenseService.getExpenseById(expenseDTO.getExpenseId());
}
}