mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-14 03:45:57 +00:00
[AB-290] fixing showing wrong active warning count in warn decay notification
fixing un mute log failing to render in case the mute did not come from a message fixing notification failing with exception in case there were no warnings to decay
This commit is contained in:
@@ -16,6 +16,7 @@ import java.util.Optional;
|
|||||||
public interface WarnRepository extends JpaRepository<Warning, ServerSpecificId> {
|
public interface WarnRepository extends JpaRepository<Warning, ServerSpecificId> {
|
||||||
List<Warning> findAllByWarnedUser_ServerReferenceAndDecayedFalseAndWarnDateLessThan(AServer server, Instant cutOffDate);
|
List<Warning> findAllByWarnedUser_ServerReferenceAndDecayedFalseAndWarnDateLessThan(AServer server, Instant cutOffDate);
|
||||||
List<Warning> findAllByWarnedUser_ServerReferenceAndDecayedFalseAndWarnDateGreaterThan(AServer server, Instant cutOffDate);
|
List<Warning> findAllByWarnedUser_ServerReferenceAndDecayedFalseAndWarnDateGreaterThan(AServer server, Instant cutOffDate);
|
||||||
|
List<Warning> findAllByWarnedUserAndDecayedFalseAndWarnDateGreaterThan(AUserInAServer user, Instant cutOffDate);
|
||||||
|
|
||||||
List<Warning> findAllByWarnedUser_ServerReference(AServer server);
|
List<Warning> findAllByWarnedUser_ServerReference(AServer server);
|
||||||
|
|
||||||
|
|||||||
@@ -165,6 +165,9 @@ public class WarnServiceBean implements WarnService {
|
|||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public CompletableFuture<Void> sendMemberNotifications(Long serverId, List<Long> warnIds, List<Member> members, Instant cutOffDay) {
|
public CompletableFuture<Void> sendMemberNotifications(Long serverId, List<Long> warnIds, List<Member> members, Instant cutOffDay) {
|
||||||
|
if(warnIds.isEmpty()) {
|
||||||
|
return CompletableFuture.completedFuture(null);
|
||||||
|
}
|
||||||
List<Warning> decayingWarnings = warnManagementService.getWarningsViaId(warnIds, serverId);
|
List<Warning> decayingWarnings = warnManagementService.getWarningsViaId(warnIds, serverId);
|
||||||
AServer server = decayingWarnings.get(0).getWarnedUser().getServerReference();
|
AServer server = decayingWarnings.get(0).getWarnedUser().getServerReference();
|
||||||
List<CompletableFuture<Message>> notificationFutures = new ArrayList<>();
|
List<CompletableFuture<Message>> notificationFutures = new ArrayList<>();
|
||||||
@@ -174,7 +177,7 @@ public class WarnServiceBean implements WarnService {
|
|||||||
Long warningId = warning.getWarnId().getId();
|
Long warningId = warning.getWarnId().getId();
|
||||||
if(userIdToMember.containsKey(userId)) {
|
if(userIdToMember.containsKey(userId)) {
|
||||||
Member memberToSendTo = userIdToMember.get(userId);
|
Member memberToSendTo = userIdToMember.get(userId);
|
||||||
List<Warning> remainingWarnings = warnManagementService.getActiveWarningsInServerYoungerThan(server, cutOffDay);
|
List<Warning> remainingWarnings = warnManagementService.getActiveWarningsFromUserYoungerThan(warning.getWarnedUser(), cutOffDay);
|
||||||
WarnDecayMemberNotificationModel model =
|
WarnDecayMemberNotificationModel model =
|
||||||
WarnDecayMemberNotificationModel
|
WarnDecayMemberNotificationModel
|
||||||
.builder()
|
.builder()
|
||||||
|
|||||||
@@ -49,6 +49,11 @@ public class WarnManagementServiceBean implements WarnManagementService {
|
|||||||
return warnRepository.findAllByWarnedUser_ServerReferenceAndDecayedFalseAndWarnDateGreaterThan(server, date);
|
return warnRepository.findAllByWarnedUser_ServerReferenceAndDecayedFalseAndWarnDateGreaterThan(server, date);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Warning> getActiveWarningsFromUserYoungerThan(AUserInAServer user, Instant date) {
|
||||||
|
return warnRepository.findAllByWarnedUserAndDecayedFalseAndWarnDateGreaterThan(user, date);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long getTotalWarnsForUser(AUserInAServer aUserInAServer) {
|
public Long getTotalWarnsForUser(AUserInAServer aUserInAServer) {
|
||||||
return warnRepository.countByWarnedUser(aUserInAServer);
|
return warnRepository.countByWarnedUser(aUserInAServer);
|
||||||
|
|||||||
@@ -62,6 +62,9 @@ public class UnMuteLog extends ServerContext {
|
|||||||
* @return A string containing an URL leading to the message where the mute was triggered
|
* @return A string containing an URL leading to the message where the mute was triggered
|
||||||
*/
|
*/
|
||||||
public String getMessageUrl() {
|
public String getMessageUrl() {
|
||||||
return MessageUtils.buildMessageUrl(this.mute.getServer().getId() ,this.getMute().getMutingChannel().getId(), this.mute.getMessageId());
|
if(this.mute.getMessageId() != null && this.mute.getMutingChannel() != null) {
|
||||||
|
return MessageUtils.buildMessageUrl(this.mute.getServer().getId(), this.mute.getMutingChannel().getId(), this.mute.getMessageId());
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ public interface WarnManagementService {
|
|||||||
Warning createWarning(AUserInAServer warnedAUser, AUserInAServer warningAUser, String reason, Long warnId);
|
Warning createWarning(AUserInAServer warnedAUser, AUserInAServer warningAUser, String reason, Long warnId);
|
||||||
List<Warning> getActiveWarningsInServerOlderThan(AServer server, Instant date);
|
List<Warning> getActiveWarningsInServerOlderThan(AServer server, Instant date);
|
||||||
List<Warning> getActiveWarningsInServerYoungerThan(AServer server, Instant date);
|
List<Warning> getActiveWarningsInServerYoungerThan(AServer server, Instant date);
|
||||||
|
List<Warning> getActiveWarningsFromUserYoungerThan(AUserInAServer user, Instant date);
|
||||||
Long getTotalWarnsForUser(AUserInAServer aUserInAServer);
|
Long getTotalWarnsForUser(AUserInAServer aUserInAServer);
|
||||||
List<Warning> getAllWarnsForUser(AUserInAServer aUserInAServer);
|
List<Warning> getAllWarnsForUser(AUserInAServer aUserInAServer);
|
||||||
List<Warning> getAllWarningsOfServer(AServer server);
|
List<Warning> getAllWarningsOfServer(AServer server);
|
||||||
|
|||||||
Reference in New Issue
Block a user