From 27736bced64564e19fd19fe8b507105fcd43bc44 Mon Sep 17 00:00:00 2001
From: joonatan <joonatan.a.nikkila@student.jyu.fi>
Date: Mon, 22 Apr 2024 17:27:34 +0300
Subject: [PATCH] =?UTF-8?q?rating=20j=C3=A4rjestelm=C3=A4=20tehty?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Ottelutiedot                                 |  7 +++-
 Pelaajatiedot                                | 18 ++++-----
 src/HT/fx/Karkelot.java                      | 38 ++++++++++++------
 src/HT/fx/Ottelu.java                        | 41 --------------------
 src/HT/fx/OtteluIkkunaGUIController.java     |  4 +-
 src/HT/fx/Ottelut.java                       |  6 +--
 src/HT/fx/PadelLisaaOtteluGUIController.java |  6 ++-
 src/HT/fx/PadelMainGUIController.java        | 13 ++-----
 src/HT/fx/PadelMainMain.java                 |  2 +
 src/HT/fx/Pelaaja.java                       |  7 +++-
 src/HT/fx/Pelaajat.java                      |  2 -
 11 files changed, 61 insertions(+), 83 deletions(-)

diff --git a/Ottelutiedot b/Ottelutiedot
index 69eeef3..931d425 100644
--- a/Ottelutiedot
+++ b/Ottelutiedot
@@ -2,5 +2,8 @@
 2|3|1|5|2|5|2|2024-04-09|6-0
 3|2|3|4|5|4|5|2024-04-01|6-0
 4|1|2|6|4|1|2|2024-04-08|6-4, 7-5
-5|2|6|4|3|2|6|2024-02-12|6-2, 4-6,  6-0
-6|4|6|2|3|4|6|2024-01-08|5-7, 5- 7
+5|2|6|4|3|2|6|2024-02-12|6-2, 4-6, 6-0
+6|4|6|2|3|4|6|2024-01-08|5-7, 5-7
+7|2|3|7|9|2|3|2024-02-26|6-0, 6-4
+8|2|4|1|3|1|3|2024-04-05|6-4
+9|2|5|8|9|2|5|2024-03-04|6-3, 6-2
diff --git a/Pelaajatiedot b/Pelaajatiedot
index 8de6e33..182191e 100644
--- a/Pelaajatiedot
+++ b/Pelaajatiedot
@@ -1,9 +1,9 @@
-1|Rasse|2002-04-01|1000|rasse@gmail.com|1
-2|Joonatan|1998-02-24|1000|joonatan@gmail.com|1
-3|Tommi|2002-04-01|1000|tommi@gmail.com|0
-4|Riku|2001-04-01|1000|riku@gmail.com|0
-5|Jussi|2003-04-01|1000|jussi@luukku.fi|1
-6|Tuomas|2002-03-27|1000|tuomas@luukku.fi|0
-7|Levy|2002-04-06|1000|levy@edu.muurame.fi|1
-8|Pepe|1996-09-03|1000|pepe@ilomantsinponnistus.fi|1
-9|Samu|2002-09-10|1000|samu@padelx.com|0
+1|Rasse|2002-04-01|1010|rasse@gmail.com|1
+2|Joonatan|1998-02-24|1030|joonatan@gmail.com|1
+3|Tommi|2002-04-01|970|tommi@gmail.com|0
+4|Riku|2001-04-01|980|riku@gmail.com|0
+5|Jussi|2003-04-01|1030|jussi@luukku.fi|1
+6|Tuomas|2002-03-27|1020|tuomas@luukku.fi|0
+7|Levy|2002-04-06|990|levy@edu.muurame.fi|1
+8|Pepe|1996-09-03|990|pepe@ilomantsinponnistus.fi|1
+9|Samu|2002-09-10|980|samu@padelx.com|0
diff --git a/src/HT/fx/Karkelot.java b/src/HT/fx/Karkelot.java
index d10f4ac..ec67177 100644
--- a/src/HT/fx/Karkelot.java
+++ b/src/HT/fx/Karkelot.java
@@ -74,13 +74,38 @@ public class Karkelot {
     }
     
     /**
-     * Hakee i:nnen ottelun ottelut oliolta
-     * @return ottelun
+     * Hakee kaikki ottelut
+     * @return ottelut
      */
     public List<Ottelu> noudaOttelut() {
         return ottelut.haeOttelut();
     }
     
