Allow supervisors to request improvements from final seminar opponents #78
@ -3,6 +3,7 @@ package se.su.dsv.scipro.finalseminar;
|
|||||||
import com.google.common.eventbus.EventBus;
|
import com.google.common.eventbus.EventBus;
|
||||||
import com.querydsl.core.BooleanBuilder;
|
import com.querydsl.core.BooleanBuilder;
|
||||||
import com.querydsl.core.types.dsl.BooleanExpression;
|
import com.querydsl.core.types.dsl.BooleanExpression;
|
||||||
|
import com.querydsl.core.types.dsl.Expressions;
|
||||||
import jakarta.inject.Inject;
|
import jakarta.inject.Inject;
|
||||||
import jakarta.inject.Provider;
|
import jakarta.inject.Provider;
|
||||||
import jakarta.persistence.EntityManager;
|
import jakarta.persistence.EntityManager;
|
||||||
@ -542,19 +543,15 @@ public class FinalSeminarServiceImpl extends AbstractServiceImpl<FinalSeminar, L
|
|||||||
|
|
||||||
private BooleanExpression unfinishedSeminars(Date after, Date before) {
|
private BooleanExpression unfinishedSeminars(Date after, Date before) {
|
||||||
QFinalSeminar seminar = QFinalSeminar.finalSeminar;
|
QFinalSeminar seminar = QFinalSeminar.finalSeminar;
|
||||||
|
BooleanExpression ungradedParticipant = Expressions.anyOf(
|
||||||
|
seminar.oppositions.any().grade.isNull(),
|
||||||
|
seminar.activeParticipations.any().grade.isNull(),
|
||||||
|
seminar.respondents.any().grade.isNull()
|
||||||
|
);
|
||||||
if (after == null && before == null) {
|
if (after == null && before == null) {
|
||||||
return seminar.oppositions
|
return ungradedParticipant;
|
||||||
.any()
|
|
||||||
.grade.isNull()
|
|
||||||
.or(seminar.activeParticipations.any().grade.isNull().or(seminar.respondents.any().grade.isNull()));
|
|
||||||
} else {
|
} else {
|
||||||
return seminar.startDate
|
return seminar.startDate.between(after, before).and(ungradedParticipant);
|
||||||
.between(after, before)
|
|
||||||
.andAnyOf(
|
|
||||||
seminar.oppositions.any().grade.isNull(),
|
|
||||||
seminar.activeParticipations.any().grade.isNull(),
|
|
||||||
seminar.respondents.any().grade.isNull()
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user