in service/src/main/java/org/apache/fineract/cn/group/internal/service/GroupService.java [111:135]
public List<Meeting> findMeetings(final String identifier, final Boolean upcoming) {
final GroupEntity groupEntity = this.groupRepository.findByIdentifier(identifier)
.orElseThrow(() -> ServiceException.notFound("Group {0} not found.", identifier));
final List<MeetingEntity> meetings;
if (upcoming) {
meetings = this.meetingRepository.findTopByGroupEntityAndScheduledForAfter(groupEntity, LocalDate.now(Clock.systemUTC()));
} else {
meetings = this.meetingRepository.findByGroupEntityOrderByCurrentCycleDescMeetingSequenceDesc(groupEntity);
}
return meetings
.stream()
.map(meetingEntity -> {
final Meeting meeting = MeetingMapper.map(meetingEntity);
meeting.setGroupIdentifier(groupEntity.getIdentifier());
meeting.setAttendees(
this.attendeeRepository.findByMeeting(meetingEntity)
.stream().map(AttendeeMapper::map).collect(Collectors.toSet())
);
meeting.setLocation(AddressMapper.map(groupEntity.getAddressEntity()));
return meeting;
})
.collect(Collectors.toList());
}