Use JPA query to query candidates for recurring transactions due today
Previously the query was autogenerated but the WHERE clause was wrong, because the braces where at the wrong places and thus the query matched wrong data.
This commit is contained in:
@@ -2,7 +2,9 @@ package de.financer.dba;
|
|||||||
|
|
||||||
import de.financer.model.Account;
|
import de.financer.model.Account;
|
||||||
import de.financer.model.RecurringTransaction;
|
import de.financer.model.RecurringTransaction;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.data.repository.CrudRepository;
|
import org.springframework.data.repository.CrudRepository;
|
||||||
|
import org.springframework.data.repository.query.Param;
|
||||||
import org.springframework.transaction.annotation.Propagation;
|
import org.springframework.transaction.annotation.Propagation;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
@@ -12,6 +14,7 @@ import java.time.LocalDate;
|
|||||||
public interface RecurringTransactionRepository extends CrudRepository<RecurringTransaction, Long> {
|
public interface RecurringTransactionRepository extends CrudRepository<RecurringTransaction, Long> {
|
||||||
Iterable<RecurringTransaction> findRecurringTransactionsByFromAccountOrToAccount(Account fromAccount, Account toAccount);
|
Iterable<RecurringTransaction> findRecurringTransactionsByFromAccountOrToAccount(Account fromAccount, Account toAccount);
|
||||||
|
|
||||||
|
@Query("SELECT rt FROM RecurringTransaction rt WHERE rt.deleted = false AND (rt.lastOccurrence IS NULL OR rt.lastOccurrence >= :lastOccurrence)")
|
||||||
Iterable<RecurringTransaction> findByDeletedFalseAndLastOccurrenceIsNullOrLastOccurrenceGreaterThanEqual(LocalDate lastOccurrence);
|
Iterable<RecurringTransaction> findByDeletedFalseAndLastOccurrenceIsNullOrLastOccurrenceGreaterThanEqual(LocalDate lastOccurrence);
|
||||||
|
|
||||||
Iterable<RecurringTransaction> findByDeletedFalse();
|
Iterable<RecurringTransaction> findByDeletedFalse();
|
||||||
|
|||||||
Reference in New Issue
Block a user