From f8814cd44c242b434bf5eb243d8940bab8c41692 Mon Sep 17 00:00:00 2001 From: hxf13 <2994198039@qq.com> Date: Mon, 22 Jul 2024 15:42:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9TBook=E5=90=84=E4=B8=AA?= =?UTF-8?q?=E5=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../security/filter/AuthenticationTokenFilter.java | 7 ++++++- maku-framework/src/main/resources/auth.yml | 1 + .../maku/controller/TBookCommentController.java | 24 ++++++++++++++++++++++ .../net/maku/maku/controller/TBookController.java | 4 ++-- .../net/maku/maku/service/TBookCommentService.java | 3 +++ .../java/net/maku/maku/service/TBookService.java | 4 +++- .../maku/service/impl/TBookCommentServiceImpl.java | 11 ++++++++++ .../maku/maku/service/impl/TBookServiceImpl.java | 6 ++---- maku-server/src/main/resources/application-dev.yml | 1 - 9 files changed, 52 insertions(+), 9 deletions(-) diff --git a/maku-framework/src/main/java/net/maku/framework/security/filter/AuthenticationTokenFilter.java b/maku-framework/src/main/java/net/maku/framework/security/filter/AuthenticationTokenFilter.java index 5a1b061..a758b82 100644 --- a/maku-framework/src/main/java/net/maku/framework/security/filter/AuthenticationTokenFilter.java +++ b/maku-framework/src/main/java/net/maku/framework/security/filter/AuthenticationTokenFilter.java @@ -38,13 +38,18 @@ public class AuthenticationTokenFilter extends OncePerRequestFilter { return; } + //token 1 admin 2 user + //object + //ObjectMapper obejct admin.class user.class // 获取登录用户信息 + //从redis中获取信息 UserDetail user = tokenStoreCache.getUser(accessToken); if (user == null) { chain.doFilter(request, response); return; } - + //存入SecurityContextHolder + // 获取用户权限信息封装到Authentication中 // 用户存在 Authentication authentication = new UsernamePasswordAuthenticationToken(user, null, user.getAuthorities()); diff --git a/maku-framework/src/main/resources/auth.yml b/maku-framework/src/main/resources/auth.yml index 65e0077..86ac40e 100644 --- a/maku-framework/src/main/resources/auth.yml +++ b/maku-framework/src/main/resources/auth.yml @@ -8,6 +8,7 @@ auth: - /swagger-ui.html - /swagger-ui/** - /doc.html + - /maku/t_book_comment/** - /maku/t_user/** - /maku/t_book/list/search - /maku/t_book/{id} diff --git a/maku-server/src/main/java/net/maku/maku/controller/TBookCommentController.java b/maku-server/src/main/java/net/maku/maku/controller/TBookCommentController.java index 7bf7368..bce6cc3 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TBookCommentController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TBookCommentController.java @@ -39,6 +39,30 @@ public class TBookCommentController { private final TBookCommentService tBookCommentService; private final RedisCache redisCache; + @PostMapping("/manout") + @Operation(summary = "评论") + public Result setbookcomment(HttpServletRequest request, @RequestParam Integer bookId,@RequestParam String comment) { + // 首先验证token的有效性,然后从Redis中获取用户信息 + String token = request.getHeader("token"); + if(token==null || token.isEmpty()){ + return Result.error("token is error"); + } + + TUserEntity tUserEntity = (TUserEntity) redisCache.get(token); + Integer userId=tUserEntity.getId(); + LocalDateTime currentTime = LocalDateTime.now(); + ZoneId zoneId = ZoneId.systemDefault(); + + //DATE没有时区二localDateTime有时区,为了将 LocalDateTime 转换为 Date,你需要指定一个时区,因为 Date 是基于UTC的 + // 将LocalDateTime转换为ZonedDateTime,然后转换为Instant,最后转换为Date + ZonedDateTime zdt = currentTime.atZone(zoneId); + Date date = Date.from(zdt.toInstant()); + tBookCommentService.save(userId,bookId,comment,date); + return Result.ok("评论成功"); + + } + + @GetMapping("page") @Operation(summary = "分页") diff --git a/maku-server/src/main/java/net/maku/maku/controller/TBookController.java b/maku-server/src/main/java/net/maku/maku/controller/TBookController.java index ddf6a61..87fe92d 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TBookController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TBookController.java @@ -60,8 +60,8 @@ public class TBookController { @GetMapping("/list/search") @Operation(summary = "根据书名查询书籍") @Parameter - public Result getByName(@RequestParam String name){ - TBookEntity entity = tBookService.getByName(name); + public Result> getByName(@RequestParam String name){ + List entity = tBookService.getByName(name); return Result.ok(entity); } diff --git a/maku-server/src/main/java/net/maku/maku/service/TBookCommentService.java b/maku-server/src/main/java/net/maku/maku/service/TBookCommentService.java index 4f2f0b5..a6ed9a6 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TBookCommentService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TBookCommentService.java @@ -6,6 +6,7 @@ import net.maku.maku.vo.TBookCommentVO; import net.maku.maku.query.TBookCommentQuery; import net.maku.maku.entity.TBookCommentEntity; +import java.util.Date; import java.util.List; /** @@ -23,4 +24,6 @@ public interface TBookCommentService extends BaseService { void update(TBookCommentVO vo); void delete(List idList); + + void save(Integer userId, Integer bookId, String comment, Date date); } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/TBookService.java b/maku-server/src/main/java/net/maku/maku/service/TBookService.java index 6b62863..49ac224 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TBookService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TBookService.java @@ -24,5 +24,7 @@ public interface TBookService extends BaseService { void delete(List idList); - TBookEntity getByName(String bookName); + + List getByName(String name); + } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java index 09deb95..d5dd02e 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCommentServiceImpl.java @@ -16,6 +16,7 @@ import net.maku.maku.service.TBookCommentService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.List; /** @@ -64,4 +65,14 @@ public class TBookCommentServiceImpl extends BaseServiceImpl imp } @Override - public TBookEntity getByName(String bookName) { + public List getByName(String bookName) { LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); wrapper.eq(TBookEntity::getBookName, bookName); - TBookEntity tBookEntity = baseMapper.selectOne(wrapper); + List tBookEntity = baseMapper.selectList(wrapper); if (ObjectUtil.isNull(tBookEntity)){ throw new ServerException("没有找到书籍"); } - tBookEntity.setBookCover("obhhi"); return tBookEntity; } diff --git a/maku-server/src/main/resources/application-dev.yml b/maku-server/src/main/resources/application-dev.yml index 7adff1c..4ef148c 100644 --- a/maku-server/src/main/resources/application-dev.yml +++ b/maku-server/src/main/resources/application-dev.yml @@ -3,7 +3,6 @@ spring: redis: database: 0 host: localhost - port: 6379 #timeout: 6000ms # 连接超时时长(毫秒) datasource: dynamic: