diff --git a/src/main/java/run/halo/app/service/impl/BaseCommentServiceImpl.java b/src/main/java/run/halo/app/service/impl/BaseCommentServiceImpl.java index 433d2518f..8d507b36f 100644 --- a/src/main/java/run/halo/app/service/impl/BaseCommentServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/BaseCommentServiceImpl.java @@ -27,6 +27,7 @@ import org.springframework.data.jpa.domain.Specification; import org.springframework.http.HttpHeaders; import org.springframework.lang.NonNull; import org.springframework.lang.Nullable; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import org.springframework.util.CollectionUtils; import run.halo.app.event.comment.CommentNewEvent; @@ -304,6 +305,7 @@ public abstract class BaseCommentServiceImpl @Override @NonNull + @Transactional(rollbackFor = Exception.class) public COMMENT create(@NonNull COMMENT comment) { Assert.notNull(comment, "Domain must not be null"); @@ -369,6 +371,7 @@ public abstract class BaseCommentServiceImpl @Override @NonNull + @Transactional(rollbackFor = Exception.class) public COMMENT createBy(@NonNull BaseCommentParam commentParam) { Assert.notNull(commentParam, "Comment param must not be null"); @@ -402,6 +405,7 @@ public abstract class BaseCommentServiceImpl @Override @NonNull + @Transactional(rollbackFor = Exception.class) public COMMENT updateStatus(@NonNull Long commentId, @NonNull CommentStatus status) { Assert.notNull(commentId, "Comment id must not be null"); Assert.notNull(status, "Comment status must not be null"); @@ -418,6 +422,7 @@ public abstract class BaseCommentServiceImpl @Override @NonNull + @Transactional(rollbackFor = Exception.class) public List updateStatusByIds(@NonNull List ids, @NonNull CommentStatus status) { if (CollectionUtils.isEmpty(ids)) { return Collections.emptyList(); @@ -428,6 +433,7 @@ public abstract class BaseCommentServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public List removeByPostId(@NonNull Integer postId) { Assert.notNull(postId, "Post id must not be null"); return baseCommentRepository.deleteByPostId(postId); @@ -435,6 +441,7 @@ public abstract class BaseCommentServiceImpl @Override @NonNull + @Transactional(rollbackFor = Exception.class) public COMMENT removeById(@NonNull Long id) { Assert.notNull(id, "Comment id must not be null"); @@ -455,6 +462,7 @@ public abstract class BaseCommentServiceImpl @Override @NonNull + @Transactional(rollbackFor = Exception.class) public List removeByIds(@NonNull Collection ids) { if (CollectionUtils.isEmpty(ids)) { return Collections.emptyList(); diff --git a/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java b/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java index 70643d7f2..157d13316 100644 --- a/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/BasePostServiceImpl.java @@ -264,13 +264,13 @@ public abstract class BasePostServiceImpl } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public void increaseVisit(Integer postId) { increaseVisit(1L, postId); } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public void increaseLike(long likes, Integer postId) { Assert.isTrue(likes > 0, "Likes to increase must not be less than 1"); Assert.notNull(postId, "Post id must not be null"); @@ -285,7 +285,7 @@ public abstract class BasePostServiceImpl } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public void increaseLike(Integer postId) { increaseLike(1L, postId); } @@ -295,7 +295,7 @@ public abstract class BasePostServiceImpl * @return post with handled data */ @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public POST createOrUpdateBy(POST post) { Assert.notNull(post, "Post must not be null"); PatchedContent postContent = post.getContent(); @@ -344,7 +344,7 @@ public abstract class BasePostServiceImpl } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public POST updateStatus(PostStatus status, Integer postId) { Assert.notNull(status, "Post status must not be null"); Assert.isTrue(!ServiceUtils.isEmptyId(postId), "Post id must not be empty"); @@ -374,7 +374,7 @@ public abstract class BasePostServiceImpl } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public List updateStatusByIds(List ids, PostStatus status) { if (CollectionUtils.isEmpty(ids)) { return Collections.emptyList(); @@ -403,6 +403,7 @@ public abstract class BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public POST create(POST post) { // Check title slugMustNotExist(post); @@ -411,6 +412,7 @@ public abstract class BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public POST update(POST post) { // Check title slugMustNotExist(post); diff --git a/src/main/java/run/halo/app/service/impl/PostServiceImpl.java b/src/main/java/run/halo/app/service/impl/PostServiceImpl.java index 408269359..b848540fb 100644 --- a/src/main/java/run/halo/app/service/impl/PostServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/PostServiceImpl.java @@ -163,7 +163,7 @@ public class PostServiceImpl extends BasePostServiceImpl implements PostSe } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public PostDetailVO createBy(Post postToCreate, Set tagIds, Set categoryIds, Set metas, boolean autoSave) { PostDetailVO createdPost = createOrUpdate(postToCreate, tagIds, categoryIds, metas); @@ -177,6 +177,7 @@ public class PostServiceImpl extends BasePostServiceImpl implements PostSe } @Override + @Transactional(rollbackFor = Exception.class) public PostDetailVO createBy(Post postToCreate, Set tagIds, Set categoryIds, boolean autoSave) { PostDetailVO createdPost = createOrUpdate(postToCreate, tagIds, categoryIds, null); @@ -190,7 +191,7 @@ public class PostServiceImpl extends BasePostServiceImpl implements PostSe } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public PostDetailVO updateBy(Post postToUpdate, Set tagIds, Set categoryIds, Set metas, boolean autoSave) { // Set edit time @@ -280,6 +281,7 @@ public class PostServiceImpl extends BasePostServiceImpl implements PostSe } @Override + @Transactional(rollbackFor = Exception.class) public List removeByIds(Collection ids) { if (CollectionUtils.isEmpty(ids)) { return Collections.emptyList(); @@ -490,6 +492,7 @@ public class PostServiceImpl extends BasePostServiceImpl implements PostSe } @Override + @Transactional(rollbackFor = Exception.class) public Post removeById(Integer postId) { Assert.notNull(postId, "Post id must not be null"); diff --git a/src/main/java/run/halo/app/service/impl/SheetServiceImpl.java b/src/main/java/run/halo/app/service/impl/SheetServiceImpl.java index 021822986..a5cd61912 100644 --- a/src/main/java/run/halo/app/service/impl/SheetServiceImpl.java +++ b/src/main/java/run/halo/app/service/impl/SheetServiceImpl.java @@ -10,6 +10,7 @@ import org.springframework.context.ApplicationEventPublisher; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import run.halo.app.event.logger.LogEvent; import run.halo.app.event.post.SheetVisitEvent; @@ -83,6 +84,7 @@ public class SheetServiceImpl extends BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public Sheet createBy(Sheet sheet, boolean autoSave) { Sheet createdSheet = createOrUpdateBy(sheet); if (!autoSave) { @@ -96,6 +98,7 @@ public class SheetServiceImpl extends BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public Sheet createBy(Sheet sheet, Set metas, boolean autoSave) { Sheet createdSheet = createOrUpdateBy(sheet); @@ -115,6 +118,7 @@ public class SheetServiceImpl extends BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public Sheet updateBy(Sheet sheet, boolean autoSave) { Sheet updatedSheet = createOrUpdateBy(sheet); if (!autoSave) { @@ -128,6 +132,7 @@ public class SheetServiceImpl extends BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public Sheet updateBy(Sheet sheet, Set metas, boolean autoSave) { Sheet updatedSheet = createOrUpdateBy(sheet); @@ -260,6 +265,7 @@ public class SheetServiceImpl extends BasePostServiceImpl } @Override + @Transactional(rollbackFor = Exception.class) public Sheet removeById(Integer id) { // Remove sheet metas