Skip to content
Snippets Groups Projects
Commit 4cb7d41a authored by Fabio Heyming's avatar Fabio Heyming
Browse files

Added persistance

parent d2b43960
Branches
No related tags found
1 merge request!1Mal aufn Master megren
package com.example.mampfmobil.ui.Classes;
import android.content.Context;
import android.util.Log;
import com.example.mampfmobil.R;
import com.example.mampfmobil.ui.MampfMobil;
......@@ -51,6 +52,22 @@ public class Bestellung {
id = idCounter;
idCounter++;
}
public Bestellung(int id,Supplier supplier, Boolean delivery,String state,Customer costumer, int delivererID){
bestellungsTeile = new Vector<>();
this.supplier = supplier;
this.state = state ;
this.delivery = delivery;
this.costumer = costumer;
this.id = id;
if(delivererID != 0){
for(Deliverer d: MampfMobil.deliverers){
if(d.id == delivererID) {
this.deliverer = d;
}
}
}
}
public void addBestellungsteil(BestellungsTeil bt){
Boolean notFound = true;
......@@ -63,6 +80,7 @@ public class Bestellung {
if(notFound){
bestellungsTeile.add(bt);
}
}
}
......@@ -36,6 +36,16 @@ public class Customer {
idCounter++;
}
public Customer(int id,String vorname,String nachname,String adresse) {
this.vorname = vorname;
this.nachname = nachname;
this.adresse = adresse;
favoriten = new Vector<>();
shoppingCart = new Vector<>();
bestellungen = new Vector<>();
this.id = id;
}
public void addToShoppingCart(BestellungsTeil bt){
if (shoppingCart == null) {
shoppingCart = new Vector<>();
......
......@@ -16,4 +16,10 @@ public class Deliverer {
id = idCounter;
idCounter++;
}
public Deliverer(int id,String vorname,String nachname,String adresse) {
this.vorname = vorname;
this.nachname = nachname;
this.adresse = adresse;
this.id = id;
}
}
package com.example.mampfmobil.ui.Classes;
import android.util.Log;
public class Item {
public static int idCounter = 1;
public int id;
......@@ -15,4 +17,11 @@ public class Item {
id = idCounter;
idCounter++;
}
public Item(int id,String name, double price,Supplier supplier){
this.name = name;
this.price = price;
this.supplier = supplier;
this.id = id;
}
}
package com.example.mampfmobil.ui.Classes;
import android.util.Log;
public class ShopItem {
public Item item;
public int quantity;
public static int idCounter = 1;
public int id;
public ShopItem(Item item, int quantity){
this.item = item;
this.quantity = quantity;
id = idCounter;
idCounter++;
id = item.id;
}
public ShopItem(int id,Item item, int quantity){
this.item = item;
this.quantity = quantity;
this.id = id;
}
}
package com.example.mampfmobil.ui.Classes;
import android.util.Log;
import java.util.Vector;
public class Supplier {
......@@ -13,15 +15,28 @@ public class Supplier {
public Vector<ShopItem> shopItems = new Vector<>();
public Supplier(String name,String adresse) {
shopItems = new Vector<>();
this.name = name;
this.address = adresse;
id = idCounter;
idCounter++;
}
public Supplier(int id, String name,String adresse) {
shopItems = new Vector<>();
this.name = name;
this.address = adresse;
this.id = id;
}
public void itemAdd(String name,int quantity, double price){
shopItems.add(new ShopItem(new Item(name,price,this),quantity));
}
public void itemAdd(int idItem,String name,int quantity, double price){
shopItems.add(idItem,new ShopItem(idItem,new Item(idItem,name,price,this),quantity));
}
......
......@@ -31,6 +31,10 @@ public class MampfMobil {
public MampfMobil(Context context){
this.context = context;
customers = new Vector<>();
deliverers = new Vector<>();
suppliers = new Vector<>();
takefromPersistance();
if(!isInitialized) {
customers = new Vector<>();
deliverers = new Vector<>();
......@@ -197,7 +201,6 @@ public class MampfMobil {
csvDeliverer = csvDeliverer + d.id +","+ d.vorname +","+ d.nachname +","+ d.adresse + "\n";
}
String fileName = "deliverer.csv";
Log.d("myTag", csvDeliverer);
CSVFileHelper.saveCSVFile(context, fileName, csvDeliverer);
......@@ -207,7 +210,6 @@ public class MampfMobil {
csvSupplier = csvSupplier + s.id +","+ s.name +","+s.address + "\n";
}
String fileName2 = "supplier.csv";
Log.d("myTag", csvSupplier);
CSVFileHelper.saveCSVFile(context, fileName2, csvSupplier);
......@@ -217,7 +219,6 @@ public class MampfMobil {
csvCustomer = csvCustomer + c.id +","+ c.vorname +","+ c.nachname +","+ c.adresse + "\n";
}
String fileName3 = "customer.csv";
Log.d("myTag", csvCustomer);
CSVFileHelper.saveCSVFile(context, fileName3, csvCustomer);
......@@ -230,25 +231,23 @@ public class MampfMobil {
}
}
String fileName4 = "items.csv";
Log.d("myTag", csvItems);
CSVFileHelper.saveCSVFile(context, fileName4, csvItems);
// ID, ITEM-ID, AMOUNT
// ID/ITEM-ID(immer gleich), AMOUNT
String csvShopItems = "";
for(Supplier s:MampfMobil.suppliers){
for(ShopItem sI: s.shopItems){
csvShopItems = csvShopItems + sI.id + "," + sI.item.id + "," + sI.quantity + "\n";
csvShopItems = csvShopItems + sI.id + "," + sI.quantity + "\n";
}
}
String fileName5 = "shopItems.csv";
Log.d("myTag", csvShopItems);
CSVFileHelper.saveCSVFile(context, fileName5, csvShopItems);
// ID,CUSTOMER_ID, DELIVERY(TRUE/FALSE),STATE,DELIVERER-ID(0 when none),SUPPLIER-ID
// ID,CUSTOMER_ID, DELIVERY(TRUE/FALSE),STATE,DELIVERER-ID(0 when none),SUPPLIER-ID,
// bestellungsteil besteht aus ITEM-ID1, QUANTITY1, ITEM-ID2, QUANTITY2, ITEM-ID3, QUANTITY3 .... \n
String csvBestellungen = "";
for(Customer c:MampfMobil.customers){
......@@ -256,15 +255,21 @@ public class MampfMobil {
csvBestellungen = csvBestellungen + b.id + ","+ b.costumer.id+ "," + b.delivery + "," + b.state + ",";
if(b.deliverer == null){
csvBestellungen = csvBestellungen + "0,";
}
else{
csvBestellungen = csvBestellungen + b.deliverer.id + ",";
}
csvBestellungen = csvBestellungen + b.supplier.id + "\n";
csvBestellungen = csvBestellungen + b.supplier.id;
for (BestellungsTeil bT: b.bestellungsTeile){
csvBestellungen = csvBestellungen + bT.item.id + "," + bT.quantity + "\n";
csvBestellungen = csvBestellungen +","+ bT.item.id + "," + bT.quantity ;
}
csvBestellungen = csvBestellungen + "\n";
}
}
String fileName6 = "bestellungen.csv";
......@@ -274,10 +279,181 @@ public class MampfMobil {
}
public static void takefromPersistance(){
String fileName = "data.csv";
public static void takefromPersistance() {
String fileName = "deliverer.csv";
String csvData = CSVFileHelper.loadCSVFile(context, fileName);
Log.d("myTag", "This ONDESTROY");
}
if (csvData != null) {
String[] lines = csvData.split("\n");
for (String line : lines) {
String[] data = line.split(",");
if (data.length >= 4) {
int id = Integer.parseInt(data[0]);
String vorname = data[1];
String nachname = data[2];
String adresse = data[3];
// Verwende die Daten, um den Deliverer-Objekt zu erstellen oder zu aktualisieren
Deliverer deliverer = new Deliverer(id, vorname, nachname, adresse);
// Füge den Deliverer-Objekt deiner Datenstruktur hinzu
MampfMobil.deliverers.add(deliverer);
}
}
}
String fileName2 = "customer.csv";
String csvData2 = CSVFileHelper.loadCSVFile(context, fileName2);
if (csvData2 != null) {
String[] lines = csvData2.split("\n");
for (String line : lines) {
String[] data = line.split(",");
if (data.length >= 4) {
int id = Integer.parseInt(data[0]);
String vorname = data[1];
String nachname = data[2];
String adresse = data[3];
// Verwende die Daten, um den Deliverer-Objekt zu erstellen oder zu aktualisieren
Customer customer = new Customer(id, vorname, nachname, adresse);
// Füge den Deliverer-Objekt deiner Datenstruktur hinzu
MampfMobil.customers.add(customer);
}
}
}
String fileName3 = "supplier.csv";
String csvData3 = CSVFileHelper.loadCSVFile(context, fileName3);
if (csvData3 != null) {
String[] lines = csvData3.split("\n");
for (String line : lines) {
String[] data = line.split(",");
if (data.length >= 3) {
int id = Integer.parseInt(data[0]);
String name = data[1];
String adresse = data[2];
// Verwende die Daten, um den Deliverer-Objekt zu erstellen oder zu aktualisieren
Supplier supplier = new Supplier(id, name, adresse);
// Füge den Deliverer-Objekt deiner Datenstruktur hinzu
MampfMobil.suppliers.add(supplier);
}
}
}
String fileName4 = "items.csv";
String csvData4 = CSVFileHelper.loadCSVFile(context, fileName4);
if (csvData4 != null) {
String[] lines = csvData4.split("\n");
for (String line : lines) {
String[] data = line.split(",");
if (data.length >= 4) {
int itemId = Integer.parseInt(data[0]);
String name = data[1];
double preis = Double.parseDouble(data[2]);
int supplierId = Integer.parseInt(data[3]);
// Verwende die Daten, um den Deliverer-Objekt zu erstellen oder zu aktualisieren
for (Supplier s : MampfMobil.suppliers) {
if (s.id == supplierId) {
Item tempItem = new Item(itemId,name,preis,s);
s.shopItems.add(new ShopItem(itemId,tempItem,0));
//s.itemAdd(itemId, name, 0, preis);
}
}
}
}
}
String fileName5 = "shopItems.csv";
String csvData5 = CSVFileHelper.loadCSVFile(context, fileName5);
if (csvData5 != null) {
String[] lines = csvData5.split("\n");
for (String line : lines) {
String[] data = line.split(",");
if (data.length >= 2) {
int itemId = Integer.parseInt(data[0]);
int quantity = Integer.parseInt(data[1]);
// Verwende die Daten, um den Deliverer-Objekt zu erstellen oder zu aktualisieren
for (Supplier s : MampfMobil.suppliers) {
for (ShopItem sI : s.shopItems) {
if (sI.id == itemId) {
sI.quantity = quantity;
}
}
}
}
}
}
String fileName6 = "bestellungen.csv";
String csvData6 = CSVFileHelper.loadCSVFile(context, fileName6);
Log.d("myTag", csvData6 );
if (csvData6 != null) {
String[] lines = csvData6.split("\n");
for (String line : lines) {
String[] data = line.split(",");
if (data.length >= 6) {
int ID = Integer.parseInt(data[0]);
int customerId = Integer.parseInt(data[1]);
String deliver = data[2];
boolean delivery = false;
if (deliver.equals("true")) {
delivery = true;
}
String state = data[3];
int delivererId = Integer.parseInt(data[4]);
int supplierId = Integer.parseInt(data[5]);
Supplier tempSup = null;
for (Supplier s : MampfMobil.suppliers) {
if (s.id == supplierId) {
tempSup = s;
}
}
Customer tempCus = null;
for (Customer c : MampfMobil.customers) {
if (c.id == customerId) {
tempCus = c;
}
}
Bestellung temp = new Bestellung(ID, tempSup, delivery, state, tempCus, delivererId);
Log.d("myTag", data.length + " lang" );
for (int i = 6; i < data.length; i += 2) {
int ItemId = Integer.parseInt(data[i]);
int quantity = Integer.parseInt(data[i + 1]);
Item tempItem = null;
for (Supplier s : MampfMobil.suppliers) {
for (ShopItem sI : s.shopItems) {
if (sI.id == ItemId) {
tempItem = sI.item;
}
}
}
Log.d("myTag", tempItem.name + quantity);
temp.addBestellungsteil(new BestellungsTeil(tempItem, quantity));
}
tempCus.addBestellung(temp);
}
}
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment