From 779bc3eafc4f306bbf6ed04e6fd458e4ea772738 Mon Sep 17 00:00:00 2001
From: Anton Romanov
Date: Thu, 17 Jan 2019 00:57:34 +0400
Subject: [PATCH] fix failed conditions
---
src/main/java/ru/ulstu/paper/model/Paper.java | 9 +++++++++
src/main/java/ru/ulstu/paper/service/PaperService.java | 5 ++---
.../mail_templates/paperFailedNotification.html | 2 +-
3 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/src/main/java/ru/ulstu/paper/model/Paper.java b/src/main/java/ru/ulstu/paper/model/Paper.java
index ed55e98..c09fd28 100644
--- a/src/main/java/ru/ulstu/paper/model/Paper.java
+++ b/src/main/java/ru/ulstu/paper/model/Paper.java
@@ -169,4 +169,13 @@ public class Paper extends BaseEntity implements UserContainer {
.filter(d -> d.getDate().after(new Date()))
.findFirst();
}
+
+ public boolean lastDeadlineFailed() {
+ return !deadlines
+ .stream()
+ .filter(deadline -> deadline.getDate() != null)
+ .filter(d -> d.getDate().after(new Date()))
+ .findAny()
+ .isPresent();
+ }
}
diff --git a/src/main/java/ru/ulstu/paper/service/PaperService.java b/src/main/java/ru/ulstu/paper/service/PaperService.java
index affbf0e..74e4fb5 100644
--- a/src/main/java/ru/ulstu/paper/service/PaperService.java
+++ b/src/main/java/ru/ulstu/paper/service/PaperService.java
@@ -166,11 +166,10 @@ public class PaperService {
public void closeFailedPapers() {
List papers = paperRepository.findAll()
.stream()
- .filter(paper -> paper.getNextDeadline().isPresent()
+ .filter(paper -> paper.lastDeadlineFailed()
&& (paper.getStatus() == ON_PREPARATION
|| paper.getStatus() == DRAFT
- || paper.getStatus() == ATTENTION)
- && paper.getNextDeadline().get().getDate().before(new Date()))
+ || paper.getStatus() == ATTENTION))
.collect(Collectors.toList());
papers.forEach(paper -> {
Paper.PaperStatus oldStatus = paper.getStatus();
diff --git a/src/main/resources/mail_templates/paperFailedNotification.html b/src/main/resources/mail_templates/paperFailedNotification.html
index cacc7e9..3eb1399 100644
--- a/src/main/resources/mail_templates/paperFailedNotification.html
+++ b/src/main/resources/mail_templates/paperFailedNotification.html
@@ -11,7 +11,7 @@
Статья "Title" провалена.
- Предыдущий статус - "oldStatus".
+ Предыдущий статус - "oldStatus".
Regards,