diff --git a/maku-framework/src/main/resources/auth.yml b/maku-framework/src/main/resources/auth.yml index 65e0077..dd2dbda 100644 --- a/maku-framework/src/main/resources/auth.yml +++ b/maku-framework/src/main/resources/auth.yml @@ -13,6 +13,6 @@ auth: - /maku/t_book/{id} - /maku/t_book/{id} - /user/login - - /maku/t_shopping_trolley/aaa + - /maku/t_shopping_trolley/** 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..446926a 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 @@ -65,27 +65,24 @@ public class TBookController { return Result.ok(entity); } - @GetMapping("/collection") + @PostMapping("/collection") @Operation(summary = "收藏图书") - public Result setbookcollection(HttpServletRequest request, @RequestParam Integer bookId) { + public Result setbookcollection(HttpServletRequest request, @RequestParam Integer bookId) { // 首先验证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()); tBookCollectionService.save(userId,bookId,date); return Result.ok("收藏图书成功"); - } 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 c43230d..07cc1e1 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 @@ -63,13 +63,16 @@ public class TShoppingTrolleyController { @GetMapping("page") @Operation(summary = "分页") - @PreAuthorize("hasAuthority('maku:t_shopping_trolley:page')") public Result> page(@ParameterObject @Valid TShoppingTrolleyQuery query){ PageResult page = tShoppingTrolleyService.page(query); return Result.ok(page); } - + @GetMapping("/list") + @Operation(summary = "列表") + public Result> list(){ + return Result.ok(tShoppingTrolleyService.list()); + } @GetMapping("{id}") @Operation(summary = "信息") // @PreAuthorize("hasAuthority('maku:t_shopping_trolley:info')") @@ -78,7 +81,6 @@ public class TShoppingTrolleyController { return Result.ok(TShoppingTrolleyConvert.INSTANCE.convert(entity)); } - @PostMapping @Operation(summary = "保存") @PreAuthorize("hasAuthority('maku:t_shopping_trolley:save')") @@ -87,7 +89,6 @@ public class TShoppingTrolleyController { return Result.ok(); } - @PutMapping @Operation(summary = "修改") @PreAuthorize("hasAuthority('maku:t_shopping_trolley:update')") @@ -100,9 +101,15 @@ public class TShoppingTrolleyController { @DeleteMapping @Operation(summary = "删除") @PreAuthorize("hasAuthority('maku:t_shopping_trolley:delete')") - public Result delete(@RequestBody List idList){ + public Result delete( @RequestBody List idList){ tShoppingTrolleyService.delete(idList); return Result.ok(); } + @PostMapping("/add") + @Operation(summary = "添加购物车") + public Result add(@RequestBody TShoppingTrolleyEntity entity){ + tShoppingTrolleyService.add(entity); + return Result.ok("加入购物车成功"); + } } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/controller/TUserController.java b/maku-server/src/main/java/net/maku/maku/controller/TUserController.java index d37d4fc..3a3e027 100644 --- a/maku-server/src/main/java/net/maku/maku/controller/TUserController.java +++ b/maku-server/src/main/java/net/maku/maku/controller/TUserController.java @@ -62,7 +62,6 @@ public class TUserController { } } - @PutMapping("/updateUser") @Operation(summary = "修改") public Result updateUser(@RequestBody TUserVO vo){ diff --git a/maku-server/src/main/java/net/maku/maku/entity/TBookEntity.java b/maku-server/src/main/java/net/maku/maku/entity/TBookEntity.java index a6799e9..f5b094f 100644 --- a/maku-server/src/main/java/net/maku/maku/entity/TBookEntity.java +++ b/maku-server/src/main/java/net/maku/maku/entity/TBookEntity.java @@ -9,7 +9,7 @@ import java.math.BigDecimal; import java.util.Date; /** - * + * * * @author 阿沐 babamu@126.com * @since 1.0.0 2024-07-16 diff --git a/maku-server/src/main/java/net/maku/maku/entity/TShoppingTrolleyEntity.java b/maku-server/src/main/java/net/maku/maku/entity/TShoppingTrolleyEntity.java index 0efcbc9..2d1ea7b 100644 --- a/maku-server/src/main/java/net/maku/maku/entity/TShoppingTrolleyEntity.java +++ b/maku-server/src/main/java/net/maku/maku/entity/TShoppingTrolleyEntity.java @@ -22,6 +22,8 @@ public class TShoppingTrolleyEntity { private Integer bookId; + private Integer number; + private Date createTime; private Date updateTime; 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 7323fa2..012b86c 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 @@ -26,4 +26,7 @@ public interface TShoppingTrolleyService extends BaseService idList); void save(Integer userId, Integer bookId, Date date); + + + TShoppingTrolleyEntity add(TShoppingTrolleyEntity entity); } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/TUserService.java b/maku-server/src/main/java/net/maku/maku/service/TUserService.java index 5dbb763..075d6fc 100644 --- a/maku-server/src/main/java/net/maku/maku/service/TUserService.java +++ b/maku-server/src/main/java/net/maku/maku/service/TUserService.java @@ -28,4 +28,5 @@ public interface TUserService extends BaseService { TUserVO updateUser(TUserVO vo); + } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java b/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java index 9596276..7d3221e 100644 --- a/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java +++ b/maku-server/src/main/java/net/maku/maku/service/impl/TBookServiceImpl.java @@ -68,7 +68,7 @@ public class TBookServiceImpl extends BaseServiceImpl imp @Override public TBookEntity getByName(String bookName) { LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); - wrapper.eq(TBookEntity::getBookName, bookName); + wrapper.like(TBookEntity::getBookName, bookName); TBookEntity tBookEntity = baseMapper.selectOne(wrapper); if (ObjectUtil.isNull(tBookEntity)){ throw new ServerException("没有找到书籍"); 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 aadd3b6..cdca5c2 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 @@ -6,9 +6,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.AllArgsConstructor; import net.maku.framework.common.utils.PageResult; +import net.maku.framework.common.utils.Result; import net.maku.framework.mybatis.service.impl.BaseServiceImpl; import net.maku.maku.convert.TShoppingTrolleyConvert; -import net.maku.maku.entity.TBookCollectionEntity; import net.maku.maku.entity.TShoppingTrolleyEntity; import net.maku.maku.query.TShoppingTrolleyQuery; import net.maku.maku.vo.TShoppingTrolleyVO; @@ -78,4 +78,27 @@ public class TShoppingTrolleyServiceImpl extends BaseServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TShoppingTrolleyEntity::getUserId, entity.getUserId()); + TShoppingTrolleyEntity existingEntity = baseMapper.selectOne(queryWrapper); + if (existingEntity != null) { + Integer number = existingEntity.getNumber(); + if (number != null) { + existingEntity.setNumber(number + 1); + } else { + existingEntity.setNumber(1); + } + baseMapper.updateById(existingEntity); + return existingEntity; + } else { + TShoppingTrolleyEntity newEntity = new TShoppingTrolleyEntity(); + newEntity.setUserId(entity.getUserId()); + newEntity.setNumber(1); + baseMapper.insert(newEntity); + return newEntity; + } + } + } \ No newline at end of file diff --git a/maku-server/src/main/java/net/maku/maku/vo/TShoppingTrolleyVO.java b/maku-server/src/main/java/net/maku/maku/vo/TShoppingTrolleyVO.java index 1c614e8..9b2fb99 100644 --- a/maku-server/src/main/java/net/maku/maku/vo/TShoppingTrolleyVO.java +++ b/maku-server/src/main/java/net/maku/maku/vo/TShoppingTrolleyVO.java @@ -24,6 +24,8 @@ public class TShoppingTrolleyVO implements Serializable { private Integer bookId; + private Integer number; + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) private Date createTime;