/*
- * Copyright © 2019 Damyan Ivanov.
+ * Copyright © 2020 Damyan Ivanov.
* This file is part of MoLe.
* MoLe is free software: you can distribute it and/or modify it
* under the term of the GNU General Public License as published by
class NewTransactionItemsAdapter extends RecyclerView.Adapter<NewTransactionItemHolder>
implements DescriptionSelectedCallback {
- private NewTransactionModel model;
+ private final NewTransactionModel model;
private MobileLedgerProfile mProfile;
- private ItemTouchHelper touchHelper;
+ private final ItemTouchHelper touchHelper;
private RecyclerView recyclerView;
private int checkHoldCounter = 0;
NewTransactionItemsAdapter(NewTransactionModel viewModel, MobileLedgerProfile profile) {
this.recyclerView = null;
}
public void descriptionSelected(String description) {
- debug("descr selected", description);
+ debug("description selected", description);
if (!accountListIsEmpty())
return;
params.add(accFilter);
}
- sb.append(" ORDER BY t.date DESC LIMIT 1");
+ sb.append(" ORDER BY t.year desc, t.month desc, t.day desc LIMIT 1");
final String sql = sb.toString();
- debug("descr", sql);
- debug("descr", params.toString());
+ debug("description", sql);
+ debug("description", params.toString());
Activity activity = (Activity) recyclerView.getContext();
// FIXME: handle exceptions?
if (Misc.isEmptyOrNull(accFilter))
return;
- debug("descr", "Trying transaction search without preferred account filter");
+ debug("description", "Trying transaction search without preferred account filter");
final String broaderSql =
"select t.profile, t.id from transactions t where t.description=?" +
- " ORDER BY date desc LIMIT 1";
+ " ORDER BY year desc, month desc, day desc LIMIT 1";
params.remove(1);
- debug("descr", broaderSql);
- debug("descr", description);
+ debug("description", broaderSql);
+ debug("description", description);
- activity.runOnUiThread(() -> {
- Snackbar.make(recyclerView, R.string.ignoring_preferred_account,
- Snackbar.LENGTH_LONG)
- .show();
- });
+ activity.runOnUiThread(
+ () -> Snackbar.make(recyclerView, R.string.ignoring_preferred_account,
+ Snackbar.LENGTH_LONG)
+ .show());
MLDB.queryInBackground(broaderSql, new String[]{description},
new MLDB.CallbackHelper() {
profileUUID, transactionId));
tr = profile.loadTransaction(transactionId);
- ArrayList<LedgerTransactionAccount> accounts = tr.getAccounts();
+ List<LedgerTransactionAccount> accounts = tr.getAccounts();
NewTransactionModel.Item firstNegative = null;
NewTransactionModel.Item firstPositive = null;
int singleNegativeIndex = -1;
}
private static class BalanceForCurrency {
- private HashMap<String, Float> hashMap = new HashMap<>();
+ private final HashMap<String, Float> hashMap = new HashMap<>();
float get(String currencyName) {
Float f = hashMap.get(currencyName);
if (f == null) {
}
private static class ItemsForCurrency {
- private HashMap<String, List<NewTransactionModel.Item>> hashMap = new HashMap<>();
+ private final HashMap<String, List<NewTransactionModel.Item>> hashMap = new HashMap<>();
@NonNull
List<NewTransactionModel.Item> getList(@Nullable String currencyName) {
List<NewTransactionModel.Item> list = hashMap.get(currencyName);