Skip to content

Commit

Permalink
Merge branch 'Verzweiflung'
Browse files Browse the repository at this point in the history
  • Loading branch information
Marc432341 committed May 16, 2021
2 parents ac9e145 + b13253b commit ac21e3d
Show file tree
Hide file tree
Showing 25 changed files with 694 additions and 295 deletions.
2 changes: 1 addition & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
</intent-filter>
</activity>
<activity android:name=".SingleStockOverview"/>
<activity android:name=".Impressum"/>
<activity android:name=".SingleStockOverviewDepot"/>
</application>

</manifest>
49 changes: 13 additions & 36 deletions app/src/main/java/com/example/dhapp/DbManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,18 @@
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;


public class DbManager extends SQLiteOpenHelper {

static SQLiteDatabase db;


public DbManager(Context context) {
super(context,
"stockDB.db",
null,
1);
db=getWritableDatabase();
db = getWritableDatabase();
}

@Override
Expand All @@ -44,59 +42,38 @@ public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE INDEX history_index ON history(name)");


} catch (SQLException e) { e.printStackTrace();}
} catch (SQLException e) {
e.printStackTrace();
}
}

public void addDepotElement(String elementName, String elementSymbol, String elementOpen, String elementChange){
public void addDepotElement(String elementName, String elementSymbol, String elementOpen, String elementChange) {
db.execSQL("INSERT INTO depot (name, symbol, open, change) VALUES ('" + elementName + "', '" + elementSymbol + "', '" + elementOpen + "', '" + elementChange + "')");
}

//TODO: SQL-Statement nicht erfolgreich, Aufruf scheint aber richtig zu sein
public void deleteDepotElement(String name) {
db.execSQL("DELETE FROM depot WHERE name = '" + name + "'");
}

public void addHistoryElement(String historyName) {
db.execSQL("INSERT INTO history (name) VALUES ('" + historyName + "')");
}

public void deleteHistoryElement(String historyverlauf) {
db.execSQL("DELETE FROM history WHERE name = '" + historyverlauf + "'");
db.execSQL("DELETE FROM history WHERE historyID IN (SELECT historyID FROM history WHERE name = '" + historyverlauf + "' LIMIT 1)");
}

public String[] outputStock() throws SQLException {

SQLiteDatabase db = getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT valueID, symb, value " +
" FROM value " +
" ORDER BY valueID ASC",
null);

int resultLines = cursor.getCount();
if (resultLines == 0) {
return new String[]{};
}

String[] resultStrings = new String[resultLines];
int counter = 0;
for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {

resultStrings[counter] = cursor.getString(0);
counter++;
}

cursor.close();

return resultStrings;
}


@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//leer
}

public String[] getElements(String ColumnName, String TableName) {
db = getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT "+ ColumnName + " FROM " + TableName, null);
if (TableName.equals("depot")){
cursor = db.rawQuery("SELECT DISTINCT "+ ColumnName + " FROM " + TableName, null);
Cursor cursor = db.rawQuery("SELECT " + ColumnName + " FROM " + TableName, null);
if (TableName.equals("depot")) {
cursor = db.rawQuery("SELECT DISTINCT " + ColumnName + " FROM " + TableName, null);
}
int amountResultRows = cursor.getCount();
if (amountResultRows == 0) {
Expand Down
19 changes: 9 additions & 10 deletions app/src/main/java/com/example/dhapp/DepotFragment.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.example.dhapp;

import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
Expand All @@ -12,49 +11,49 @@
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;


public class DepotFragment extends Fragment {

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_depot, container, false);

}

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);


try {

RecyclerView recyclerView;


String[] ArrayName;
String[] ArrayValue;
String[] ArrayChange;
String[] ArraySymbol;

String columnName = "name";
String columnValue = "open";
String columnChange = "change";
String tableName = "depot";
String symbol = "symbol";

DbManager dbManager = new DbManager(getActivity());


ArraySymbol = dbManager.getElements(symbol, tableName);
ArrayName = dbManager.getElements(columnName, tableName);
ArrayValue = dbManager.getElements(columnValue, tableName);
ArrayChange= dbManager.getElements(columnChange, tableName);
ArrayChange = dbManager.getElements(columnChange, tableName);

recyclerView = view.findViewById(R.id.RecyclerViewDepot);

MyAdapterDepot myAdapterDepot = new MyAdapterDepot(requireContext(), ArrayName, ArrayValue, ArrayChange);
MyAdapterDepot myAdapterDepot = new MyAdapterDepot(requireContext(), ArrayName, ArrayValue, ArrayChange, ArraySymbol);
recyclerView.setAdapter(myAdapterDepot);
recyclerView.setLayoutManager(new LinearLayoutManager(requireContext()));


} catch (Exception e) {e.printStackTrace();}
} catch (Exception e) {
e.printStackTrace();
}
}

}
6 changes: 3 additions & 3 deletions app/src/main/java/com/example/dhapp/HistoryFragment.java
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
package com.example.dhapp;

