From 6f968d16aa9bf5b497b1f4976dff646d44135c86 Mon Sep 17 00:00:00 2001 From: Tim Date: Wed, 17 Sep 2025 11:41:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A4=84=E7=90=86=E9=A6=96=E5=B1=8F?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E7=A9=BA=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/openisle/controller/PostController.java | 4 ++-- backend/src/main/java/com/openisle/mapper/PostMapper.java | 3 --- .../java/com/openisle/scheduler/UserVisitScheduler.java | 6 +++--- .../main/java/com/openisle/service/UserVisitService.java | 4 ++-- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/backend/src/main/java/com/openisle/controller/PostController.java b/backend/src/main/java/com/openisle/controller/PostController.java index 907358c30..963e06bb6 100644 --- a/backend/src/main/java/com/openisle/controller/PostController.java +++ b/backend/src/main/java/com/openisle/controller/PostController.java @@ -203,8 +203,8 @@ public class PostController { // userVisitService.recordVisit(auth.getName()); // } - return postService.listPostsByLatestReply(ids, tids, page, pageSize) - .stream().map(postMapper::toSummaryDto).collect(Collectors.toList()); + List posts = postService.listPostsByLatestReply(ids, tids, page, pageSize); + return posts.stream().map(postMapper::toSummaryDto).collect(Collectors.toList()); } @GetMapping("/featured") diff --git a/backend/src/main/java/com/openisle/mapper/PostMapper.java b/backend/src/main/java/com/openisle/mapper/PostMapper.java index bd4a04826..959129236 100644 --- a/backend/src/main/java/com/openisle/mapper/PostMapper.java +++ b/backend/src/main/java/com/openisle/mapper/PostMapper.java @@ -96,8 +96,6 @@ public class PostMapper { l.setPointCost(lp.getPointCost()); l.setStartTime(lp.getStartTime()); l.setEndTime(lp.getEndTime()); - l.setParticipants(lp.getParticipants().stream().map(userMapper::toAuthorDto).collect(Collectors.toList())); - l.setWinners(lp.getWinners().stream().map(userMapper::toAuthorDto).collect(Collectors.toList())); dto.setLottery(l); } @@ -106,7 +104,6 @@ public class PostMapper { p.setOptions(pp.getOptions()); p.setVotes(pp.getVotes()); p.setEndTime(pp.getEndTime()); - p.setParticipants(pp.getParticipants().stream().map(userMapper::toAuthorDto).collect(Collectors.toList())); Map> optionParticipants = pollVoteRepository.findByPostId(pp.getId()).stream() .collect(Collectors.groupingBy(PollVote::getOptionIndex, Collectors.mapping(v -> userMapper.toAuthorDto(v.getUser()), Collectors.toList()))); diff --git a/backend/src/main/java/com/openisle/scheduler/UserVisitScheduler.java b/backend/src/main/java/com/openisle/scheduler/UserVisitScheduler.java index ff16fe3c4..139963587 100644 --- a/backend/src/main/java/com/openisle/scheduler/UserVisitScheduler.java +++ b/backend/src/main/java/com/openisle/scheduler/UserVisitScheduler.java @@ -27,12 +27,12 @@ public class UserVisitScheduler { private final UserRepository userRepository; private final UserVisitRepository userVisitRepository; - @Scheduled(cron = "0 5 0 * * ?")// 每天 00:05 执行 + @Scheduled(cron = "0 5 0 * * ?") // 每天 00:05 执行 public void persistDailyVisits(){ LocalDate yesterday = LocalDate.now().minusDays(1); - String key = CachingConfig.VISIT_CACHE_NAME+":"+ yesterday; + String key = CachingConfig.VISIT_CACHE_NAME + ":" + yesterday; Set usernames = redisTemplate.opsForSet().members(key); - if(!CollectionUtils.isEmpty(usernames)){ + if (!CollectionUtils.isEmpty(usernames)) { for(String username: usernames){ User user = userRepository.findByUsername(username).orElse(null); if(user != null){ diff --git a/backend/src/main/java/com/openisle/service/UserVisitService.java b/backend/src/main/java/com/openisle/service/UserVisitService.java index 272c846de..9182e145f 100644 --- a/backend/src/main/java/com/openisle/service/UserVisitService.java +++ b/backend/src/main/java/com/openisle/service/UserVisitService.java @@ -49,9 +49,9 @@ public class UserVisitService { .orElseThrow(() -> new com.openisle.exception.NotFoundException("User not found")); // 如果缓存存在就返回 - String key1 = CachingConfig.VISIT_CACHE_NAME + ":"+LocalDate.now()+":count:"+username; + String key1 = CachingConfig.VISIT_CACHE_NAME + ":" +LocalDate.now() + ":count:" + username; Integer cached = (Integer) redisTemplate.opsForValue().get(key1); - if(cached != null){ + if (cached != null){ return cached.longValue(); }