diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlanningController.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlanningController.java
index ce0e871..bea1eb5 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlanningController.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlanningController.java
@@ -833,10 +833,7 @@
 		List<StandbyDuration> lsFittingDurations = new ArrayList<>();
 		List<StandbyDuration> lsDurations = standbyDurationRepository.findById(group.getId());
 		for (StandbyDuration dur : lsDurations) {
-			if (dur.getValidDayFrom() == dur.getValidDayTo() && dayOfWeek == dur.getValidDayFrom()) {
-				// start - end and current are equal
-				lsFittingDurations.add(dur);
-			} else if (dur.getValidDayFrom() <= dayOfWeek && dayOfWeek <= dur.getValidDayTo()) {
+			if (dur.getValidDayFrom() < dayOfWeek && dayOfWeek <= dur.getValidDayTo()) {
 				// start <= current <= end
 				lsFittingDurations.add(dur);
 			} else if (dur.getValidDayFrom() > dur.getValidDayTo()) {
@@ -846,7 +843,7 @@
 					// AND start > current
 					calcValue = dayOfWeek + 7;
 				}
-				if (dur.getValidDayFrom() <= calcValue && calcValue <= (dur.getValidDayTo() + 7)) {
+				if (dur.getValidDayFrom() < calcValue && calcValue < (dur.getValidDayTo() + 7)) {
 					lsFittingDurations.add(dur);
 				}
 			}
@@ -1360,8 +1357,8 @@
 						// only durations should be added that start at least one day before and their
 						// ending at the phase start
 						StandbyDuration tmpDuration = dur.copy();
-						tmpDuration.setValidFrom(DateHelper.getStartOfDay(currentDate));
-						tmpDuration.setValidDayFrom(dur.getValidDayTo());
+						tmpDuration.setValidFrom(DateHelper.getStartOfDay(tmpDuration.getValidFrom()));
+						tmpDuration.setValidDayFrom(DateHelper.getDayOfWeek(currentDate));
 						lsFittingDurations.add(tmpDuration);
 					}
 				}