+    public void paivitaRankingit() {
+        int n = 1;
+        while(n<getPelaajia()) {
+            annaPelaaja(n).setRating(1000);
+            n++;
+        }
+        
+        for(Ottelu ottelu : ottelut) {
+            int v1 = ottelu.getVoittajaNro1();
+            int v2 = ottelu.getVoittajaNro2();
+            annaPelaaja(v1).setRating(annaPelaaja(v1).getRating()+10);
+            annaPelaaja(v2).setRating(annaPelaaja(v2).getRating()+10);
+            
+            int numerot[] = ottelu.getPelaajaNrot();
+            int i = 0;
+            while(i<4) {
+                if(numerot[i] != v1 && numerot[i] != v2) {
+                    annaPelaaja(numerot[i]).setRating(annaPelaaja(numerot[i]).getRating()-10);
+                }
+                i++;
+            }
+        }
+            
+    }
+    
     
     /**
      * Lukee  tiedot tiedostosta
@@ -136,13 +161,4 @@ public class Karkelot {
             System.out.println(ex.getMessage());
         }
     }
-
-
-
-
-
-
-
-
-
 }
diff --git a/src/HT/fx/Ottelu.java b/src/HT/fx/Ottelu.java
index e8839c6..a5b9d10 100644
--- a/src/HT/fx/Ottelu.java
+++ b/src/HT/fx/Ottelu.java
@@ -138,47 +138,6 @@ public class Ottelu {
         return numerot;
     }
     
-  
-    
-    /**
-     * Palautetaan ensimmäisen osallistujan numero
-     * @return pelaajan id
-     */
-    /*
-    public int getPelaajaNro1() {
-        return pelaajaNro1;
-    }
-    */
-    
-    /**
-     * Palautetaan toisen osallistujan numero
-     * @return pelaajan id
-     */
-    /*
-    public int getPelaajaNro2() {
-        return pelaajaNro2;
-    }
-    */
-    
-    /**
-     * Palautetaan kolmannen osallistujan numero
-     * @return pelaajan id
-     */
-    /*
-    public int getPelaajaNro3() {
-        return pelaajaNro3;
-    }
-    */
-    
-    /**
-     * Palautetaan neljännen osallistujan numero
-     * @return pelaajan id
-     */
-    /*
-    public int getPelaajaNro4() {
-        return pelaajaNro4;
-    }
-    */
     
     /**
      * Palautetaan ensimmäisen voittajan numero
diff --git a/src/HT/fx/OtteluIkkunaGUIController.java b/src/HT/fx/OtteluIkkunaGUIController.java
index 2f9a5cb..45ac2d5 100644
--- a/src/HT/fx/OtteluIkkunaGUIController.java
+++ b/src/HT/fx/OtteluIkkunaGUIController.java
@@ -61,8 +61,8 @@ public class OtteluIkkunaGUIController implements ModalControllerInterface<Strin
         SyotaTulos();
     }
     
-    @FXML void handleHaeTiedot(MouseEvent event) throws SailoException {
-        PadelMainGUIController.getKarkelo().lueTiedostosta("Ottelutiedot", 2);
+    @FXML void handleHaeTiedot(MouseEvent event) {
+        //PadelMainGUIController.getKarkelo().lueTiedostosta("Ottelutiedot", 2);
         int i = 0;
         while ( i<PadelMainGUIController.getKarkelo().noudaOttelut().size()) {
             
diff --git a/src/HT/fx/Ottelut.java b/src/HT/fx/Ottelut.java
index b2ae41c..191060e 100644
--- a/src/HT/fx/Ottelut.java
+++ b/src/HT/fx/Ottelut.java
@@ -49,9 +49,9 @@ public class Ottelut implements Iterable<Ottelu> {
     }
     
     /**
-     * Luo listan otteluista jotta saadaan palautettua yksi ottelu. 
-     * Ominaisuus saattaa jäädä turhaksi myöhemmin
-     * @return ottelut
+     * Luo listan otteluista joka palautetaan
+     * 
+     * @return Lista kaikista otteluista
      */
     public List<Ottelu> haeOttelut() {
         List<Ottelu> loydetyt = new ArrayList<Ottelu>();
diff --git a/src/HT/fx/PadelLisaaOtteluGUIController.java b/src/HT/fx/PadelLisaaOtteluGUIController.java
index d49d021..ddbaf4f 100644
--- a/src/HT/fx/PadelLisaaOtteluGUIController.java
+++ b/src/HT/fx/PadelLisaaOtteluGUIController.java
@@ -89,8 +89,10 @@ public class PadelLisaaOtteluGUIController implements ModalControllerInterface<S
 
         
         Ottelu uusi = new Ottelu(otteluPvm.getValue(), PelaajaNro1, PelaajaNro2, PelaajaNro3, PelaajaNro4, VoittajaNro1, VoittajaNro2, lopputulos);
-        //uusi.vastaaAkuAnkka();
-        PadelMainGUIController.LisaaOttelu(uusi); // lisää pelaajan karkeloon
+        
+        PadelMainGUIController.LisaaOttelu(uusi); // lisää ottelun karkeloon
+        
+        PadelMainGUIController.getKarkelo().paivitaRankingit();
     
     }
     
