ng-tracker/src/main/java/ru/ulstu/conference/service/ConferenceService.java

51 lines
1.8 KiB
Java
Raw Normal View History

2019-04-02 10:53:09 +04:00
package ru.ulstu.conference.service;
import org.apache.commons.lang3.StringUtils;
2019-04-02 10:53:09 +04:00
import org.springframework.stereotype.Service;
import ru.ulstu.conference.model.Conference;
import ru.ulstu.conference.model.ConferenceDto;
2019-04-02 10:53:09 +04:00
import ru.ulstu.conference.repository.ConferenceRepository;
import ru.ulstu.deadline.service.DeadlineService;
import java.util.List;
import static ru.ulstu.core.util.StreamApiUtils.convert;
2019-04-02 10:53:09 +04:00
@Service
public class ConferenceService {
private final static int MAX_DISPLAY_SIZE = 40;
2019-04-02 10:53:09 +04:00
private final ConferenceRepository conferenceRepository;
private final DeadlineService deadlineService;
public ConferenceService(ConferenceRepository conferenceRepository,
DeadlineService deadlineService) {
this.conferenceRepository = conferenceRepository;
this.deadlineService = deadlineService;
}
public List<Conference> findAll() {
return conferenceRepository.findAll();
}
public List<ConferenceDto> findAllDto() {
List<ConferenceDto> conferences = convert(findAll(), ConferenceDto::new);
conferences.forEach(conferenceDto -> conferenceDto.setTitle(StringUtils.abbreviate(conferenceDto.getTitle(), MAX_DISPLAY_SIZE)));
return conferences;
}
// private List<Paper> sortPapers(List<Conference> conferences) {
// return conferences.stream().sorted((paper1, paper2) -> {
// int statusCompareResult =
// Integer.valueOf(Arrays.asList(Paper.PaperStatus.values()).indexOf(paper1.getStatus()))
// .compareTo(Arrays.asList(Paper.PaperStatus.values()).indexOf(paper2.getStatus()));
// if (statusCompareResult != 0) {
// return statusCompareResult;
// }
// return paper1.getTitle().compareTo(paper2.getTitle());
// }).collect(toList());
// }
2019-04-02 10:53:09 +04:00
}