| package com.xzx.gc.shop.controller; | 
|   | 
|   | 
| import com.github.pagehelper.PageInfo; | 
| import com.xzx.gc.common.Result; | 
| import com.xzx.gc.common.request.BaseController; | 
| import com.xzx.gc.model.JsonResult; | 
| import com.xzx.gc.service.BaseAccountService; | 
| import com.xzx.gc.shop.dto.*; | 
| import com.xzx.gc.shop.service.GoodsService; | 
| import com.xzx.gc.shop.service.OrderService; | 
| import com.xzx.gc.shop.service.ScoreDetailsService; | 
| import com.xzx.gc.shop.vo.*; | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiOperation; | 
| import io.swagger.annotations.ApiResponse; | 
| import io.swagger.annotations.ApiResponses; | 
| import lombok.extern.slf4j.Slf4j; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.web.bind.annotation.*; | 
|   | 
| import javax.servlet.http.HttpServletRequest; | 
| import java.util.List; | 
| import java.util.Map; | 
|   | 
| @RestController | 
| @Api(tags = {"积分商城--API商品管理"}) | 
| @Slf4j | 
| public class ApiGoodsController extends BaseController { | 
|   | 
|     @Autowired | 
|     private GoodsService goodsService; | 
|   | 
|     @ApiOperation("分类列表") | 
|     @ApiResponses( | 
|             @ApiResponse(code = 200, message = "success", response = GoodsCategoryVo.class) | 
|     ) | 
|     @GetMapping(value = "/goods/goodsCategory") | 
|     public JsonResult<List<GoodsCategoryVo>> goodsCategory() { | 
|         return JsonResult.success(goodsService.findCategoryWithChildren()); | 
|     } | 
|   | 
|     @ApiOperation("商品列表") | 
|     @ApiResponses( | 
|             @ApiResponse(code = 200, message = "success", response = XcxGoodsListVo.class) | 
|     ) | 
|     @PostMapping(value = "/goods/goodsList") | 
|     public JsonResult<PageInfo<XcxGoodsListVo>> goodsList(@RequestBody XcxGoodsListDto xcxGoodsListDto, HttpServletRequest request) { | 
|         String userId = getUserId(request); | 
|         xcxGoodsListDto.setUserId(userId); | 
|         return JsonResult.success(goodsService.findGoodsListInPage(xcxGoodsListDto)); | 
|     } | 
|   | 
|     @ApiOperation("商品详情") | 
|     @ApiResponses( | 
|             @ApiResponse(code = 200, message = "success", response = XcxGoodsDetailVo.class) | 
|     ) | 
|     @PostMapping(value = "/goods/goodsDetails/{id}") | 
|     public JsonResult<XcxGoodsDetailVo> goodsDetails(@PathVariable("id") Long id) { | 
|         return JsonResult.success(goodsService.findGoodsDetails(id)); | 
|     } | 
|   | 
|     @ApiOperation("商品搜索历史记录") | 
|     @ApiResponses( | 
|             @ApiResponse(code = 200, message = "success", response = GoodsSearchVo.class) | 
|     ) | 
|     @PostMapping(value = "/goods/goodsSearch") | 
|     public JsonResult<List<GoodsSearchVo>> goodsSearch(@RequestBody GoodsSearchDto goodsSearchDto, HttpServletRequest request) { | 
|         String userId = getUserId(request); | 
|         goodsSearchDto.setUserId(userId); | 
|         return JsonResult.success(goodsService.goodsSearch(goodsSearchDto)); | 
|     } | 
|   | 
|     @ApiOperation("商品搜索历史记录--删除") | 
|     @PostMapping(value = "/goods/delGoodsSearch/{id}") | 
|     public Result<String> delGoodsSearch (@PathVariable("id") Long id, HttpServletRequest request) { | 
|         goodsService.delGoodsSearch(id, getUserId(request)); | 
|         return Result.success(); | 
|     } | 
|   | 
|     @ApiOperation("商品搜索历史记录--全部清空") | 
|     @PostMapping(value = "/goods/delAllSearch") | 
|     public Result<String> delAllSearch (@RequestBody GoodsSearchDto goodsSearchDto, HttpServletRequest request) { | 
|         goodsService.delAllSearch(getUserId(request)); | 
|         return Result.success(); | 
|     } | 
|   | 
| } |