From df9ab11410196678e37312733637c61f5cbe78f4 Mon Sep 17 00:00:00 2001 From: Tanguy Herbron Date: Wed, 15 Aug 2018 02:51:28 +0200 Subject: [PATCH] Fix transaction edition - Fix crash when trying to edit a transaction - Update the code when editing a transaction to match the new interface --- .../Transactions.java | 2 +- .../Activities/RecordTransactionActivity.java | 193 ++++++++++++------ .../BuyFragment.java | 119 +++++++++-- .../TransactionListAdapter.java | 2 +- .../CurrencyData/Transaction.java | 79 ++++++- .../moodl/DataManagers/DatabaseManager.java | 62 ++++-- 6 files changed, 343 insertions(+), 114 deletions(-) diff --git a/app/src/main/java/com/herbron/moodl/Activities/DetailsActivityFragments/Transactions.java b/app/src/main/java/com/herbron/moodl/Activities/DetailsActivityFragments/Transactions.java index 1c15463..944681e 100644 --- a/app/src/main/java/com/herbron/moodl/Activities/DetailsActivityFragments/Transactions.java +++ b/app/src/main/java/com/herbron/moodl/Activities/DetailsActivityFragments/Transactions.java @@ -180,7 +180,7 @@ public class Transactions extends Fragment { private void drawTransactionList(ArrayList transactions) { - TransactionListAdapter transactionListAdapter = new TransactionListAdapter(getActivity().getBaseContext(), transactions); + TransactionListAdapter transactionListAdapter = new TransactionListAdapter(getActivity(), transactions); transactionLayout.setAdapter(transactionListAdapter); transactionLayout.setTextFilterEnabled(false); diff --git a/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionActivity.java b/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionActivity.java index cbd133c..ef511e3 100644 --- a/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionActivity.java +++ b/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionActivity.java @@ -36,6 +36,7 @@ import com.herbron.moodl.CurrencyInfoUpdateNotifierInterface; import com.herbron.moodl.CustomAdapters.PairRecordListAdapter; import com.herbron.moodl.CustomLayouts.CustomRecordFragment; import com.herbron.moodl.DataManagers.CurrencyData.Currency; +import com.herbron.moodl.DataManagers.CurrencyData.Transaction; import com.herbron.moodl.DataManagers.ExchangeManager.Exchange; import com.herbron.moodl.DataManagers.InfoAPIManagers.CryptocompareApiManager; import com.herbron.moodl.DataManagers.DatabaseManager; @@ -84,55 +85,31 @@ public class RecordTransactionActivity extends AppCompatActivity implements Curr private boolean isGlobalLayoutVisible; - /*private boolean checkPriceText() - { - String purchasedPriceText = purchasedPriceEditText.getText().toString(); - double purchasedPrice; + private TextWatcher coinTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { - try { - purchasedPrice = Double.parseDouble(purchasedPriceText); + } - if(purchasedPrice < 0) + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + currencyIconImageView.setImageBitmap(null); + exchange_autoCompleteTextView.setEnabled(false); + exchange_autoCompleteTextView.setText(""); + + ((LinearLayout) tabLayout.getChildAt(0)).getChildAt(2).setEnabled(false); + + if(isGlobalLayoutVisible && globalTabLayouts.getAnimation().hasEnded()) { - purchasedPriceEditText.setError(getResources().getString(R.string.field_negative)); + globalTabLayouts.startAnimation(dismissAnimation); } - } catch (NumberFormatException e) { - purchasedPriceEditText.setError(getResources().getString(R.string.field_nan)); - - return false; } - if(purchasedPriceText.equals("")) - { - purchasedPriceEditText.setError(getResources().getString(R.string.field_empty)); + @Override + public void afterTextChanged(Editable s) { - return false; } - - return true; - } - - private boolean checkAmountText() - { - String amountText = amountTxtView.getText().toString(); - - try { - Double.parseDouble(amountText); - } catch (NumberFormatException e) { - amountTxtView.setError(getResources().getString(R.string.field_nan)); - - return false; - } - - if(amountText.equals("")) - { - amountTxtView.setError(getResources().getString(R.string.field_empty)); - - return false; - } - - return true; - }*/ + }; @Override protected void onCreate(Bundle savedInstanceState) { @@ -165,6 +142,112 @@ public class RecordTransactionActivity extends AppCompatActivity implements Curr setupBackButton(); } + private void checkCallingIntent() + { + Intent intent = getIntent(); + int transactionId = intent.getIntExtra("transactionId", -1); + + if(transactionId != -1) + { + DatabaseManager databaseManager = new DatabaseManager(getBaseContext()); + Transaction transaction = databaseManager.getCurrencyTransactionById(transactionId); + List denominationList = cryptocompareApiManager.getCurrenciesDenomination(); + + boolean found = false; + int index = 0; + + while(index < denominationList.size() && !found) + { + if(denominationList.get(index).getSymbol().equals(transaction.getSymbol())) + { + currency = denominationList.get(index); + found = true; + + currency.setListener(RecordTransactionActivity.this); + updateExchangeAdapter(currency.getSymbol()); + exchange_autoCompleteTextView.setEnabled(true); + IconDownloaderTask iconDownloaderTask = new IconDownloaderTask(); + iconDownloaderTask.execute(); + coin_autoCompleteTextView.removeTextChangedListener(coinTextWatcher); + coin_autoCompleteTextView.setText(PlaceholderManager.getDenomination(currency.getName(), currency.getSymbol(), getBaseContext())); + coin_autoCompleteTextView.setEnabled(false); + + if(globalTabLayouts.getVisibility() == View.GONE) + { + globalTabLayouts.setVisibility(View.VISIBLE); + } + + globalTabLayouts.startAnimation(revealAnimation); + + isGlobalLayoutVisible = true; + + updateCurrencyData(); + } + + index++; + } + + found = false; + index = 0; + + switch (transaction.getType()) + { + case "b": + List exchangeList = cryptocompareApiManager.getExchangeList(currency.getSymbol()); + + while(index < exchangeList.size() && !found) + { + if(exchangeList.get(index).getName().equals(transaction.getSource())) + { + exchange = exchangeList.get(index); + + exchange_autoCompleteTextView.setText(exchange.getName()); + exchange_autoCompleteTextView.setEnabled(true); + + updateExchangeData(); + + updatePairAdapter(); + found = true; + } + + index++; + } + + List pairList = exchange.getPairsFor(currency.getSymbol()); + + found = false; + index = 0; + + while(index < pairList.size() && !found) + { + if(pairList.get(index).contains(currency.getSymbol()) && pairList.get(index).contains(transaction.getSymPair())) + { + pair = pairList.get(index); + + pair_autoCompleteTextView.setText(PlaceholderManager.getPairString(pair.getFrom(), pair.getTo(), getBaseContext())); + pair_autoCompleteTextView.setEnabled(true); + + updatePairData(); + + found = true; + } + + index++; + } + + tabLayout.getTabAt(0).select(); + + break; + case "s": + tabLayout.getTabAt(1).select(); + break; + case "t": + tabLayout.getTabAt(2).select(); + break; + } + } + } + public Currency getCurrency() { return currency; @@ -380,31 +463,7 @@ public class RecordTransactionActivity extends AppCompatActivity implements Curr coin_autoCompleteTextView.setThreshold(0); coin_autoCompleteTextView.setAdapter(adapter); coin_autoCompleteTextView.setTextColor(getResources().getColor(R.color.white)); - coin_autoCompleteTextView.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - currencyIconImageView.setImageBitmap(null); - exchange_autoCompleteTextView.setEnabled(false); - exchange_autoCompleteTextView.setText(""); - - ((LinearLayout) tabLayout.getChildAt(0)).getChildAt(2).setEnabled(false); - - if(isGlobalLayoutVisible && globalTabLayouts.getAnimation().hasEnded()) - { - globalTabLayouts.startAnimation(dismissAnimation); - } - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); + coin_autoCompleteTextView.addTextChangedListener(coinTextWatcher); coin_autoCompleteTextView.setOnClickListener(new View.OnClickListener() { @Override @@ -509,7 +568,7 @@ public class RecordTransactionActivity extends AppCompatActivity implements Curr @Override public void onExchangesUpdated() { - + checkCallingIntent(); } private class IconDownloaderTask extends AsyncTask { diff --git a/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionFragments/BuyFragment.java b/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionFragments/BuyFragment.java index df49f70..7533510 100644 --- a/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionFragments/BuyFragment.java +++ b/app/src/main/java/com/herbron/moodl/Activities/RecordTransactionFragments/BuyFragment.java @@ -20,8 +20,10 @@ import android.widget.Spinner; import android.widget.TimePicker; import com.herbron.moodl.Activities.HomeActivity; +import com.herbron.moodl.Activities.RecordTransactionActivity; import com.herbron.moodl.CustomLayouts.CustomRecordFragment; import com.herbron.moodl.DataManagers.CurrencyData.Currency; +import com.herbron.moodl.DataManagers.CurrencyData.Transaction; import com.herbron.moodl.DataManagers.DatabaseManager; import com.herbron.moodl.DataManagers.ExchangeManager.Exchange; import com.herbron.moodl.DataManagers.InfoAPIManagers.Pair; @@ -58,6 +60,9 @@ public class BuyFragment extends CustomRecordFragment { private static Currency fragmentCurrency; private static Exchange fragmentExchange; private static Pair fragmentPair; + private List symbolStrings; + + private int transactionId; @Nullable @Override @@ -73,9 +78,39 @@ public class BuyFragment extends CustomRecordFragment { initializeViewElements(); + checkCallingIntent(); + return view; } + private void checkCallingIntent() + { + Intent intent = getActivity().getIntent(); + transactionId = intent.getIntExtra("transactionId", -1); + + if(transactionId != -1) + { + DatabaseManager databaseManager = new DatabaseManager(context); + Transaction transaction = databaseManager.getCurrencyTransactionById(transactionId); + + if(transaction.getType().equals("b")) + { + fillFields(transaction); + } + } + } + + private void fillFields(Transaction transaction) + { + amoutEditText.setText(String.valueOf(transaction.getAmount())); + buyPriceEditText.setText(String.valueOf(transaction.getPurchasePrice())); + calendar.setTimeInMillis(transaction.getTimestamp()); + buyDateEditText.setText(sdf.format(calendar.getTime())); + totalValueEditText.setText(String.valueOf(transaction.getAmount() * transaction.getPurchasePrice())); + fees_editText.setText(String.valueOf(transaction.getFees())); + note_editText.setText(transaction.getNote()); + } + private void initializeViewElements() { totalValueEditText = view.findViewById(R.id.totalValue_editText); @@ -141,34 +176,58 @@ public class BuyFragment extends CustomRecordFragment { if(isFieldCorrectlyFilled(amoutEditText, true) && isFieldCorrectlyFilled(buyPriceEditText, true) && isFieldCorrectlyFilled(totalValueEditText, true)) { double amount = Double.parseDouble(amoutEditText.getText().toString()); - double purchasedPrice = Double.parseDouble(buyPriceEditText.getText().toString()); + double purchasePrice = Double.parseDouble(buyPriceEditText.getText().toString()); double fees; + String feeCurrency; - if(fees_editText.getText().toString().equals("")) + if(feesCurrencySpinner.getSelectedItemPosition() < 1) { - fees = 0; + feeCurrency = fragmentPair.getFrom(); } else { - fees = Double.parseDouble(fees_editText.getText().toString()); + feeCurrency = fragmentPair.getTo(); } + fees = getFees(feeCurrency, amount, purchasePrice); + String note = note_editText.getText().toString(); DatabaseManager databaseManager = new DatabaseManager(getContext()); - databaseManager.addTransaction(fragmentCurrency.getSymbol() - , amount - , calendar.getTime() - , purchasedPrice - , fees - , note - , fragmentPair.getFrom().equals(fragmentCurrency.getSymbol()) ? fragmentPair.getTo() : fragmentPair.getFrom()); - preferenceManager.setMustUpdateSummary(true); - Intent intent = new Intent(getActivity(), HomeActivity.class); - intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); - startActivity(intent); + + if(transactionId == -1) + { + databaseManager.addTransaction(fragmentCurrency.getSymbol() + , amount + , calendar.getTime() + , purchasePrice + , fees + , note + , fragmentPair.getFrom().equals(fragmentCurrency.getSymbol()) ? fragmentPair.getTo() : fragmentPair.getFrom() + , feeCurrency + , fragmentExchange.getName() + , "b"); + + Intent intent = new Intent(getActivity(), HomeActivity.class); + intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); + startActivity(intent); + } + else + { + databaseManager.updateTransactionWithId(transactionId + , amount + , calendar.getTime() + , purchasePrice + , fees + , note + , fragmentPair.getFrom().equals(fragmentCurrency.getSymbol()) ? fragmentPair.getTo() : fragmentPair.getFrom() + , feeCurrency + , fragmentExchange.getName() + , "b"); + } + getActivity().finish(); } } @@ -178,6 +237,34 @@ public class BuyFragment extends CustomRecordFragment { note_editText = view.findViewById(R.id.note_editText); } + private double getFees(String feeCurrency, double amount, double purchasedPrice) + { + double fees; + + if(fees_editText.getText().toString().equals("")) + { + fees = 0; + } + else + { + fees = Double.parseDouble(fees_editText.getText().toString()); + + if(feesCurrencySpinner.getSelectedItemPosition() % 2 == 0) + { + if(fragmentCurrency.getSymbol().equals(feeCurrency)) + { + fees = amount * fees / 100; + } + else + { + fees = purchasedPrice * fees / 100; + } + } + } + + return fees; + } + private boolean isFieldCorrectlyFilled(TextInputEditText editText, boolean displayError) { String purchasedPriceText = editText.getText().toString(); @@ -210,7 +297,7 @@ public class BuyFragment extends CustomRecordFragment { private void updateAdapter() { - List symbolStrings = new ArrayList<>(); + symbolStrings = new ArrayList<>(); symbolStrings.addAll(PlaceholderManager.getFeeOptionsForSymbol(fragmentPair.getFrom(), getSecureContext())); symbolStrings.addAll(PlaceholderManager.getFeeOptionsForSymbol(fragmentPair.getTo(), getSecureContext())); diff --git a/app/src/main/java/com/herbron/moodl/CustomAdapters/TransactionListAdapter.java b/app/src/main/java/com/herbron/moodl/CustomAdapters/TransactionListAdapter.java index d37bc0c..f196abc 100644 --- a/app/src/main/java/com/herbron/moodl/CustomAdapters/TransactionListAdapter.java +++ b/app/src/main/java/com/herbron/moodl/CustomAdapters/TransactionListAdapter.java @@ -55,7 +55,7 @@ public class TransactionListAdapter extends ArrayAdapter { TextView dateTxtView = convertView.findViewById(R.id.purchaseDate); amountTxtView.setText(String.valueOf(transaction.getAmount())); - valueTxtView.setText(numberConformer(transaction.getPurchasedPrice() * transaction.getAmount())); + valueTxtView.setText(numberConformer(transaction.getPurchasePrice() * transaction.getAmount())); dateTxtView.setText(getDateFromTimestamp(transaction.getTimestamp())); LinearLayout deleteLayout = convertView.findViewById(R.id.deleteTransactionLayout); diff --git a/app/src/main/java/com/herbron/moodl/DataManagers/CurrencyData/Transaction.java b/app/src/main/java/com/herbron/moodl/DataManagers/CurrencyData/Transaction.java index f458478..f6a1172 100644 --- a/app/src/main/java/com/herbron/moodl/DataManagers/CurrencyData/Transaction.java +++ b/app/src/main/java/com/herbron/moodl/DataManagers/CurrencyData/Transaction.java @@ -10,18 +10,29 @@ public class Transaction { private String symbol; private double amount; private long timestamp; - private double purchasedPrice; + private double purchasePrice; private double fees; - private boolean isMined; + private String note; + private String symPair; + private String feeCurrency; + private String source; + private String destination; + private String type; - public Transaction(int transactionId, String symbol, double amount, long timestamp, double purchasedPrice, double fees) + public Transaction(int transactionId, String symbol, String symPair, double amount, long timestamp, double purchasedPrice, double fees, String note, String feeCurrency, String source, String destination, String type) { this.transactionId = transactionId; this.symbol = symbol; + this.symPair = symPair; this.amount = amount; this.timestamp = timestamp; - this.purchasedPrice = purchasedPrice; + this.purchasePrice = purchasedPrice; this.fees = fees; + this.note = note; + this.feeCurrency = feeCurrency; + this.source = source; + this.destination = destination; + this.type = type; } public int getTransactionId() { @@ -53,14 +64,14 @@ public class Transaction { this.amount = amount; } - public void setPurchasedPrice(double purchasedPrice) + public void setPurchasePrice(double purchasedPrice) { - this.purchasedPrice = purchasedPrice; + this.purchasePrice = purchasedPrice; } - public double getPurchasedPrice() + public double getPurchasePrice() { - return purchasedPrice; + return purchasePrice; } public double getFees() { @@ -70,4 +81,56 @@ public class Transaction { public void setFees(double fees) { this.fees = fees; } + + public void setTimestamp(long timestamp) { + this.timestamp = timestamp; + } + + public String getNote() { + return note; + } + + public void setNote(String note) { + this.note = note; + } + + public String getSymPair() { + return symPair; + } + + public void setSymPair(String symPair) { + this.symPair = symPair; + } + + public String getFeeCurrency() { + return feeCurrency; + } + + public void setFeeCurrency(String feeCurrency) { + this.feeCurrency = feeCurrency; + } + + public String getSource() { + return source; + } + + public void setSource(String source) { + this.source = source; + } + + public String getDestination() { + return destination; + } + + public void setDestination(String destination) { + this.destination = destination; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } } diff --git a/app/src/main/java/com/herbron/moodl/DataManagers/DatabaseManager.java b/app/src/main/java/com/herbron/moodl/DataManagers/DatabaseManager.java index 0d0f585..1c6d791 100644 --- a/app/src/main/java/com/herbron/moodl/DataManagers/DatabaseManager.java +++ b/app/src/main/java/com/herbron/moodl/DataManagers/DatabaseManager.java @@ -27,7 +27,7 @@ import java.util.List; public class DatabaseManager extends SQLiteOpenHelper{ - private static final int DATABASE_VERSION = 14; + private static final int DATABASE_VERSION = 15; private static final String DATABASE_NAME = "mdn.db"; @@ -46,6 +46,7 @@ public class DatabaseManager extends SQLiteOpenHelper{ private static final String KEY_TRANSACTION_FEES = "fees"; private static final String KEY_TRANSACTION_FEE_CURRENCY = "feeCurrency"; private static final String KEY_TRANSACTION_NOTES = "notes"; + private static final String KEY_TRANSACTION_TYPE = "transactionType"; private static final String KEY_EXCHANGE_ID = "idExchange"; private static final String KEY_EXCHANGE_NAME = "name"; @@ -82,7 +83,8 @@ public class DatabaseManager extends SQLiteOpenHelper{ + KEY_TRANSACTION_PAIR + " VARCHAR(4)," + KEY_TRANSACTION_FEE_CURRENCY + " VARCHAR(4)," + KEY_TRANSACTION_SOURCE + " TEXT," - + KEY_TRANSACTION_DESTINATION + " TEXT" + + KEY_TRANSACTION_DESTINATION + " TEXT," + + KEY_TRANSACTION_TYPE + " VARCHAR(1)" + ");"); db.execSQL("CREATE TABLE IF NOT EXISTS " + TABLE_EXCHANGE_KEYS + "(" @@ -146,7 +148,26 @@ public class DatabaseManager extends SQLiteOpenHelper{ return false; } - public void addTransaction(String symbol, Double amount, Date date, Double purchasedPrice, Double fees, String note, String symbolFrom, String feeCurrency, String exchange) + public void updateTransactionWithId(int transactionId, double amount, Date date, double purchasedPrice, double fees, String note, String symbolFrom, String feeCurrency, String exchange, String type) + { + SQLiteDatabase db = this.getWritableDatabase(); + ContentValues cv = new ContentValues(); + + cv.put(KEY_TRANSACTION_AMOUNT, amount); + cv.put(KEY_TRANSACTION_DATE, date.getTime()); + cv.put(KEY_TRANSACTION_PURCHASE_PRICE, purchasedPrice); + cv.put(KEY_TRANSACTION_FEES, fees); + cv.put(KEY_TRANSACTION_NOTES, note); + cv.put(KEY_TRANSACTION_PAIR, symbolFrom); + cv.put(KEY_TRANSACTION_FEE_CURRENCY, feeCurrency); + cv.put(KEY_TRANSACTION_SOURCE, exchange); + cv.put(KEY_TRANSACTION_TYPE, type); + + db.update(TABLE_MANUAL_TRANSACTIONS, cv, KEY_TRANSACTION_ID + "=" + transactionId, null); + + } + + public void addTransaction(String symbol, Double amount, Date date, Double purchasePrice, double fees, String note, String symbolFrom, String feeCurrency, String exchange, String type) { SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); @@ -154,12 +175,13 @@ public class DatabaseManager extends SQLiteOpenHelper{ values.put(KEY_TRANSACTION_SYMBOL, symbol); values.put(KEY_TRANSACTION_AMOUNT, amount); values.put(KEY_TRANSACTION_DATE, date.getTime()); - values.put(KEY_TRANSACTION_PURCHASE_PRICE, purchasedPrice); + values.put(KEY_TRANSACTION_PURCHASE_PRICE, purchasePrice); values.put(KEY_TRANSACTION_FEES, fees); values.put(KEY_TRANSACTION_NOTES, note); values.put(KEY_TRANSACTION_PAIR, symbolFrom); values.put(KEY_TRANSACTION_FEE_CURRENCY, feeCurrency); values.put(KEY_TRANSACTION_SOURCE, exchange); + values.put(KEY_TRANSACTION_TYPE, type); db.insert(TABLE_MANUAL_TRANSACTIONS, null, values); db.close(); @@ -529,20 +551,6 @@ public class DatabaseManager extends SQLiteOpenHelper{ return currencyList; } - public void updateTransactionWithId(int transactionId, double amount, Date time, double purchasedPrice, double fees) - { - SQLiteDatabase db = this.getWritableDatabase(); - ContentValues cv = new ContentValues(); - - cv.put(KEY_TRANSACTION_AMOUNT, amount); - cv.put(KEY_TRANSACTION_DATE, time.getTime()); - cv.put(KEY_TRANSACTION_PURCHASE_PRICE, purchasedPrice); - cv.put(KEY_TRANSACTION_FEES, fees); - - db.update(TABLE_MANUAL_TRANSACTIONS, cv, KEY_TRANSACTION_ID + "=" + transactionId, null); - - } - public Transaction getCurrencyTransactionById(int id) { String searchQuerry = "SELECT * FROM " + TABLE_MANUAL_TRANSACTIONS + " WHERE " + KEY_TRANSACTION_ID + "='" + id + "'"; @@ -555,10 +563,16 @@ public class DatabaseManager extends SQLiteOpenHelper{ { transaction = new Transaction(resultatList.getInt(resultatList.getColumnIndex(KEY_TRANSACTION_ID)) , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_SYMBOL)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_PAIR)) , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_AMOUNT)) , resultatList.getLong(resultatList.getColumnIndex(KEY_TRANSACTION_DATE)) , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_PURCHASE_PRICE)) - , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_FEES))); + , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_FEES)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_NOTES)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_FEE_CURRENCY)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_SOURCE)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_DESTINATION)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_TYPE))); } resultatList.close(); @@ -580,10 +594,16 @@ public class DatabaseManager extends SQLiteOpenHelper{ { transactionList.add(new Transaction(resultatList.getInt(resultatList.getColumnIndex(KEY_TRANSACTION_ID)) , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_SYMBOL)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_PAIR)) , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_AMOUNT)) , resultatList.getLong(resultatList.getColumnIndex(KEY_TRANSACTION_DATE)) - , resultatList.getLong(resultatList.getColumnIndex(KEY_TRANSACTION_PURCHASE_PRICE)) - , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_FEES)))); + , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_PURCHASE_PRICE)) + , resultatList.getDouble(resultatList.getColumnIndex(KEY_TRANSACTION_FEES)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_NOTES)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_FEE_CURRENCY)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_SOURCE)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_DESTINATION)) + , resultatList.getString(resultatList.getColumnIndex(KEY_TRANSACTION_TYPE)))); } resultatList.close();