修改购物车功能
This commit is contained in:
parent
b250a8a8d3
commit
3982a2c930
|
@ -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("加入购物车成功");
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -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);
|
||||||
}
|
}
|
|
@ -79,28 +79,34 @@ 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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user