Advertisement
Guest User

Untitled

a guest
Jun 25th, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.31 KB | None | 0 0
  1.     public List<FreeScheduleItem> createFreeScheduleItemsByDate(Integer scheduleRuleId, LocalDate date, Integer duration) {
  2.         if (finishWorkingTime == null) {
  3.             return Arrays.asList(new FreeScheduleItem(scheduleRuleId, date, startWorkingTime, duration));
  4.         }
  5.         return Stream.iterate(startWorkingTime, startOfItem -> startOfItem.plusMinutes(duration))
  6.                 .limit((long)Math.ceil(ChronoUnit.MINUTES.between(startWorkingTime, finishWorkingTime) / duration.doubleValue()))
  7.                 .map(startOfItem -> new FreeScheduleItem(scheduleRuleId, date, startOfItem, duration))
  8.                 .collect(Collectors.toList());
  9.     }
  10.  
  11.     public List<FreeScheduleItem> createFreeScheduleItemsByDateOld(Integer scheduleRuleId, LocalDate date, Integer duration) {
  12.         if (finishWorkingTime == null) {
  13.             return Arrays.asList(new FreeScheduleItem(scheduleRuleId, date, startWorkingTime, duration));
  14.         }
  15.         List<FreeScheduleItem> freeScheduleItems = new ArrayList<>();
  16.         for (LocalTime startOfItem = startWorkingTime; startOfItem.isBefore(finishWorkingTime); startOfItem = startOfItem.plusMinutes(duration)) {
  17.             freeScheduleItems.add(new FreeScheduleItem(scheduleRuleId, date, startOfItem, duration));
  18.         }
  19.         return freeScheduleItems;
  20.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement