diff --git a/varausrekisteri/src/fxVuororekisteri/LisaaMuokkaaVuoroGUIController.java b/varausrekisteri/src/fxVuororekisteri/LisaaMuokkaaVuoroGUIController.java
index 09df7c9dcc15c7381d365b12284f51560ac20baa..46fd15eb23191c5db19a6b8144f6d9de25ffd8c7 100644
--- a/varausrekisteri/src/fxVuororekisteri/LisaaMuokkaaVuoroGUIController.java
+++ b/varausrekisteri/src/fxVuororekisteri/LisaaMuokkaaVuoroGUIController.java
@@ -93,6 +93,30 @@ public class LisaaMuokkaaVuoroGUIController implements ModalControllerInterface<
 
     }
 
+    /**
+     * Tässä tarkistetaan että ei ole tölläistä vuoroa jo olemassa, eikä ajat ole älyttömät ja pitää olla laji olemassa
+     * @return palauttaa true jos menee tarkastuksesta läpi false muuten
+     */
+    public boolean tarkistaVuoro(TextField aika, TextField laji, TextField sijainti, TextField taso) {
+
+        double alkuaika = Double.parseDouble(String.valueOf(textAika.getText()));
+        if ( !(alkuaika >= 0.0 && alkuaika <= 24.0) ) return false;
+
+        Laji laji2 = vuororekisteri.haeLajiVuorolle(textLaji.getText(), textSijainti.getText(), textTaso.getText());
+        if ( laji2 == null ) return false;
+        else {
+            int lajinid = laji2.getId();
+            for (int i = 0; i < vuororekisteri.getVuoroja(); i++) {
+                Vuoro vuoro2 = vuororekisteri.annaVuoro(i);
+                if (vuoro2.getLajiID() == lajinid && vuoro2.getAlkuaika() == alkuaika) {
+                    return false;
+                }
+            }
+        }
+
+        return true;
+    }
+
 
     /**
      * Kun painetaan nappia tallenna niin vuoro rekisteröidään eli sille annetaan id
@@ -106,33 +130,54 @@ public class LisaaMuokkaaVuoroGUIController implements ModalControllerInterface<
 
         if (muokattava == null) {
             this.vuoro = new Vuoro();
-            // vuoro.rekisteroiVuoro();
+
             if (textLaji.getText().isEmpty() || textSijainti.getText().isEmpty() || textTaso.getText().isEmpty() || textAika.getText().isEmpty()) {
-                vuoro.rekisteroiVuoro();
-                vuoro.asetaTesti();
-            } else {
+                if (tarkistaVuoro(aika, laji, sijainti, taso) == false) {
+                    Dialogs.showMessageDialog("tällänen vuoro on jo olemassa");
+                }
+                else {
+                    vuoro.rekisteroiVuoro();
+                    vuoro.asetaTesti();
+                }
+            }
+            else {
                 Laji lajiVuoroon = vuororekisteri.haeLajiVuorolle(textLaji.getText(), textSijainti.getText(), textTaso.getText());
                 if (lajiVuoroon == null) {
                     Dialogs.showMessageDialog("ei ole tuollasta lajia olemassa");
                 } else {
-                    vuoro.rekisteroiVuoro();
-                    vuoro.asetaTesti(lajiVuoroon.getId(), lajiVuoroon.getNimi(), lajiVuoroon.getSijainti(), lajiVuoroon.getTaso(), aika.getText());
+                    if (tarkistaVuoro(aika, laji, sijainti, taso) == false) {
+                        Dialogs.showMessageDialog("Tarkista alkuaika, ethän yrittänyt tehdä jo olemassa olevaa vuoroa");
+                    }
+                    else {
+                        vuoro.rekisteroiVuoro();
+                        vuoro.asetaTesti(lajiVuoroon.getId(), lajiVuoroon.getNimi(), lajiVuoroon.getSijainti(), lajiVuoroon.getTaso(), aika.getText());
+                    }
                 }
 
             }
         }
 
         else {
-            // int vuoroId = Integer.parseInt(Mjonot.erota(muokattava, ' '));
+
+            int n = 0;
             for (int i = 0; i < vuororekisteri.getVuoroja(); i++) {
                 Vuoro vuoro1 = vuororekisteri.annaVuoro(i);
                 if ( vuoro1.getVuoroID() == vuoroId ) {
-                    vuoro1.muokkaaVuoroa(String.valueOf(textAika.getText()));
+                    // Laji laji2 = vuororekisteri.lajiIdPerusteella(vuoro1.getLajiID());
+                    if (tarkistaVuoro(textAika, textLaji, textSijainti, textTaso) == false) {
+                        Dialogs.showMessageDialog("Tälläien vuoro on jo olemassa, valitse joku toinen aika");
+                    }
+                    else {
+                        vuoro1.muokkaaVuoroa(String.valueOf(textAika.getText()));
+                    }
                 }
+
+
             }
 
-        }
 
+        }
+        // Dialogs.showMessageDialog("Tälläien vuoro on jo olemassa, valitse joku toinen aika");
         ModalController.closeStage(buttonTallenna);
     }
 
diff --git a/varausrekisteri/src/vuororekisteri/Vuorot.java b/varausrekisteri/src/vuororekisteri/Vuorot.java
index df21cfa652dca2578f917e7b2d4a84129855ed2b..45b637e943ab0c4efc99acedf24cc7f4bbee8489 100644
--- a/varausrekisteri/src/vuororekisteri/Vuorot.java
+++ b/varausrekisteri/src/vuororekisteri/Vuorot.java
@@ -122,7 +122,6 @@ public class Vuorot {
      *             vuorot.lisaaVuoro(vuoro1);
      *             vuorot.lisaaVuoro(vuoro2);
      *             vuorot.lisaaVuoro(vuoro3);
-
      *
      *         } catch ( SailoException ex ) {
      *             System.out.println(ex.getMessage());
diff --git a/varausrekisteri/src/vuororekisteri/test/LajiTest.java b/varausrekisteri/src/vuororekisteri/test/LajiTest.java
index ac42efb6cd0042740d8266f56c6a5f73e021c306..618e40fdf4987ffd1b22c83854c3747975928a08 100644
--- a/varausrekisteri/src/vuororekisteri/test/LajiTest.java
+++ b/varausrekisteri/src/vuororekisteri/test/LajiTest.java
@@ -8,7 +8,7 @@ import static vuororekisteri.Laji.*;
 
 /**
  * Test class made by ComTest
- * @version 2025.03.25 18:45:05 // Generated by ComTest
+ * @version 2025.03.26 10:08:32 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "PMD" })
diff --git a/varausrekisteri/src/vuororekisteri/test/VuororekisteriTest.java b/varausrekisteri/src/vuororekisteri/test/VuororekisteriTest.java
index 37b6407357e957ee89552f1c54734089882e8f1d..2a7db3a395bff3fd56b974faa090664488d0b73a 100644
--- a/varausrekisteri/src/vuororekisteri/test/VuororekisteriTest.java
+++ b/varausrekisteri/src/vuororekisteri/test/VuororekisteriTest.java
@@ -7,7 +7,7 @@ import vuororekisteri.*;
 
 /**
  * Test class made by ComTest
- * @version 2025.03.25 18:37:12 // Generated by ComTest
+ * @version 2025.03.26 10:10:14 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "PMD" })
diff --git a/varausrekisteri/src/vuororekisteri/test/VuorotTest.java b/varausrekisteri/src/vuororekisteri/test/VuorotTest.java
index 559f587e4fe5ac8b297d46f0683d9d8348ec7644..42ad32db9ccd2e674d26c07e2df59c63040a9c8d 100644
--- a/varausrekisteri/src/vuororekisteri/test/VuorotTest.java
+++ b/varausrekisteri/src/vuororekisteri/test/VuorotTest.java
@@ -7,7 +7,7 @@ import vuororekisteri.*;
 
 /**
  * Test class made by ComTest
- * @version 2025.03.25 18:45:56 // Generated by ComTest
+ * @version 2025.03.26 10:08:12 // Generated by ComTest
  *
  */
 @SuppressWarnings({ "PMD" })
@@ -54,7 +54,7 @@ public class VuorotTest {
     } catch ( SailoException ex ) {
     System.out.println(ex.getMessage()); 
     }
-    assertEquals("From: Vuorot line: 131", 2, vuorot.annaVuoro(1).getLajiID()); 
-    assertEquals("From: Vuorot line: 132", 18.0, vuorot.annaVuoro(0).getAlkuaika(), 0.000001); 
+    assertEquals("From: Vuorot line: 130", 2, vuorot.annaVuoro(1).getLajiID()); 
+    assertEquals("From: Vuorot line: 131", 18.0, vuorot.annaVuoro(0).getAlkuaika(), 0.000001); 
   } // Generated by ComTest END
 }
\ No newline at end of file