X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fasync%2FUpdateTransactionsTask.java;h=042da8ab50db02e8165019300f045c851a6acdc5;hp=178db99fb473776bf4ad5cfaf71cf45724b58001;hb=e8c73363b1848804daaddd9a10940c7f8acc1d85;hpb=2e6d7c5f759986f89a867ee5b9162496019d5130 diff --git a/app/src/main/java/net/ktnx/mobileledger/async/UpdateTransactionsTask.java b/app/src/main/java/net/ktnx/mobileledger/async/UpdateTransactionsTask.java index 178db99f..042da8ab 100644 --- a/app/src/main/java/net/ktnx/mobileledger/async/UpdateTransactionsTask.java +++ b/app/src/main/java/net/ktnx/mobileledger/async/UpdateTransactionsTask.java @@ -24,28 +24,37 @@ import android.util.Log; import net.ktnx.mobileledger.model.Data; import net.ktnx.mobileledger.model.LedgerTransaction; +import net.ktnx.mobileledger.model.MobileLedgerProfile; +import net.ktnx.mobileledger.model.TransactionListItem; +import net.ktnx.mobileledger.utils.Globals; import net.ktnx.mobileledger.utils.MLDB; +import java.text.ParseException; import java.util.ArrayList; -import java.util.List; +import java.util.Date; -public class UpdateTransactionsTask extends AsyncTask> { - protected List doInBackground(String[] filterAccName) { +public class UpdateTransactionsTask extends AsyncTask { + protected String doInBackground(String[] filterAccName) { Data.backgroundTaskCount.incrementAndGet(); - String profile_uuid = Data.profile.get().getUuid(); + final MobileLedgerProfile profile = Data.profile.get(); + if (profile == null) return "Profile not configured"; + + String profile_uuid = profile.getUuid(); try { - ArrayList newList = new ArrayList<>(); + ArrayList newList = new ArrayList<>(); String sql; String[] params; if (filterAccName[0] == null) { - sql = "SELECT id FROM transactions WHERE profile=? ORDER BY date desc, id desc"; + sql = "SELECT id, date FROM transactions WHERE profile=? ORDER BY date desc, id " + + "desc"; params = new String[]{profile_uuid}; } else { - sql = "SELECT distinct tr.id from transactions tr JOIN transaction_accounts ta " + + sql = "SELECT distinct tr.id, tr.date from transactions tr JOIN " + + "transaction_accounts ta " + "ON ta.transaction_id=tr.id AND ta.profile=tr.profile WHERE tr.profile=? " + "and ta.account_name LIKE ?||'%' AND ta" + ".amount <> 0 ORDER BY tr.date desc, tr.id desc"; @@ -54,19 +63,38 @@ public class UpdateTransactionsTask extends AsyncTask