Search in sources :

Example 11 with Event

use of uk.ac.ebi.spot.goci.model.Event in project goci by EBISPOT.

the class AssociationEventsViewService method createViews.

@Override
public List<EventView> createViews(Long studyId) {
    List<EventView> views = new ArrayList<>();
    Collection<Association> associations = studyRepository.findOne(studyId).getAssociations();
    if (!associations.isEmpty()) {
        // For each association gather up the events into a collection of views
        associations.forEach(association -> {
            Collection<Event> events = association.getEvents();
            Long associationId = association.getId();
            Collection<SingleNucleotidePolymorphism> snps = singleNucleotidePolymorphismRepository.findByRiskAllelesLociAssociationId(associationId);
            String associationSummary;
            StringJoiner snpJoiner = new StringJoiner(", ");
            snps.forEach(singleNucleotidePolymorphism -> {
                snpJoiner.add(singleNucleotidePolymorphism.getRsId());
            });
            associationSummary = snpJoiner.toString();
            events.forEach(event -> {
                String eventName = eventTypeService.translateEventByEventType(event.getEventType());
                EventView eventView = new AssociationEventView(eventName, event.getEventDate(), associationId, event.getUser().getEmail(), associationSummary);
                views.add(eventView);
            });
        });
    }
    return views;
}
Also used : ArrayList(java.util.ArrayList) AssociationEventView(uk.ac.ebi.spot.goci.curation.model.AssociationEventView) EventView(uk.ac.ebi.spot.goci.curation.model.EventView) Association(uk.ac.ebi.spot.goci.model.Association) AssociationEventView(uk.ac.ebi.spot.goci.curation.model.AssociationEventView) SingleNucleotidePolymorphism(uk.ac.ebi.spot.goci.model.SingleNucleotidePolymorphism) Event(uk.ac.ebi.spot.goci.model.Event) StringJoiner(java.util.StringJoiner)

Example 12 with Event

use of uk.ac.ebi.spot.goci.model.Event in project goci by EBISPOT.

the class StudyEventsViewService method createViews.

@Override
public List<EventView> createViews(Long trackableId) {
    List<EventView> views = new ArrayList<>();
    Collection<Event> events = studyRepository.findOne(trackableId).getEvents();
    events.forEach(event -> {
        String eventName = eventTypeService.translateEventByEventType(event.getEventType());
        EventView eventView = new StudyEventView(eventName, event.getEventDate(), trackableId, event.getUser().getEmail(), event.getEventDescription());
        views.add(eventView);
    });
    return views;
}
Also used : StudyEventView(uk.ac.ebi.spot.goci.curation.model.StudyEventView) ArrayList(java.util.ArrayList) Event(uk.ac.ebi.spot.goci.model.Event) StudyEventView(uk.ac.ebi.spot.goci.curation.model.StudyEventView) EventView(uk.ac.ebi.spot.goci.curation.model.EventView)

Aggregations

Event (uk.ac.ebi.spot.goci.model.Event)12 ArrayList (java.util.ArrayList)2 EventView (uk.ac.ebi.spot.goci.curation.model.EventView)2 Date (java.sql.Date)1 StringJoiner (java.util.StringJoiner)1 AssociationEventView (uk.ac.ebi.spot.goci.curation.model.AssociationEventView)1 StudyEventView (uk.ac.ebi.spot.goci.curation.model.StudyEventView)1 Association (uk.ac.ebi.spot.goci.model.Association)1 SingleNucleotidePolymorphism (uk.ac.ebi.spot.goci.model.SingleNucleotidePolymorphism)1