package cc.mrbird.febs.mall.controller.order; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.mall.dto.AddCartDto; import cc.mrbird.febs.mall.dto.DelCartGoodsDto; import cc.mrbird.febs.mall.dto.GoodsCntDto; import cc.mrbird.febs.mall.entity.MallShoppingCart; import cc.mrbird.febs.mall.service.IApiMallShoppingCartService; import cc.mrbird.febs.mall.vo.ShoppingCartGoodsVo; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; /** * @author wzy * @date 2021-09-17 **/ @Slf4j @Validated @RestController @RequiredArgsConstructor @RequestMapping(value = "/api/cart") @Api(value = "ApiMallShoppingCartController", tags = "365购物车") public class ApiMallShoppingCartController { private final IApiMallShoppingCartService mallShoppingCartService; @ApiOperation(value = "获取购物车商品列表", notes = "获取购物车商品列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ShoppingCartGoodsVo.class) }) @PostMapping(value = "/findCartGoodsList") public FebsResponse findCartGoodsList(@RequestParam(required = false, value = "type") Integer type) { return new FebsResponse().success().data(mallShoppingCartService.findCartGoodsList(type)); } @ApiOperation(value = "添加商品到购物车", notes = "添加商品到购物车") @PostMapping(value = "/addGoodsToCart") public FebsResponse addGoodsToCart(@RequestBody List addCartDto) { mallShoppingCartService.addGoodsToCart(addCartDto); return new FebsResponse().success().data("添加成功"); } @ApiOperation(value = "从购物车中删除商品", notes = "从购物车中删除商品") @PostMapping(value = "/delGoods") public FebsResponse delGoods(@RequestBody DelCartGoodsDto delCartGoodsDto) { if(CollUtil.isEmpty(delCartGoodsDto.getIds())){ return new FebsResponse().fail().data("请选择要删除的商品"); } mallShoppingCartService.removeByIds(delCartGoodsDto.getIds()); return new FebsResponse().success().data("删除成功"); } @ApiOperation(value = "修改购物车商品数量", notes = "修改购物车商品数量") @PostMapping(value = "/goodsCnt") public FebsResponse goodsCnt(@RequestBody GoodsCntDto goodsCntDto) { MallShoppingCart shoppingCart = new MallShoppingCart(); shoppingCart.setId(goodsCntDto.getId()); shoppingCart.setCnt(goodsCntDto.getCnt()); mallShoppingCartService.updateById(shoppingCart); return new FebsResponse().success(); } }