puzhibing
2025-01-02 210828d1a6947596fe00ab30fcd8725c6714dde4
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java
@@ -4,15 +4,17 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.other.api.domain.Goods;
import com.ruoyi.other.api.domain.VipSetting;
import com.ruoyi.other.api.feignClient.VipSettingClient;
import com.ruoyi.other.service.GoodsService;
import com.ruoyi.other.vo.GoodsVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -32,6 +34,8 @@
public class GoodsController extends BaseController {
    @Resource
    private GoodsService goodsService;
    @Resource
    private VipSettingClient settingClient;
    /**
     * 添加商品
@@ -44,7 +48,7 @@
    }
    /**
     * 后台管理商品列表
     * 管理后台商品列表
     */
    @GetMapping("/manageGoodsList")
    @ApiOperation(value = "商品列表", tags = {"管理后台-商品管理"})
@@ -73,6 +77,35 @@
        return R.ok();
    }
    @PutMapping("/editGoodsSort")
    @ApiOperation(value = "商品修改排序", tags = {"管理后台-商品管理"})
    @ApiImplicitParams({
            @ApiImplicitParam(value = "商品id", name = "id", dataType = "int", required = true),
            @ApiImplicitParam(value = "排序", name = "sort", dataType = "int", required = true),
    })
    public R editGoodsSort(@RequestParam("id") Integer id, @RequestParam("sort") Integer sort){
        Goods goods = goodsService.getById(id);
        goods.setSort(sort);
        goodsService.updateById(goods);
        return R.ok();
    }
    /**
     * 更新上/下架状态
     */
    @PutMapping("/manageGoodsStatus/{goodsId}/{status}")
    @ApiOperation(value = "商品上/下架", tags = {"管理后台-商品管理"})
    public R<Void> manageGoodsStatus(@PathVariable("goodsId") Long goodsId,
                                     @PathVariable("status") Integer status){
        goodsService.lambdaUpdate().eq(Goods::getId, goodsId).set(Goods::getStatus, status).update();
        return R.ok();
    }
    /**
     * 后台商品删除
     */
@@ -83,6 +116,15 @@
        return R.ok();
    }
    /**
     * 获取会员等级信息
     */
    @GetMapping("/getVipSetting")
    @ApiOperation(value = "会员等级信息", tags = {"管理后台-商品管理"})
    public R<List<VipSetting>> getVipSetting(){
        return settingClient.info();
    }
    /**
@@ -90,9 +132,8 @@
     */
    @GetMapping("/goodsList")
    @ApiOperation(value = "热门商品列表", tags = {"小程序-商城-首页", "小程序-首页"})
    public R<TableDataInfo> goodsList(Goods goods){
        startPage();
        return R.ok(getDataTable(goodsService.goodsList(goods)));
    public R<PageInfo<GoodsVO>> goodsList(Goods goods){
        return R.ok(goodsService.goodsList(goods));
    }
@@ -101,9 +142,10 @@
     */
    @GetMapping("/getGoodsListByShopId")
    @ApiOperation(value = "商品购买列表", tags = {"小程序-首页-门店详情"})
    public R<TableDataInfo> getGoodsListByShopId(@ApiParam("门店id") @RequestParam Integer shopId) {
        startPage();
        return R.ok(getDataTable(goodsService.getGoodsListByShopId(shopId)));
    public R<PageInfo<Goods>> getGoodsListByShopId(@ApiParam("门店id") Integer shopId, Integer pageCurr, Integer pageSize) {
        PageInfo<Goods> pageInfo = new PageInfo(pageCurr, pageSize);
        List<Goods> goodsList = goodsService.getGoodsListByShopId(pageInfo, shopId);
        return R.ok(pageInfo.setRecords(goodsList));
    }
@@ -145,7 +187,7 @@
    @ResponseBody
    @PostMapping("/getGoodsByIds")
    public R<List<Goods>> getGoodsByIds(@RequestParam("ids") String [] ids){
        List<Goods> goods = goodsService.lambdaQuery().in(Goods::getId, ids).eq(Goods::getStatus, 0).list();
        List<Goods> goods = goodsService.lambdaQuery().in(Goods::getId, ids).list();
        return R.ok(goods);
    }