X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fdao%2FTransactionDAO.java;h=e347207cda9ed053b36cb1481d9c62ca2527884c;hb=bba9ffd8fa7af0e3a940461cbc6448e266794aa6;hp=5af78ea9ac1198c799695473fa3e7551eb5f22bb;hpb=39e1e3cb7fea21d541869f787b9c1379e976df2d;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/dao/TransactionDAO.java b/app/src/main/java/net/ktnx/mobileledger/dao/TransactionDAO.java index 5af78ea9..e347207c 100644 --- a/app/src/main/java/net/ktnx/mobileledger/dao/TransactionDAO.java +++ b/app/src/main/java/net/ktnx/mobileledger/dao/TransactionDAO.java @@ -103,9 +103,15 @@ public abstract class TransactionDAO extends BaseDAO { protected abstract TransactionGenerationContainer getGenerationPOJOSync(long profileId); @androidx.room.Transaction - @Query("SELECT * FROM transactions WHERE profile_id = :profileId") + @Query("SELECT * FROM transactions WHERE profile_id = :profileId ORDER BY year " + + " desc, month desc, day desc, ledger_id desc") public abstract List getAllWithAccountsSync(long profileId); + @androidx.room.Transaction + @Query("SELECT * FROM transactions WHERE profile_id = :profileId ORDER BY year " + + " desc, month desc, day desc, ledger_id desc") + public abstract LiveData> getAllWithAccounts(long profileId); + @androidx.room.Transaction @Query("SELECT distinct(tr.id), tr.ledger_id, tr.profile_id, tr.data_hash, tr.year, tr.month," + " tr.day, tr.description, tr.comment, tr.generation FROM transactions tr JOIN " + @@ -157,6 +163,7 @@ public abstract class TransactionDAO extends BaseDAO { return 0; return result.generation; } + @androidx.room.Transaction public void storeTransactionsSync(List list, long profileId) { long generation = getGenerationSync(profileId) + 1; @@ -175,7 +182,8 @@ public abstract class TransactionDAO extends BaseDAO { Logger.debug("Transaction", String.format(Locale.ROOT, "Purged %d transaction accounts", removed)); } - private void storeSync(TransactionWithAccounts rec) { + @androidx.room.Transaction + void storeSync(TransactionWithAccounts rec) { TransactionAccountDAO trAccDao = DB.get() .getTransactionAccountDAO();