GoodsController.java 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. package com.sqx.modules.goods.controller;
  2. import com.sqx.common.utils.Result;
  3. import com.sqx.modules.goods.entity.Goods;
  4. import com.sqx.modules.goods.entity.GoodsAttr;
  5. import com.sqx.modules.goods.entity.GoodsClassify;
  6. import com.sqx.modules.goods.entity.GoodsShop;
  7. import com.sqx.modules.goods.service.GoodsClassifyService;
  8. import com.sqx.modules.goods.service.GoodsService;
  9. import com.sqx.modules.goods.service.GoodsShopService;
  10. import com.sqx.modules.sys.controller.AbstractController;
  11. import com.sqx.modules.sys.entity.SysUserEntity;
  12. import icu.xuyijie.secureapi.annotation.DecryptParam;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import io.swagger.annotations.ApiParam;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.List;
  19. @Api(tags={"商户端-商品"})
  20. @RestController
  21. @RequestMapping("/admin/goods")
  22. public class GoodsController extends AbstractController {
  23. @Autowired
  24. private GoodsService goodsService;
  25. @Autowired
  26. private GoodsShopService goodsShopService;
  27. @Autowired
  28. private GoodsClassifyService goodsClassifyService;
  29. @ApiOperation(value = "添加商品")
  30. @PostMapping(value = "/insertGoods")
  31. public Result insertGoods(@RequestBody Goods goods){
  32. return goodsService.insertGoods(goods);
  33. }
  34. @ApiOperation(value = "修改商品")
  35. @PostMapping("/update")
  36. public Result update(@RequestBody Goods goods){
  37. return goodsService.updateGoods(goods);
  38. }
  39. @ApiOperation("查看所有商品")
  40. @GetMapping(value = "/selectGoodsList")
  41. public Result selectGoodsList(Integer page, Integer limit, Integer classifyId, String goodsName, Integer status, Long shopId, String shopName){
  42. return goodsService.selectAdminGoodsList(page, limit, classifyId, goodsName, status, shopId, shopName);
  43. }
  44. @ApiOperation("删除商品")
  45. @PostMapping(value = "deleteGoodsById")
  46. public Result deleteGoodsById(Long goodsId){
  47. return goodsService.deleteGoodsById(goodsId);
  48. }
  49. @ApiOperation("给商铺批量添加商品")
  50. @PostMapping(value = "shopAddGoods")
  51. public Result shopAddGoods(Long shopId, List goodsIdList){
  52. return goodsService.shopAddGoods(shopId, goodsIdList);
  53. }
  54. @ApiOperation(value = "查看商品详情")
  55. @GetMapping("/selectGoodsById")
  56. public Result selectGoodsById(Long goodsId) {
  57. return goodsService.selectGoodsById(goodsId);
  58. }
  59. @ApiOperation(value = "单规格生成sku")
  60. @GetMapping(value = "/onlyFormatAttr")
  61. public Result onlyFormatSku(@ApiParam("商品图片")@DecryptParam(required = false) String coverImg,
  62. @ApiParam("原价")@DecryptParam(required = false) String originalPrice,
  63. @ApiParam("售价")@DecryptParam(required = false) String price){
  64. return goodsService.onlyFormatAttr(coverImg, originalPrice, price);
  65. }
  66. @ApiOperation(value = "多规格生成sku")
  67. @PostMapping(value = "/isFormatAttr")
  68. public Result isFormatSku(@RequestBody GoodsAttr attr,
  69. @ApiParam("商品图片")@DecryptParam(required = false) String coverImg,
  70. @ApiParam("原价")@DecryptParam(required = false) String originalPrice,
  71. @ApiParam("售价")@DecryptParam(required = false) String price){
  72. return goodsService.isFormatAttr(attr, coverImg, originalPrice, price);
  73. }
  74. @ApiOperation(value = "回显属性")
  75. @GetMapping(value = "/formatAttr")
  76. public Result formatAttr(Long goodsId){
  77. return goodsService.formatAttr(goodsId);
  78. }
  79. @ApiOperation(value = "回显规格")
  80. @GetMapping(value = "/findAttrValue")
  81. public Result findAttrValue(Long goodsId){
  82. return goodsService.findAttrValue(goodsId);
  83. }
  84. @ApiOperation("查看所有商铺")
  85. @GetMapping(value = "selectAllShop")
  86. public Result selectAllShop(Integer page, Integer limit, String shopName,String region,Integer isActivity, String vipPromotion){
  87. return goodsService.selectAllShop(page, limit, shopName,region,isActivity,vipPromotion);
  88. }
  89. @ApiOperation("查看商品评价详情")
  90. @GetMapping(value = "/selectEvaluateGoodsById")
  91. public Result selectEvaluateGoodsById(String goodsId,Integer grade, Integer page, Integer limit){
  92. return goodsService.selectEvaluateGoodsById(goodsId,grade, page, limit);
  93. }
  94. @ApiOperation("查看所有商铺(不分页)")
  95. @GetMapping(value = "selectAllShopList")
  96. public Result selectAllShopList(){
  97. SysUserEntity user = getUser();
  98. Long userId = user.getUserId();
  99. return goodsService.selectAllShopList(userId);
  100. }
  101. @ApiOperation("添加商铺")
  102. @PostMapping(value = "insertGoodsShop")
  103. public Result insertGoodsShop(@RequestBody GoodsShop goodsShop){
  104. return goodsShopService.insertGoodsShop(goodsShop);
  105. }
  106. @ApiOperation("修改商铺信息")
  107. @PostMapping(value = "updateGoodsShop")
  108. public Result updateGoodsShop(@RequestBody GoodsShop goodsShop){
  109. return goodsShopService.updateGoodsShop(goodsShop);
  110. }
  111. @ApiOperation("删除商铺")
  112. @GetMapping(value = "deleteGoodsShop")
  113. public Result deleteGoodsShop(Long id){
  114. return goodsShopService.deleteGoodsShop(id);
  115. }
  116. @ApiOperation("获取所有商品类型")
  117. @GetMapping(value = "selectAllClassify")
  118. public Result selectAllClassify(Integer page,Integer limit,String shopName, Long shopId){
  119. return goodsService.selectAllClassify(page,limit,shopName, shopId);
  120. }
  121. @ApiOperation("添加商品类型")
  122. @PostMapping(value = "insertClassify")
  123. public Result insertClassify(@RequestBody GoodsClassify goodsClassify){
  124. return goodsClassifyService.insertClassify(goodsClassify);
  125. }
  126. @ApiOperation("修改商品类型")
  127. @PostMapping(value = "updateClassify")
  128. public Result updateClassify(@RequestBody GoodsClassify goodsClassify){
  129. return goodsClassifyService.updateClassify(goodsClassify);
  130. }
  131. @ApiOperation("删除商品类型")
  132. @GetMapping(value = "deleteClassify")
  133. public Result deleteClassify(Long classifyId){
  134. return goodsClassifyService.deleteClassify(classifyId);
  135. }
  136. @ApiOperation("批量修改上下架")
  137. @GetMapping(value = "updateBatchStatus")
  138. public Result updateBatchStatus(String goodsIds, Integer status) {
  139. return goodsService.updateBatchStatus(goodsIds, status);
  140. }
  141. @ApiOperation("批量删除商品")
  142. @GetMapping(value = "deleteBatchIds")
  143. public Result deleteBatchIds(String goodsIds) {
  144. return goodsService.deleteBatchIds(goodsIds);
  145. }
  146. @ApiOperation("批量修改库存")
  147. @GetMapping(value = "updateBatchInventory")
  148. public Result updateBatchInventory(String goodsIds, Integer inventory) {
  149. return goodsService.updateBatchInventory(goodsIds, inventory);
  150. }
  151. @ApiOperation("修改商品排序")
  152. @GetMapping("/updateSort")
  153. public Result updateSort(Long goodsId,Integer sort) {
  154. return goodsService.updateSort(goodsId,sort);
  155. }
  156. @ApiOperation("查询商品封面图")
  157. @GetMapping(value = "/goodsCoverList")
  158. public Result goodsCoverList(Integer page,Integer limit, String name) {
  159. return goodsService.goodsCoverList(page,limit,name);
  160. }
  161. @ApiOperation("查询商品图")
  162. @GetMapping(value = "/goodsPictureList")
  163. public Result goodsPictureList(Integer page, Integer limit, String name) {
  164. return goodsService.goodsPictureList(page,limit,name);
  165. }
  166. @ApiOperation("查询商品详情图")
  167. @GetMapping(value = "/goodsParticularsPictureList")
  168. public Result goodsParticularsPictureList(Integer page, Integer limit, String name) {
  169. return goodsService.goodsParticularsPictureList(page,limit,name);
  170. }
  171. @ApiOperation(value = "修改商品是否参与vip优惠", notes = "vipPromotion 是否参与vip优惠活动,0否1是")
  172. @PutMapping("/vip-promotion/{goodsId}/{vipPromotion}")
  173. public Result updateVipPromotion(@PathVariable Long goodsId, @PathVariable String vipPromotion){
  174. goodsService.updateVipPromotion(goodsId, vipPromotion);
  175. return Result.success();
  176. }
  177. }