完成功能
1.改正因数据库改动导致的错误
2.购物车相关操作
1.添加购物车
相关页面

相关代码:
function checkSelectIndex() {
let flag1 = true
console.log(flag);
consolelog(selectIndex);
for (let i = 0; i < selectIndex.length; i++) {
if (selectIndex[i] ===" ") {
flag1 = false
}
}
if (flag1 == true) {
flag=true
console.log(flag);
$('.selectDiv').eq(0).css('background','none')
$('.selectDiv').eq(0).css('border', 'none')
selectInf.value = ''
}else {
flag=false
console.log(flag);
$('.selectDiv').eq(0).css('background', 'rgba(240,56,103,0.1)')
$('.selectDiv').eq(0).css('border', '1rem rgb(240,56,103) solid')
selectInf.value = '请选择规格信息'
}
console.log(flag);
}
function addIntoShoppingCart(item) {
checkSelectIndex()
if(flag==true){
saveShoppingCart({
'goodsId': item.data.goodsId,
'userId': JSON.parse(sessionStorage.getItem('user')).userId,
'time': '',
'specificationsId': goodsSpecifications.data.specificationsId,
'count': count.value,
'shopId': item.data.shopId
}).then(()=>{
let user1=JSON.parse(sessionStorage.getItem('user'))
if(user1!=null){
getShoppingCartList(user1.userId)
}
})
}
}
2.购物车侧边效果

3.购物车详情页设计

4.合并购物车
相关代码:
@PostMapping("/saveShoppingCart")
public Result<?> saveShoppingCart(@RequestBody ShoppingCart shoppingCart){
System.out.println("shoppingCart"+shoppingCart);
QueryWrapper<ShoppingCart> queryWrapper=new QueryWrapper<>();
queryWrapper.eq("user_id",shoppingCart.getUserId()).eq("goods_id",shoppingCart.getGoodsId()).eq("specifications_id",shoppingCart.getSpecificationsId());
ShoppingCart shoppingCart1=shoppingCartService.getOne(queryWrapper);
System.out.println("shoppingCart:"+shoppingCart);
if(shoppingCart1!=null){
System.out.println("shoppingCart1:"+shoppingCart1);
shoppingCart.setCount(shoppingCart.getCount()+shoppingCart1.getCount());
shoppingCartService.removeById(shoppingCart1.getTime());
}
shoppingCart.setTime(LocalDateTime.now());
return Result.success(shoppingCartService.save(shoppingCart));
}
5.按时间、店铺分类得到购物车商品信息
@GetMapping("/selectShoppingCartList")
public Result<?> selectShoppingCartList(@RequestParam Integer userId){
QueryWrapper<ShoppingCart> queryWrapper=new QueryWrapper<>();
queryWrapper.eq("user_id",userId).groupBy("shop_id").orderByDesc("time");
List<ShoppingCart> list=shoppingCartService.list(queryWrapper);
List<ShoppingCartGroupByShop> shoppingCartGroupByShopList=new ArrayList<>();
for(ShoppingCart shoppingCart:list){
ShoppingCartGroupByShop shoppingCartGroupByShop=new ShoppingCartGroupByShop();
QueryWrapper<Shop> shopQueryWrapper=new QueryWrapper<>();
shopQueryWrapper.eq("shop_id",shoppingCart.getShopId());
shoppingCartGroupByShop.setShop(shopService.getOne(shopQueryWrapper));
QueryWrapper<ShoppingCart> queryWrapper1=new QueryWrapper<>();
queryWrapper1.eq("shop_id",shoppingCart.getShopId()).orderByDesc("time");
List<ShoppingCart> shoppingCartList=shoppingCartService.list(queryWrapper1);
List<GoodsSpecifications> goodsSpecificationsList=new ArrayList<>();
List<Goods> goodsList=new ArrayList<>();
List<Integer> countList=new ArrayList<>();
for (ShoppingCart shoppingCart1:shoppingCartList){
QueryWrapper<Goods> goodsQueryWrapper=new QueryWrapper<>();
goodsQueryWrapper.eq("goods_id",shoppingCart1.getGoodsId());
goodsList.add(goodsService.getOne(goodsQueryWrapper));
QueryWrapper<GoodsSpecifications> goodsSpecificationsQueryWrapper=new QueryWrapper<>();
goodsSpecificationsQueryWrapper.eq("specifications_id",shoppingCart1.getSpecificationsId());
goodsSpecificationsList.add(goodsSpecificationsService.getOne(goodsSpecificationsQueryWrapper));
countList.add(shoppingCart1.getCount());
}
shoppingCartGroupByShop.setGoodsList(goodsList);
shoppingCartGroupByShop.setGoodsSpecificationsList(goodsSpecificationsList);
shoppingCartGroupByShop.setGoodsCountList(countList);
shoppingCartGroupByShopList.add(shoppingCartGroupByShop);
}
return Result.success(shoppingCartGroupByShopList);
}