From 8d3eb9f511ba33bc338397badeb59bc697ba6081 Mon Sep 17 00:00:00 2001
From: phpcjl <phpcjl@gmail.com>
Date: 星期三, 18 十二月 2024 17:42:24 +0800
Subject: [PATCH] 1
---
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java | 146 +++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 135 insertions(+), 11 deletions(-)
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java
index 1a5b4f5..2d86a41 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/GoodsController.java
@@ -1,19 +1,24 @@
package com.ruoyi.other.controller;
+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.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.controller.BaseController;
-import com.ruoyi.common.core.web.domain.AjaxResult;
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 org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import io.swagger.annotations.ApiParam;
+import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import java.util.List;
/**
* <p>
@@ -29,26 +34,145 @@
public class GoodsController extends BaseController {
@Resource
private GoodsService goodsService;
+ @Resource
+ private VipSettingClient settingClient;
+
+ /**
+ * 添加商品
+ */
+ @PostMapping("/addGoods")
+ @ApiOperation(value = "发布商品", tags = {"管理后台-商品管理"})
+ public R<Void> addGoods(@RequestBody Goods goods) {
+ goodsService.addGoods(goods);
+ return R.ok();
+ }
+
+ /**
+ * 管理后台商品列表
+ */
+ @GetMapping("/manageGoodsList")
+ @ApiOperation(value = "商品列表", tags = {"管理后台-商品管理"})
+ public R<IPage<Goods>> manageGoodsList(@ApiParam("页码") @RequestParam Integer pageNum,
+ @ApiParam("每一页数据大小") Integer pageSize,
+ Goods goods){
+ return R.ok(goodsService.getManageGoodsList(new Page<>(pageNum, pageSize), goods));
+ }
+
+ /**
+ * 后台商品详情
+ */
+ @GetMapping("/manageGoodsDetail/{goodsId}")
+ @ApiOperation(value = "商品详情", tags = {"管理后台-商品管理"})
+ public R<Goods> manageGoodsDetail(@PathVariable("goodsId") Long goodsId){
+ return R.ok(goodsService.getManageGoodsDetail(goodsId));
+ }
+
+ /**
+ * 后台商品修改
+ */
+ @PutMapping("/manageGoodsUpdate")
+ @ApiOperation(value = "商品修改", tags = {"管理后台-商品管理"})
+ public R<Void> manageGoodsUpdate(@RequestBody Goods goods){
+ goodsService.updateManageGoods(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();
+ }
+
+
+ /**
+ * 后台商品删除
+ */
+ @DeleteMapping("/manageGoodsDelete/{goodsId}")
+ @ApiOperation(value = "商品删除", tags = {"管理后台-商品管理"})
+ public R<Void> manageGoodsDelete(@PathVariable("goodsId") Long goodsId){
+ goodsService.removeById(goodsId);
+ return R.ok();
+ }
+
+ /**
+ * 获取会员等级信息
+ */
+ @GetMapping("/getVipSetting")
+ @ApiOperation(value = "会员等级信息", tags = {"管理后台-商品管理"})
+ public R<List<VipSetting>> getVipSetting(){
+ return settingClient.info();
+ }
+
+
/**
* 商品列表
*/
@GetMapping("/goodsList")
- @ApiOperation(value = "商品列表", tags = {"小程序-商城-首页-热门商品列表"})
- public TableDataInfo goodsList(Goods goods){
+ @ApiOperation(value = "热门商品列表", tags = {"小程序-商城-首页", "小程序-首页"})
+ public R<TableDataInfo> goodsList(Goods goods){
startPage();
- return getDataTable(goodsService.goodsList(goods));
+ return R.ok(getDataTable(goodsService.goodsList(goods)));
}
+
+
+ /**
+ * 指定门店商品
+ */
+ @GetMapping("/getGoodsListByShopId")
+ @ApiOperation(value = "商品购买列表", tags = {"小程序-首页-门店详情"})
+ public R<TableDataInfo> getGoodsListByShopId(@ApiParam("门店id") @RequestParam Integer shopId) {
+ startPage();
+ return R.ok(getDataTable(goodsService.getGoodsListByShopId(shopId)));
+ }
+
/**
* 商品详情
*/
@GetMapping("/goodsDetail/{goodsId}")
- @ApiOperation(value = "商品详情", tags = {"小程序-商城-首页-商品详情"})
- public AjaxResult goodsDetail(@PathVariable("goodsId") Long goodsId){
- return success(goodsService.goodsDetail(goodsId));
+ @ApiOperation(value = "商品详情", tags = {"小程序-商城-首页"})
+ public R<GoodsVO> goodsDetail(@PathVariable("goodsId") Long goodsId){
+ return R.ok(goodsService.goodsDetail(goodsId));
+ }
+
+
+ /**
+ * 根据类型(1=服务商品,2=单品商品)获取商品数据
+ * @param type
+ * @return
+ */
+ @ResponseBody
+ @PostMapping("/getGoodsByType")
+ public R<List<Goods>> getGoodsByType(@RequestParam("type") Integer type){
+ List<Goods> list = goodsService.list(new LambdaQueryWrapper<Goods>().eq(Goods::getType, type).eq(Goods::getDelFlag, 0).eq(Goods::getStatus, 2));
+ return R.ok(list);
+ }
+
+
+ /**
+ * 根据id获取商品信息
+ * @param id
+ * @return
+ */
+ @ResponseBody
+ @PostMapping("/getGoodsById")
+ public R<Goods> getGoodsById(@RequestParam("id") Integer id){
+ Goods goods = goodsService.getById(id);
+ return R.ok(goods);
}
+ @ResponseBody
+ @PostMapping("/getGoodsByIds")
+ public R<List<Goods>> getGoodsByIds(@RequestParam("ids") String [] ids){
+ List<Goods> goods = goodsService.lambdaQuery().in(Goods::getId, ids).list();
+ return R.ok(goods);
+ }
}
--
Gitblit v1.7.1