X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fmodel%2FMobileLedgerProfile.java;h=ae877c3384c4ae992efa77f6b2d44b5b12285a2f;hb=d295c5e74a18fed6383109ec463bc6c3f6b48fce;hp=b3920fe4d5e5a9acba517ad8ec842f38fbc72839;hpb=c0b1645b9f14e6b25803efd2fa048e27030ba5e6;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/model/MobileLedgerProfile.java b/app/src/main/java/net/ktnx/mobileledger/model/MobileLedgerProfile.java index b3920fe4..ae877c33 100644 --- a/app/src/main/java/net/ktnx/mobileledger/model/MobileLedgerProfile.java +++ b/app/src/main/java/net/ktnx/mobileledger/model/MobileLedgerProfile.java @@ -25,6 +25,7 @@ import net.ktnx.mobileledger.utils.Globals; import net.ktnx.mobileledger.utils.MLDB; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.UUID; @@ -312,4 +313,38 @@ public final class MobileLedgerProfile { public void setThemeId(Object o) { setThemeId(Integer.valueOf(String.valueOf(o)).intValue()); } + public void markTransactionsAsNotPresent(SQLiteDatabase db) { + db.execSQL("UPDATE transactions set keep=0 where profile=?", new String[]{uuid}); + + } + public void markAccountsAsNotPresent(SQLiteDatabase db) { + db.execSQL("update account_values set keep=0 where profile=?;", new String[]{uuid}); + db.execSQL("update accounts set keep=0 where profile=?;", new String[]{uuid}); + + } + public void deleteNotPresentAccounts(SQLiteDatabase db) { + db.execSQL("delete from account_values where keep=0 and profile=?", new String[]{uuid}); + db.execSQL("delete from accounts where keep=0 and profile=?", new String[]{uuid}); + } + public void markTransactionAsPresent(SQLiteDatabase db, LedgerTransaction transaction) { + db.execSQL("UPDATE transactions SET keep = 1 WHERE profile = ? and id=?", + new Object[]{uuid, transaction.getId() + }); + } + public void markTransactionsBeforeTransactionAsPresent(SQLiteDatabase db, + LedgerTransaction transaction) { + db.execSQL("UPDATE transactions SET keep=1 WHERE profile = ? and id < ?", + new Object[]{uuid, transaction.getId() + }); + + } + public void deleteNotPresentTransactions(SQLiteDatabase db) { + db.execSQL("DELETE FROM transactions WHERE profile=? AND keep = 0", new String[]{uuid}); + } + public void setLastUpdateStamp() { + Log.d("db", "Updating transaction value stamp"); + Date now = new Date(); + setLongOption(MLDB.OPT_LAST_SCRAPE, now.getTime()); + Data.lastUpdateDate.set(now); + } }