refactor code, add interfaces for services
This commit is contained in:
@@ -5,14 +5,22 @@ import com.faf223.expensetrackerfaf.repository.ExpenseCategoryRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ExpenseCategoryService {
|
||||
public class ExpenseCategoryService implements ICategoryService {
|
||||
|
||||
private final ExpenseCategoryRepository expenseCategoryRepository;
|
||||
|
||||
public ExpenseCategory getExpenseCategory(long category) {
|
||||
return expenseCategoryRepository.getReferenceById(category);
|
||||
@Override
|
||||
public List<ExpenseCategory> getAllCategories() {
|
||||
return expenseCategoryRepository.findAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExpenseCategory getCategoryById(long id) {
|
||||
return expenseCategoryRepository.getReferenceById(id);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package com.faf223.expensetrackerfaf.service;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.Credential;
|
||||
import com.faf223.expensetrackerfaf.model.Expense;
|
||||
import com.faf223.expensetrackerfaf.model.IMoneyTransaction;
|
||||
import com.faf223.expensetrackerfaf.repository.CredentialRepository;
|
||||
import com.faf223.expensetrackerfaf.repository.ExpenseRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -13,16 +14,16 @@ import java.util.Optional;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ExpenseService {
|
||||
public class ExpenseService implements ITransactionService {
|
||||
|
||||
private final ExpenseRepository expenseRepository;
|
||||
private final CredentialRepository credentialRepository;
|
||||
|
||||
public void createOrUpdateExpense(Expense expense) {
|
||||
expenseRepository.save(expense);
|
||||
public void createOrUpdate(IMoneyTransaction expense) {
|
||||
expenseRepository.save((Expense) expense);
|
||||
}
|
||||
|
||||
public List<Expense> getExpensesByEmail(String email) {
|
||||
public List<Expense> getTransactionsByEmail(String email) {
|
||||
|
||||
Optional<Credential> credential = credentialRepository.findByEmail(email);
|
||||
if (credential.isPresent()) {
|
||||
@@ -32,11 +33,11 @@ public class ExpenseService {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
public List<Expense> getExpenses() {
|
||||
public List<Expense> getTransactions() {
|
||||
return expenseRepository.findAll();
|
||||
}
|
||||
|
||||
public Expense getExpenseById(long id) {
|
||||
public Expense getTransactionById(long id) {
|
||||
return expenseRepository.findById(id).orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.faf223.expensetrackerfaf.service;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.IMoneyTransactionCategory;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ICategoryService {
|
||||
|
||||
List<? extends IMoneyTransactionCategory> getAllCategories();
|
||||
IMoneyTransactionCategory getCategoryById(long id);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.faf223.expensetrackerfaf.service;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.IMoneyTransaction;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ITransactionService {
|
||||
|
||||
void createOrUpdate(IMoneyTransaction transaction);
|
||||
List<? extends IMoneyTransaction> getTransactions();
|
||||
List<? extends IMoneyTransaction> getTransactionsByEmail(String email);
|
||||
IMoneyTransaction getTransactionById(long id);
|
||||
|
||||
}
|
||||
@@ -5,13 +5,21 @@ import com.faf223.expensetrackerfaf.repository.IncomeCategoryRepository;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class IncomeCategoryService {
|
||||
public class IncomeCategoryService implements ICategoryService {
|
||||
|
||||
private final IncomeCategoryRepository incomeCategoryRepository;
|
||||
|
||||
public IncomeCategory getExpenseCategory(long category) {
|
||||
return incomeCategoryRepository.getReferenceById(category);
|
||||
@Override
|
||||
public List<IncomeCategory> getAllCategories() {
|
||||
return incomeCategoryRepository.findAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public IncomeCategory getCategoryById(long id) {
|
||||
return incomeCategoryRepository.getReferenceById(id);
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.faf223.expensetrackerfaf.service;
|
||||
|
||||
import com.faf223.expensetrackerfaf.model.Credential;
|
||||
import com.faf223.expensetrackerfaf.model.IMoneyTransaction;
|
||||
import com.faf223.expensetrackerfaf.model.Income;
|
||||
import com.faf223.expensetrackerfaf.repository.CredentialRepository;
|
||||
import com.faf223.expensetrackerfaf.repository.IncomeRepository;
|
||||
@@ -13,20 +14,20 @@ import java.util.Optional;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class IncomeService {
|
||||
public class IncomeService implements ITransactionService {
|
||||
|
||||
private final IncomeRepository incomeRepository;
|
||||
private final CredentialRepository credentialRepository;
|
||||
|
||||
public void createOrUpdateIncome(Income income) {
|
||||
incomeRepository.save(income);
|
||||
public void createOrUpdate(IMoneyTransaction income) {
|
||||
incomeRepository.save((Income) income);
|
||||
}
|
||||
|
||||
public List<Income> getIncomes() {
|
||||
public List<Income> getTransactions() {
|
||||
return incomeRepository.findAll();
|
||||
}
|
||||
|
||||
public List<Income> getIncomesByEmail(String email) {
|
||||
public List<Income> getTransactionsByEmail(String email) {
|
||||
|
||||
Optional<Credential> credential = credentialRepository.findByEmail(email);
|
||||
if (credential.isPresent()) {
|
||||
@@ -36,7 +37,7 @@ public class IncomeService {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
public Income getIncomeById(long id) {
|
||||
public Income getTransactionById(long id) {
|
||||
return incomeRepository.findById(id).orElse(null);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user