Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public List<FreeScheduleItem> createFreeScheduleItemsByDate(Integer scheduleRuleId, LocalDate date, Integer duration) {
- if (finishWorkingTime == null) {
- return Arrays.asList(new FreeScheduleItem(scheduleRuleId, date, startWorkingTime, duration));
- }
- return Stream.iterate(startWorkingTime, startOfItem -> startOfItem.plusMinutes(duration))
- .limit((long)Math.ceil(ChronoUnit.MINUTES.between(startWorkingTime, finishWorkingTime) / duration.doubleValue()))
- .map(startOfItem -> new FreeScheduleItem(scheduleRuleId, date, startOfItem, duration))
- .collect(Collectors.toList());
- }
- public List<FreeScheduleItem> createFreeScheduleItemsByDateOld(Integer scheduleRuleId, LocalDate date, Integer duration) {
- if (finishWorkingTime == null) {
- return Arrays.asList(new FreeScheduleItem(scheduleRuleId, date, startWorkingTime, duration));
- }
- List<FreeScheduleItem> freeScheduleItems = new ArrayList<>();
- for (LocalTime startOfItem = startWorkingTime; startOfItem.isBefore(finishWorkingTime); startOfItem = startOfItem.plusMinutes(duration)) {
- freeScheduleItems.add(new FreeScheduleItem(scheduleRuleId, date, startOfItem, duration));
- }
- return freeScheduleItems;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement