|
|
|
@ -21,6 +21,7 @@ import java.util.Date;
|
|
|
|
|
import java.util.HashSet;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Set;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
import static java.util.stream.Collectors.toList;
|
|
|
|
|
import static org.springframework.util.ObjectUtils.isEmpty;
|
|
|
|
@ -34,6 +35,7 @@ import static ru.ulstu.paper.model.Paper.PaperStatus.ON_PREPARATION;
|
|
|
|
|
@Service
|
|
|
|
|
public class PaperService {
|
|
|
|
|
private final static int MAX_DISPLAY_SIZE = 40;
|
|
|
|
|
private final static String PAPER_FORMATTED_TEMPLATE = "%s %s";
|
|
|
|
|
|
|
|
|
|
private final PaperNotificationService paperNotificationService;
|
|
|
|
|
private final PaperRepository paperRepository;
|
|
|
|
@ -66,13 +68,17 @@ public class PaperService {
|
|
|
|
|
return papers;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<PaperDto> findAllActive() {
|
|
|
|
|
return findAllDto()
|
|
|
|
|
public List<Paper> findAllActive() {
|
|
|
|
|
return findAll()
|
|
|
|
|
.stream()
|
|
|
|
|
.filter(paper -> paper.getStatus() != COMPLETED && paper.getStatus() != FAILED)
|
|
|
|
|
.collect(toList());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<PaperDto> findAllActiveDto() {
|
|
|
|
|
return convert(findAllActive(), PaperDto::new);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public PaperDto findOneDto(Integer id) {
|
|
|
|
|
return new PaperDto(paperRepository.findOne(id));
|
|
|
|
|
}
|
|
|
|
@ -212,4 +218,25 @@ public class PaperService {
|
|
|
|
|
public List<User> getPaperAuthors() {
|
|
|
|
|
return userService.findAll();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<String> getFormattedPaperList() {
|
|
|
|
|
return findAllCompleted()
|
|
|
|
|
.stream()
|
|
|
|
|
.map(paper -> String.format(PAPER_FORMATTED_TEMPLATE, paper.getTitle(), getAuthors(paper)))
|
|
|
|
|
.collect(toList());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<Paper> findAllCompleted() {
|
|
|
|
|
return findAll()
|
|
|
|
|
.stream()
|
|
|
|
|
.filter(paper -> paper.getStatus() == COMPLETED)
|
|
|
|
|
.collect(toList());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String getAuthors(Paper paper) {
|
|
|
|
|
return paper.getAuthors()
|
|
|
|
|
.stream()
|
|
|
|
|
.map(User::getUserAbbreviate)
|
|
|
|
|
.collect(Collectors.joining(", "));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|