From a267914199ce61ff1e999e5f43bbc25fcd92f837 Mon Sep 17 00:00:00 2001
From: Kasperi Kovanen <kasperi.a.kovanen@utu.fi>
Date: Sun, 9 Mar 2025 17:50:47 +0000
Subject: [PATCH] t2 muutokset

---
 VerkkokauppaIO.java | 80 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 80 insertions(+)

diff --git a/VerkkokauppaIO.java b/VerkkokauppaIO.java
index 7885362..3e76c4a 100644
--- a/VerkkokauppaIO.java
+++ b/VerkkokauppaIO.java
@@ -90,6 +90,37 @@ public class VerkkokauppaIO {
         return new Asiakas(asNro, nimi, ostot);
     }
 
+    public static Myyja parsiMyyja(String data) {
+        String[] tiedot = data.split(VerkkokauppaIO.EROTIN);
+        // Tässä vaiheessa tulee tietää tietojen järjestys
+        String nimi = tiedot[0];
+        String tunniste = tiedot[1];
+        double provisiot = Double.parseDouble(tiedot[2]);
+
+        return new Myyja(nimi, tunniste, provisiot);
+    }
+
+    public static Tuote parsiTuote(String data) {
+        String[] tiedot = data.split(VerkkokauppaIO.EROTIN);
+        // Tässä vaiheessa tulee tietää tietojen järjestys
+        String nimi = tiedot[0];
+        int saldo = Integer.parseInt(tiedot[1]);
+        double hinta = Double.parseDouble(tiedot[2]);
+
+        return new Tuote(nimi, saldo, hinta);
+    }
+
+    public static Ostotapahtuma parsiOstotapahtuma(String data) {
+        String[] tiedot = data.split(VerkkokauppaIO.EROTIN);
+        // Tässä vaiheessa tulee tietää tietojen järjestys
+        Asiakas asiakas = parsiAsiakas(tiedot[0]);
+        Myyja myyja = parsiMyyja(tiedot[1]);
+        Tuote tuote = parsiTuote(tiedot[2]);
+        int maara = Integer.parseInt(tiedot[3]);
+
+        return new Ostotapahtuma(asiakas, myyja, tuote, maara);
+    }
+
     public static KantaAsiakas parsiKantaAsiakas(String data) {
         String[] tiedot = data.split(VerkkokauppaIO.EROTIN);
         // Tässä vaiheessa tulee tietää tietojen järjestys
@@ -125,6 +156,55 @@ public class VerkkokauppaIO {
         return asiakkaat;
     }
 
+    public static ArrayList<Myyja> lueMyyjat(String tiedostonNimi) {
+        ArrayList<Myyja> myyjat = new ArrayList<>();
+        ArrayList<String> data = lueTiedosto(tiedostonNimi);
+        for (String adata : data) {
+
+            Myyja my = parsiMyyja(adata);
+            myyjat.add(my);
+
+
+        }
+        return myyjat;
+    }
+
+    public static void kirjoitaMyyjat(ArrayList<Myyja> myyjalista, String tiedostonNimi) {
+        try (ObjectOutputStream oos =
+                     new ObjectOutputStream(
+                             new FileOutputStream(tiedostonNimi))) {
+            oos.writeObject(myyjalista);
+        } catch (IOException e) {
+            System.out.println("Tapahtui virhe: " + e);
+        }
+    }
+
+    public static ArrayList<Ostotapahtuma> lueOstotapahtumat(String tiedostonNimi) {
+        ArrayList<Ostotapahtuma> ot = new ArrayList<>();
+        ArrayList<String> data = lueTiedosto(tiedostonNimi);
+        for (String adata : data) {
+
+            Ostotapahtuma o = parsiOstotapahtuma(adata);
+            ot.add(o);
+
+
+        }
+        return ot;
+    }
+
+    public static void kirjoitaOstotapahtumat(ArrayList<Ostotapahtuma> ostolista, String tiedostonNimi) {
+        try (ObjectOutputStream oos =
+                     new ObjectOutputStream(
+                             new FileOutputStream(tiedostonNimi))) {
+            oos.writeObject(ostolista);
+        } catch (IOException e) {
+            System.out.println("Tapahtui virhe: " + e);
+        }
+    }
+
+
+
+
     /**
      * Kirjoittaa tuotelistan annetun nimiseen tiedostoon.
      *
-- 
GitLab