diff --git a/src/HT/fx/PadelMainGUIController.java b/src/HT/fx/PadelMainGUIController.java
index ec01785..0e2c033 100644
--- a/src/HT/fx/PadelMainGUIController.java
+++ b/src/HT/fx/PadelMainGUIController.java
@@ -68,19 +68,11 @@ public class PadelMainGUIController {
         karkelo.talleta();
     }
     
-    @FXML void handleHaeTiedot() throws SailoException {
+    @FXML void handleHaeTiedot() {
         //Lukija("/Users/joonatan/kurssit/ohj2/ht/src/Pelaajatiedot");
         
-        karkelo.lueTiedostosta("Pelaajatiedot", 1);
-        int i = 0;
-        while ( i<karkelo.getPelaajia()) {
-            
-            lisaakentat();
-            i++;
-            
-        }
-        syotatiedot();
         
+        syotatiedot();
     }
     
     @FXML private void lisaatekstikentta(VBox boksi) {
@@ -138,6 +130,7 @@ public class PadelMainGUIController {
      * Syöttää tiedot tekstikenttiin
      */
     public void syotatiedot() {
+        
         int i = 1;
         int j = 1;
         int k = 1;
diff --git a/src/HT/fx/PadelMainMain.java b/src/HT/fx/PadelMainMain.java
index c9dd596..86893e4 100644
--- a/src/HT/fx/PadelMainMain.java
+++ b/src/HT/fx/PadelMainMain.java
@@ -30,6 +30,8 @@ public class PadelMainMain extends Application {
             
             //testataan jos avautuisi pelaajat suoraan
             karkelo.lueTiedostosta("Pelaajatiedot", 1);
+            karkelo.lueTiedostosta("Ottelutiedot", 2);
+
             int i = 0;
             while ( i<karkelo.getPelaajia()) {
                 
diff --git a/src/HT/fx/Pelaaja.java b/src/HT/fx/Pelaaja.java
index a1f6505..6d6c1e7 100644
--- a/src/HT/fx/Pelaaja.java
+++ b/src/HT/fx/Pelaaja.java
@@ -16,7 +16,6 @@ public class Pelaaja {
     private int tunnusnro;
     private String nimi;
     private int rating;
-    //private String syntymaaika; 
     private boolean auto;
     private String sahkoposti; 
     private LocalDate syntymaaika;
@@ -82,6 +81,12 @@ public class Pelaaja {
         if (auto) {out.println("     Pelaajalla on auto. ");}
     }
     
+    public void paivitaRating(int pelaaja, int voittaja1, int voittaja2) {
+        if(pelaaja == voittaja1 || pelaaja == voittaja2) {
+            this.rating = rating+10;
+        }else {this.rating = rating-10;}
+    }
+    
     /**
      * Tulostetaan henkilön tiedot
      * @param os tietovirta johon tulostetaan
diff --git a/src/HT/fx/Pelaajat.java b/src/HT/fx/Pelaajat.java
index 76bfebd..f9d4e7b 100644
--- a/src/HT/fx/Pelaajat.java
+++ b/src/HT/fx/Pelaajat.java
@@ -83,8 +83,6 @@ public class Pelaajat {
     }
     
     
-    
-    
     /**
      * Lukee pelaajiston tiedostosta.  Ei toimi.
      * @param tiedosto tiedoston hakemisto
-- 
GitLab