From 3982a2c9309ea993907483a5e50a87e4b867b49a Mon Sep 17 00:00:00 2001 From: zhao <2796247050@qq.com> Date: Tue, 23 Jul 2024 14:20:18 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B4=AD=E7=89=A9?= =?UTF-8?q?=E8=BD=A6=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TShoppingTrolleyController.java | 10 ++++++-- .../maku/maku/service/TShoppingTrolleyService.java | 2 +- .../service/impl/TShoppingTrolleyServiceImpl.java | 30 +++++++++++++--------- 3 files changed, 27 insertions(+), 15 deletions(-) diff --git a/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java b/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java index 65f0753..d5534a7 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java @@ -112,8 +112,14 @@ public class TShoppingTrolleyController { } @PostMapping("/add") @Operation(summary = "添加购物车") - public Result add(@RequestBody TShoppingTrolleyEntity entity){ - tShoppingTrolleyService.add(entity); + public Result add(HttpServletRequest request, @RequestParam Integer bookId){ + String token = request.getHeader("token"); + TUserEntity user = (TUserEntity) redisCache.get(token); + if(ObjectUtils.isNull(user)){ + throw new ServerException(ErrorCode.REFRESH_TOKEN_INVALID); + } + Integer userId=user.getId(); + tShoppingTrolleyService.add(userId,bookId); return Result.ok("加入购物车成功"); } } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java b/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java index 012b86c..1c4f6d0 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java @@ -28,5 +28,5 @@ public interface TShoppingTrolleyService extends BaseService queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(TShoppingTrolleyEntity::getUserId, entity.getUserId()); + queryWrapper.eq(TShoppingTrolleyEntity::getUserId, userId); + queryWrapper.eq(TShoppingTrolleyEntity::getBookId, bookId); TShoppingTrolleyEntity existingEntity = baseMapper.selectOne(queryWrapper); + if (existingEntity != null) { + // 如果购物车中已存在该记录,则增加数量 Integer number = existingEntity.getNumber(); - if (number != null) { - existingEntity.setNumber(number + 1); - } else { - existingEntity.setNumber(1); - } + //为空+1,不为空为1 + existingEntity.setNumber(number != null ? number + 1 : 1); baseMapper.updateById(existingEntity); - return existingEntity; } else { + // 如果购物车中不存在该记录,则创建新记录 TShoppingTrolleyEntity newEntity = new TShoppingTrolleyEntity(); - newEntity.setUserId(entity.getUserId()); - newEntity.setNumber(1); + newEntity.setUserId(userId); + newEntity.setBookId(bookId); + newEntity.setNumber(1); // 初始数量为1 + baseMapper.insert(newEntity); - return newEntity; + existingEntity = newEntity; // 返回新创建的实体 } + + return existingEntity; } - } +} + + From 7571d13450360f865f6e0e45db68240f9996d8cb Mon Sep 17 00:00:00 2001 From: zhao <2796247050@qq.com> Date: Tue, 23 Jul 2024 14:20:48 +0800 Subject: [PATCH 2/4] zyh --- .../main/java/net/maku/maku/controller/TBookCollectionController.java | 4 ---- .../src/main/java/net/maku/maku/entity/TBookCommentEntity.java | 2 -- .../java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java | 1 - maku-server/src/main/java/net/maku/maku/vo/TBookCommentVO.java | 2 -- 4 files changed, 9 deletions(-) diff --git a/maku-server/src/main/java/net/maku/maku/controller/TBookCollectionController.java b/maku-server/src/main/java/net/maku/maku/controller/TBookCollectionController.java index ec9f3cb..c022383 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TBookCollectionController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TBookCollectionController.java @@ -113,14 +113,10 @@ public class TBookCollectionController { } Integer userId = entity.getId(); // 直接使用已经获取的用户信息 - - // Check if the book has already been collected by the user boolean isBookAlreadyCollected = tBookCollectionService.isBookAlreadyCollected(userId, bookId); if (isBookAlreadyCollected) { return Result.error("该书已经收藏过,不能重复收藏"); } - - // If not already collected, proceed with saving the collection record LocalDateTime currentTime = LocalDateTime.now(); ZoneId zoneId = ZoneId.systemDefault(); ZonedDateTime zdt = currentTime.atZone(zoneId); diff --git a/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java b/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java index df2d490..f52f149 100644 --- a/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java +++ b/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java @@ -24,8 +24,6 @@ public class TBookCommentEntity { private String comment; - private Integer parentId; - private Date createTime; private Date updateTime; diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java index 79b7856..802254f 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java @@ -80,7 +80,6 @@ public class TBookCollectionServiceImpl extends BaseServiceImpl wrapper = Wrappers.lambdaQuery(); wrapper.eq(TBookCollectionEntity::getBookId, bookId); wrapper.eq(TBookCollectionEntity::getUserId, userId); - return baseMapper.selectOne(wrapper); } @Override diff --git a/maku-server/src/main/java/net/maku/maku/vo/TBookCommentVO.java b/maku-server/src/main/java/net/maku/maku/vo/TBookCommentVO.java index d7f5b48..26af911 100644 --- a/maku-server/src/main/java/net/maku/maku/vo/TBookCommentVO.java +++ b/maku-server/src/main/java/net/maku/maku/vo/TBookCommentVO.java @@ -26,8 +26,6 @@ public class TBookCommentVO implements Serializable { private String comment; - private Integer parentId; - @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) private Date createTime; From 39c69b53b991dfe5e8d08ea483db98c2b8ca1f9b Mon Sep 17 00:00:00 2001 From: zhao <2796247050@qq.com> Date: Tue, 23 Jul 2024 15:50:02 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=9F=A5=E7=9C=8B=E8=B4=AD=E7=89=A9?= =?UTF-8?q?=E8=BD=A6=E5=92=8C=E6=B8=85=E7=A9=BA=E8=B4=AD=E7=89=A9=E8=BD=A6?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TShoppingTrolleyController.java | 49 +++++++++++----------- .../maku/maku/service/TShoppingTrolleyService.java | 4 ++ .../service/impl/TShoppingTrolleyServiceImpl.java | 14 +++++++ 3 files changed, 42 insertions(+), 25 deletions(-) diff --git a/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java b/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java index d5534a7..8386ab0 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TShoppingTrolleyController.java @@ -41,31 +41,6 @@ import java.util.List; public class TShoppingTrolleyController { private final RedisCache redisCache; private final TShoppingTrolleyService tShoppingTrolleyService; - @GetMapping("/aaa") - public Result setshoppingtrolly(HttpServletRequest request, @RequestParam Integer bookId) { - // 首先验证token的有效性,然后从Redis中获取用户信息 - String token = request.getHeader("token"); - TUserEntity entity = (TUserEntity) redisCache.get(token); - if(ObjectUtils.isNull(entity)){ - throw new ServerException(ErrorCode.REFRESH_TOKEN_INVALID); - } - - - 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()); - tShoppingTrolleyService.save(userId,bookId,date); - return Result.ok("加入购物车成功"); - - } - - @GetMapping("page") @Operation(summary = "分页") public Result> page(@ParameterObject @Valid TShoppingTrolleyQuery query){ @@ -122,4 +97,28 @@ public class TShoppingTrolleyController { tShoppingTrolleyService.add(userId,bookId); return Result.ok("加入购物车成功"); } + @GetMapping("/myshop") + @Operation(summary = "我的购物车") + public Result> myshop(HttpServletRequest request){ + String token = request.getHeader("token"); + TUserEntity user = (TUserEntity) redisCache.get(token); + if(ObjectUtils.isNull(user)){ + throw new ServerException(ErrorCode.REFRESH_TOKEN_INVALID); + } + Integer userId=user.getId(); + List list = tShoppingTrolleyService.myshop(userId); + return Result.ok(list); + } + @DeleteMapping("/clean") + @Operation(summary = "清空购物车") + public Result clean(HttpServletRequest request){ + String token = request.getHeader("token"); + TUserEntity user = (TUserEntity) redisCache.get(token); + if(ObjectUtils.isNull(user)){ + throw new ServerException(ErrorCode.REFRESH_TOKEN_INVALID); + } + Integer userId=user.getId(); + tShoppingTrolleyService.clean(userId); + return Result.ok("清空购物车成功"); + } } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java b/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java index 1c4f6d0..3545aef 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TShoppingTrolleyService.java @@ -29,4 +29,8 @@ public interface TShoppingTrolleyService extends BaseService myshop(Integer userId); + + void clean(Integer userId); } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java index a19b37c..0cf42f8 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TShoppingTrolleyServiceImpl.java @@ -104,6 +104,20 @@ public class TShoppingTrolleyServiceImpl extends BaseServiceImpl myshop(Integer userId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TShoppingTrolleyEntity::getUserId, userId); + return baseMapper.selectList(queryWrapper); + } + + @Override + public void clean(Integer userId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TShoppingTrolleyEntity::getUserId, userId); + baseMapper.delete(queryWrapper); + } } From 7ef5265f919453693948fbb8a0604f7b4f98f50c Mon Sep 17 00:00:00 2001 From: zhao <2796247050@qq.com> Date: Tue, 23 Jul 2024 15:50:59 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java | 1 - .../java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java b/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java index f52f149..154e04f 100644 --- a/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java +++ b/maku-server/src/main/java/net/maku/maku/entity/TBookCommentEntity.java @@ -11,7 +11,6 @@ import java.util.Date; * @author 阿沐 babamu@126.com * @since 1.0.0 2024-07-16 */ - @Data @TableName("t_book_comment") public class TBookCommentEntity { diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java index 802254f..2c8b940 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookCollectionServiceImpl.java @@ -71,6 +71,7 @@ public class TBookCollectionServiceImpl extends BaseServiceImpl wrapper = Wrappers.lambdaQuery(); wrapper.eq(TBookCollectionEntity::getBookId, bookId); wrapper.eq(TBookCollectionEntity::getUserId, userId); + wrapper.eq(TBookCollectionEntity::getStatus, 1); return baseMapper.selectCount(wrapper) > 0; } }