Compare commits

...

2 Commits

Author SHA1 Message Date
zhao 2dbe52bce6 Merge remote-tracking branch 'origin/master' 2024-07-23 14:20:30 +08:00
zhao 3982a2c930 修改购物车功能 2024-07-23 14:20:18 +08:00
3 changed files with 27 additions and 15 deletions

View File

@ -112,8 +112,14 @@ public class TShoppingTrolleyController {
} }
@PostMapping("/add") @PostMapping("/add")
@Operation(summary = "添加购物车") @Operation(summary = "添加购物车")
public Result<String> add(@RequestBody TShoppingTrolleyEntity entity){ public Result<String> add(HttpServletRequest request, @RequestParam Integer bookId){
tShoppingTrolleyService.add(entity); 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("加入购物车成功"); return Result.ok("加入购物车成功");
} }
} }

View File

@ -28,5 +28,5 @@ public interface TShoppingTrolleyService extends BaseService<TShoppingTrolleyEnt
void save(Integer userId, Integer bookId, Date date); void save(Integer userId, Integer bookId, Date date);
TShoppingTrolleyEntity add(TShoppingTrolleyEntity entity); TShoppingTrolleyEntity add(Integer userId, Integer bookId);
} }

View File

@ -79,29 +79,35 @@ public class TShoppingTrolleyServiceImpl extends BaseServiceImpl<TShoppingTrolle
} }
@Override @Override
public TShoppingTrolleyEntity add(TShoppingTrolleyEntity entity) { public TShoppingTrolleyEntity add(Integer userId, Integer bookId) {
LambdaQueryWrapper<TShoppingTrolleyEntity> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<TShoppingTrolleyEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(TShoppingTrolleyEntity::getUserId, entity.getUserId()); queryWrapper.eq(TShoppingTrolleyEntity::getUserId, userId);
queryWrapper.eq(TShoppingTrolleyEntity::getBookId, bookId);
TShoppingTrolleyEntity existingEntity = baseMapper.selectOne(queryWrapper); TShoppingTrolleyEntity existingEntity = baseMapper.selectOne(queryWrapper);
if (existingEntity != null) { if (existingEntity != null) {
// 如果购物车中已存在该记录则增加数量
Integer number = existingEntity.getNumber(); Integer number = existingEntity.getNumber();
if (number != null) { //为空+1不为空为1
existingEntity.setNumber(number + 1); existingEntity.setNumber(number != null ? number + 1 : 1);
} else {
existingEntity.setNumber(1);
}
baseMapper.updateById(existingEntity); baseMapper.updateById(existingEntity);
return existingEntity;
} else { } else {
// 如果购物车中不存在该记录则创建新记录
TShoppingTrolleyEntity newEntity = new TShoppingTrolleyEntity(); TShoppingTrolleyEntity newEntity = new TShoppingTrolleyEntity();
newEntity.setUserId(entity.getUserId()); newEntity.setUserId(userId);
newEntity.setNumber(1); newEntity.setBookId(bookId);
newEntity.setNumber(1); // 初始数量为1
baseMapper.insert(newEntity); baseMapper.insert(newEntity);
return newEntity; existingEntity = newEntity; // 返回新创建的实体
}
}
} }
return existingEntity;
}
}