diff --git a/src/main/java/io/github/xxyopen/novel/controller/front/ResourceController.java b/src/main/java/io/github/xxyopen/novel/controller/front/ResourceController.java index 4f50e532..9dbae2fb 100644 --- a/src/main/java/io/github/xxyopen/novel/controller/front/ResourceController.java +++ b/src/main/java/io/github/xxyopen/novel/controller/front/ResourceController.java @@ -26,7 +26,6 @@ public class ResourceController { /** * 获取图片验证码接口 - * @return */ @GetMapping("img_verify_code") public RestResp getImgVerifyCode() throws IOException { diff --git a/src/main/java/io/github/xxyopen/novel/controller/front/UserController.java b/src/main/java/io/github/xxyopen/novel/controller/front/UserController.java index ce80b6fd..078b8f3d 100644 --- a/src/main/java/io/github/xxyopen/novel/controller/front/UserController.java +++ b/src/main/java/io/github/xxyopen/novel/controller/front/UserController.java @@ -8,6 +8,7 @@ import io.github.xxyopen.novel.dto.req.UserLoginReqDto; import io.github.xxyopen.novel.dto.req.UserRegisterReqDto; import io.github.xxyopen.novel.dto.resp.UserLoginRespDto; +import io.github.xxyopen.novel.dto.resp.UserRegisterRespDto; import io.github.xxyopen.novel.service.BookService; import io.github.xxyopen.novel.service.UserService; import jakarta.validation.Valid; @@ -33,7 +34,7 @@ public class UserController { * 用户注册接口 */ @PostMapping("register") - public RestResp register(@Valid @RequestBody UserRegisterReqDto dto) { + public RestResp register(@Valid @RequestBody UserRegisterReqDto dto) { return userService.register(dto); } @@ -65,7 +66,7 @@ public RestResp submitFeedback(@RequestBody String content) { /** * 用户反馈删除接口 - * */ + */ @DeleteMapping("feedback/{id}") public RestResp deleteFeedback(@PathVariable Long id) { return userService.deleteFeedback(UserHolder.getUserId(), id); @@ -73,29 +74,37 @@ public RestResp deleteFeedback(@PathVariable Long id) { /** * 发表评论接口 - * */ + */ @PostMapping("comment") public RestResp comment(@Valid @RequestBody UserCommentReqDto dto) { dto.setUserId(UserHolder.getUserId()); return bookService.saveComment(dto); } + /** + * 修改评论接口 + */ + @PutMapping("comment/{id}") + public RestResp updateComment(@PathVariable Long id, String content) { + return bookService.updateComment(UserHolder.getUserId(), id, content); + } + /** * 删除评论接口 - * */ + */ @DeleteMapping("comment/{id}") public RestResp deleteComment(@PathVariable Long id) { - return bookService.deleteComment(UserHolder.getUserId(),id); + return bookService.deleteComment(UserHolder.getUserId(), id); } /** * 查询书架状态接口 * 0-不在书架 * 1-已在书架 - * */ + */ @GetMapping("bookshelf_status") public RestResp getBookshelfStatus(@RequestBody String bookId) { - return userService.getBookshelfStatus(UserHolder.getUserId(),bookId); + return userService.getBookshelfStatus(UserHolder.getUserId(), bookId); } } diff --git a/src/main/java/io/github/xxyopen/novel/dto/resp/BookCommentRespDto.java b/src/main/java/io/github/xxyopen/novel/dto/resp/BookCommentRespDto.java index d942fcc3..37bf7b7c 100644 --- a/src/main/java/io/github/xxyopen/novel/dto/resp/BookCommentRespDto.java +++ b/src/main/java/io/github/xxyopen/novel/dto/resp/BookCommentRespDto.java @@ -34,6 +34,8 @@ public static class CommentInfo { @JsonSerialize(using = UsernameSerializer.class) private String commentUser; + private Long commentUserId; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime commentTime; diff --git a/src/main/java/io/github/xxyopen/novel/dto/resp/UserLoginRespDto.java b/src/main/java/io/github/xxyopen/novel/dto/resp/UserLoginRespDto.java index 34c22016..ad05e240 100644 --- a/src/main/java/io/github/xxyopen/novel/dto/resp/UserLoginRespDto.java +++ b/src/main/java/io/github/xxyopen/novel/dto/resp/UserLoginRespDto.java @@ -12,6 +12,8 @@ @Builder public class UserLoginRespDto { + private Long uid; + private String nickName; private String token; diff --git a/src/main/java/io/github/xxyopen/novel/dto/resp/UserRegisterRespDto.java b/src/main/java/io/github/xxyopen/novel/dto/resp/UserRegisterRespDto.java new file mode 100644 index 00000000..e6cb65ca --- /dev/null +++ b/src/main/java/io/github/xxyopen/novel/dto/resp/UserRegisterRespDto.java @@ -0,0 +1,18 @@ +package io.github.xxyopen.novel.dto.resp; + +import lombok.Builder; +import lombok.Data; + +/** + * 用户注册 响应DTO + * @author xiongxiaoyang + * @date 2022/5/17 + */ +@Data +@Builder +public class UserRegisterRespDto { + + private Long uid; + + private String token; +} diff --git a/src/main/java/io/github/xxyopen/novel/service/BookService.java b/src/main/java/io/github/xxyopen/novel/service/BookService.java index ed28b621..a4d48412 100644 --- a/src/main/java/io/github/xxyopen/novel/service/BookService.java +++ b/src/main/java/io/github/xxyopen/novel/service/BookService.java @@ -141,4 +141,13 @@ public interface BookService { * @return void * */ RestResp deleteComment(Long userId, Long commentId); + + /** + * 修改评论 + * @param userId 用户ID + * @param id 评论ID + * @param content 修改后的评论内容 + * @return void + * */ + RestResp updateComment(Long userId, Long id, String content); } diff --git a/src/main/java/io/github/xxyopen/novel/service/UserService.java b/src/main/java/io/github/xxyopen/novel/service/UserService.java index 54bae55d..882f4b49 100644 --- a/src/main/java/io/github/xxyopen/novel/service/UserService.java +++ b/src/main/java/io/github/xxyopen/novel/service/UserService.java @@ -5,6 +5,7 @@ import io.github.xxyopen.novel.dto.req.UserLoginReqDto; import io.github.xxyopen.novel.dto.req.UserRegisterReqDto; import io.github.xxyopen.novel.dto.resp.UserLoginRespDto; +import io.github.xxyopen.novel.dto.resp.UserRegisterRespDto; /** * 会员模块 服务类 @@ -20,7 +21,7 @@ public interface UserService { * @param dto 注册参数 * @return JWT */ - RestResp register(UserRegisterReqDto dto); + RestResp register(UserRegisterReqDto dto); /** * 用户登录 diff --git a/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java b/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java index a5f523f5..486835ec 100644 --- a/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java +++ b/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java @@ -248,6 +248,7 @@ public RestResp listNewestComments(Long bookId) { List commentInfos = bookComments.stream() .map(v -> BookCommentRespDto.CommentInfo.builder() .id(v.getId()) + .commentUserId(v.getUserId()) .commentUser(userInfoMap.get(v.getUserId())) .commentContent(v.getCommentContent()) .commentTime(v.getCreateTime()).build()).toList(); @@ -267,6 +268,17 @@ public RestResp deleteComment(Long userId, Long commentId) { return RestResp.ok(); } + @Override + public RestResp updateComment(Long userId, Long id, String content) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq(DatabaseConsts.CommonColumnEnum.ID.getName(), id) + .eq(DatabaseConsts.BookCommentTable.COLUMN_USER_ID,userId); + BookComment bookComment = new BookComment(); + bookComment.setCommentContent(content); + bookCommentMapper.update(bookComment,queryWrapper); + return RestResp.ok(); + } + @Override public RestResp getBookContentAbout(Long chapterId) { // 查询章节信息 diff --git a/src/main/java/io/github/xxyopen/novel/service/impl/UserServiceImpl.java b/src/main/java/io/github/xxyopen/novel/service/impl/UserServiceImpl.java index ec9c9cfb..dfc598eb 100644 --- a/src/main/java/io/github/xxyopen/novel/service/impl/UserServiceImpl.java +++ b/src/main/java/io/github/xxyopen/novel/service/impl/UserServiceImpl.java @@ -18,6 +18,7 @@ import io.github.xxyopen.novel.dto.req.UserLoginReqDto; import io.github.xxyopen.novel.dto.req.UserRegisterReqDto; import io.github.xxyopen.novel.dto.resp.UserLoginRespDto; +import io.github.xxyopen.novel.dto.resp.UserRegisterRespDto; import io.github.xxyopen.novel.manager.VerifyCodeManager; import io.github.xxyopen.novel.service.UserService; import lombok.RequiredArgsConstructor; @@ -49,7 +50,7 @@ public class UserServiceImpl implements UserService { private final JwtUtils jwtUtils; @Override - public RestResp register(UserRegisterReqDto dto) { + public RestResp register(UserRegisterReqDto dto) { // 校验图形验证码是否正确 if (!verifyCodeManager.imgVerifyCodeOk(dto.getSessionId(), dto.getVelCode())) { // 图形验证码校验失败 @@ -79,7 +80,13 @@ public RestResp register(UserRegisterReqDto dto) { verifyCodeManager.removeImgVerifyCode(dto.getSessionId()); // 生成JWT 并返回 - return RestResp.ok(jwtUtils.generateToken(userInfo.getId(), SystemConfigConsts.NOVEL_FRONT_KEY)); + return RestResp.ok( + UserRegisterRespDto.builder() + .token(jwtUtils.generateToken(userInfo.getId(), SystemConfigConsts.NOVEL_FRONT_KEY)) + .uid(userInfo.getId()) + .build() + ); + } @Override @@ -104,6 +111,7 @@ public RestResp login(UserLoginReqDto dto) { // 登录成功,生成JWT并返回 return RestResp.ok(UserLoginRespDto.builder() .token(jwtUtils.generateToken(userInfo.getId(), SystemConfigConsts.NOVEL_FRONT_KEY)) + .uid(userInfo.getId()) .nickName(userInfo.getNickName()).build()); }