import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;

import androidx.annotation.NonNull;
Expand Down Expand Up @@ -51,7 +49,9 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
recyclerView.setAdapter(myAdapterHistory);
recyclerView.setLayoutManager(new LinearLayoutManager(requireContext()));

} catch (Exception e) {e.printStackTrace();}
} catch (Exception e) {
e.printStackTrace();
}
}

}
83 changes: 37 additions & 46 deletions app/src/main/java/com/example/dhapp/MainActivity.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
package com.example.dhapp;

import android.os.Bundle;
import android.view.MenuItem;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;

Expand All @@ -18,20 +16,16 @@
import java.net.HttpURLConnection;
import java.net.URL;

public class MainActivity extends AppCompatActivity {
public class MainActivity extends AppCompatActivity {


public TextView showStockName;
private static String url="http://api.marketstack.com/v1/eod?access_key=86a7719f8f68bb10f9cbef8614745331&symbols=";
private static String apiURLName;
private DbManager _datenbankManager;

@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
_datenbankManager = new DbManager(this);
BottomNavigationView bottomNav = findViewById(R.id.bottom_navigation);
bottomNav.setOnNavigationItemSelectedListener(navListener);

Expand All @@ -45,88 +39,85 @@ protected void onCreate(Bundle savedInstanceState) {

}

private BottomNavigationView.OnNavigationItemSelectedListener navListener = new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
Fragment selectedFragment = null;

switch (item.getItemId()) {
case R.id.nav_depot:
selectedFragment = new DepotFragment();
break;
case R.id.nav_search:
selectedFragment = new SearchFragment();
break;
case R.id.nav_impressum:
selectedFragment = new HistoryFragment();
break;
}

getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, selectedFragment).commit();
return true;
private BottomNavigationView.OnNavigationItemSelectedListener navListener = item -> {
Fragment selectedFragment = null;

switch (item.getItemId()) {
case R.id.nav_depot:
selectedFragment = new DepotFragment();
break;
case R.id.nav_search:
selectedFragment = new SearchFragment();
break;
case R.id.nav_history:
selectedFragment = new HistoryFragment();
break;
}
};

getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, selectedFragment).commit();
return true;
};

protected JSONObject getStockInformation(String symbol) throws Exception {
URL link = null;
HttpURLConnection conn = null;
String object="";
JSONObject answer = null;
URL link;
HttpURLConnection conn;
String object = "";
JSONObject answer;
symbol.toUpperCase();

link = new URL(url+symbol);
String url = "http://api.marketstack.com/v1/eod?access_key=86a7719f8f68bb10f9cbef8614745331&symbols=";
link = new URL(url + symbol);
conn = (HttpURLConnection) link.openConnection();
conn.setRequestMethod("GET");

if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
String errorMessage = "HTTP-Fehler: " + conn.getResponseMessage();
throw new Exception(errorMessage);
} else{
} else {
InputStream is = conn.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader reader = new BufferedReader(isr);

String line = "";
while ((line = reader.readLine())!=null){
String line;
while ((line = reader.readLine()) != null) {
object += line;
}
answer=parseJSON(object);
answer = parseJSON(object);
}
conn.disconnect();
return answer;
}

protected JSONObject getStockNameInformation(String ISIN) throws Exception {
URL link = null;
HttpURLConnection conn = null;
String object="";
JSONObject answer = null;
URL link;
HttpURLConnection conn;
String object = "";
JSONObject answer;

apiURLName = "http://api.marketstack.com/v1/tickers/"+ ISIN + "?access_key=86a7719f8f68bb10f9cbef8614745331";
String apiURLName = "http://api.marketstack.com/v1/tickers/" + ISIN + "?access_key=86a7719f8f68bb10f9cbef8614745331";
link = new URL(apiURLName);
conn = (HttpURLConnection) link.openConnection();
conn.setRequestMethod("GET");

if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
String errorMessage = "HTTP-Fehler: " + conn.getResponseMessage();
throw new Exception(errorMessage);
} else{
} else {
InputStream is = conn.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader reader = new BufferedReader(isr);

String line = "";
while ((line = reader.readLine())!=null){
String line;
while ((line = reader.readLine()) != null) {
object += line;
}
answer=parseJSON(object);
answer = parseJSON(object);
}
conn.disconnect();
return answer;
}

protected JSONObject parseJSON (String json) throws Exception{
protected JSONObject parseJSON(String json) throws Exception {
JSONObject jsonObject = new JSONObject(json);
return jsonObject;
}
Expand Down
Loading

0 comments on commit ac21e3d

Please sign in to comment.