From e485acef6660233621f8cca884a05b433edba84b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90?= <73240868+JustinLiang522@users.noreply.github.com> Date: Wed, 15 Feb 2023 13:36:14 +0800 Subject: [PATCH] perf: associate ghost user with posts on user deletion. (#3293) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #### What type of PR is this? /kind bug #### What this PR does / why we need it: 文章发布用户被删除后,设置这篇文章的发布人为Ghost #### Which issue(s) this PR fixes: Fixes #3265 ```release-note NONE ``` --- src/main/java/run/halo/app/content/Contributor.java | 7 +++++++ .../java/run/halo/app/content/impl/PostServiceImpl.java | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/run/halo/app/content/Contributor.java b/src/main/java/run/halo/app/content/Contributor.java index fb86fb490..b9af1e804 100644 --- a/src/main/java/run/halo/app/content/Contributor.java +++ b/src/main/java/run/halo/app/content/Contributor.java @@ -13,4 +13,11 @@ public class Contributor { private String displayName; private String avatar; private String name; + + public static Contributor getGhost() { + Contributor contributor = new Contributor(); + contributor.setName("ghost"); + contributor.setDisplayName("已删除用户"); + return contributor; + } } diff --git a/src/main/java/run/halo/app/content/impl/PostServiceImpl.java b/src/main/java/run/halo/app/content/impl/PostServiceImpl.java index 11311a80a..377cd4827 100644 --- a/src/main/java/run/halo/app/content/impl/PostServiceImpl.java +++ b/src/main/java/run/halo/app/content/impl/PostServiceImpl.java @@ -231,7 +231,8 @@ public class PostServiceImpl extends AbstractContentService implements PostServi contributor.setDisplayName(user.getSpec().getDisplayName()); contributor.setAvatar(user.getSpec().getAvatar()); return contributor; - }); + }) + .defaultIfEmpty(Contributor.getGhost()); } @Override