Поправил баг, из-за которого после первой инициализации не приходили уведомления
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Struchkov Mark 2023-01-16 17:53:47 +03:00
parent b7ac741382
commit 6e9cd1fe1a
Signed by: upagge
GPG Key ID: D3018BE7BA428CA6
3 changed files with 15 additions and 7 deletions

View File

@ -111,9 +111,9 @@ public class DiscussionServiceImpl implements DiscussionService {
final Note firstNote = discussion.getFirstNote(); final Note firstNote = discussion.getFirstNote();
final Long gitlabUserId = personInformation.getId(); final Long gitlabUserId = personInformation.getId();
return firstNote.isResolvable() // Тип комментария требует решения (Задачи) return firstNote.isResolvable() // Тип комментария требует решения (Задачи)
&& gitlabUserId.equals(discussion.getResponsible().getId()) // Ответственный за дискуссию пользователь && gitlabUserId.equals(discussion.getResponsible().getId()) // Ответственный за дискуссию пользователь
&& !gitlabUserId.equals(firstNote.getAuthor().getId()) // Создатель комментария не пользователь системы && !gitlabUserId.equals(firstNote.getAuthor().getId()) // Создатель комментария не пользователь системы
&& FALSE.equals(firstNote.getResolved()); // Комментарий не отмечен как решенный && FALSE.equals(firstNote.getResolved()); // Комментарий не отмечен как решенный
} }
@Override @Override
@ -238,9 +238,9 @@ public class DiscussionServiceImpl implements DiscussionService {
private boolean isResolved(Note note, Note oldNote) { private boolean isResolved(Note note, Note oldNote) {
return oldNote.getResolvedBy() == null return oldNote.getResolvedBy() == null
&& note.getResolvedBy() != null && note.getResolvedBy() != null
&& personInformation.getId().equals(oldNote.getAuthor().getId()) && personInformation.getId().equals(oldNote.getAuthor().getId())
&& !note.getResolvedBy().getId().equals(oldNote.getAuthor().getId()); && !note.getResolvedBy().getId().equals(oldNote.getAuthor().getId());
} }
@ -306,11 +306,13 @@ public class DiscussionServiceImpl implements DiscussionService {
} }
@Override @Override
@Transactional
public void deleteById(@NonNull String discussionId) { public void deleteById(@NonNull String discussionId) {
repository.deleteById(discussionId); repository.deleteById(discussionId);
} }
@Override @Override
@Transactional
public void cleanOld() { public void cleanOld() {
log.debug("Старт очистки старых дискуссий"); log.debug("Старт очистки старых дискуссий");
repository.cleanOld(); repository.cleanOld();

View File

@ -2,7 +2,9 @@ package dev.struchkov.bot.gitlab.data.jpa;
import dev.struchkov.bot.gitlab.context.domain.entity.Discussion; import dev.struchkov.bot.gitlab.context.domain.entity.Discussion;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query; import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@ -22,4 +24,8 @@ public interface DiscussionJpaRepository extends JpaRepository<Discussion, Strin
void removeAllByMergeRequestIsNull(); void removeAllByMergeRequestIsNull();
@Modifying
@Query("DELETE FROM Discussion d WHERE d.id = :id")
void deleteById(@Param("id") String id);
} }

View File

@ -329,7 +329,7 @@ public class InitSettingFlow {
.answer( .answer(
mail -> { mail -> {
context.save(mail.getPersonId(), Keys.INIT_SETTING_FINISH, Boolean.TRUE); context.save(mail.getPersonId(), Keys.INIT_SETTING_FINISH, Boolean.TRUE);
settingService.isEnableAllNotify(); settingService.turnOnAllNotify();
settingService.disableFirstStart(); settingService.disableFirstStart();
return boxAnswer(""" return boxAnswer("""
Configuration completed successfully Configuration completed successfully