GoodsController.java 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. package com.zhongzheng.controller.goods;
  2. import java.util.List;
  3. import java.util.Arrays;
  4. import com.zhongzheng.modules.goods.bo.GoodsAddBo;
  5. import com.zhongzheng.modules.goods.bo.GoodsEditBo;
  6. import com.zhongzheng.modules.goods.bo.GoodsQueryBo;
  7. import com.zhongzheng.modules.goods.service.IGoodsService;
  8. import com.zhongzheng.modules.goods.vo.GoodsVo;
  9. import lombok.RequiredArgsConstructor;
  10. import org.springframework.security.access.prepost.PreAuthorize;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.web.bind.annotation.GetMapping;
  13. import org.springframework.web.bind.annotation.PostMapping;
  14. import org.springframework.web.bind.annotation.PutMapping;
  15. import org.springframework.web.bind.annotation.DeleteMapping;
  16. import org.springframework.web.bind.annotation.PathVariable;
  17. import org.springframework.web.bind.annotation.RequestBody;
  18. import org.springframework.web.bind.annotation.RequestMapping;
  19. import org.springframework.web.bind.annotation.RestController;
  20. import com.zhongzheng.common.annotation.Log;
  21. import com.zhongzheng.common.core.controller.BaseController;
  22. import com.zhongzheng.common.core.domain.AjaxResult;
  23. import com.zhongzheng.common.enums.BusinessType;
  24. import com.zhongzheng.common.utils.poi.ExcelUtil;
  25. import com.zhongzheng.common.core.page.TableDataInfo;
  26. import io.swagger.annotations.Api;
  27. import io.swagger.annotations.ApiOperation;
  28. /**
  29. * 商品Controller
  30. *
  31. * @author hjl
  32. * @date 2021-10-12
  33. */
  34. @Api(value = "商品控制器", tags = {"商品管理"})
  35. @RequiredArgsConstructor(onConstructor_ = @Autowired)
  36. @RestController
  37. @RequestMapping("/goods")
  38. public class GoodsController extends BaseController {
  39. private final IGoodsService iGoodsService;
  40. /**
  41. * 查询商品列表
  42. */
  43. @ApiOperation("查询商品列表")
  44. @PreAuthorize("@ss.hasPermi('system:goods:list')")
  45. @GetMapping("/list")
  46. public TableDataInfo<GoodsVo> list(GoodsQueryBo bo) {
  47. startPage();
  48. List<GoodsVo> list = iGoodsService.queryList(bo);
  49. return getDataTable(list);
  50. }
  51. /**
  52. * 导出商品列表
  53. */
  54. /*@ApiOperation("导出商品列表")
  55. @PreAuthorize("@ss.hasPermi('system:goods:export')")
  56. @Log(title = "商品", businessType = BusinessType.EXPORT)
  57. @GetMapping("/export")
  58. public AjaxResult<GoodsVo> export(GoodsQueryBo bo) {
  59. List<GoodsVo> list = iGoodsService.queryList(bo);
  60. ExcelUtil<GoodsVo> util = new ExcelUtil<GoodsVo>(GoodsVo.class);
  61. return util.exportExcel(list, "商品");
  62. }*/
  63. /**
  64. * 获取商品详细信息
  65. */
  66. @ApiOperation("获取商品详细信息")
  67. @PreAuthorize("@ss.hasPermi('system:goods:query')")
  68. @GetMapping("/{goodsId}")
  69. public AjaxResult<GoodsVo> getInfo(@PathVariable("goodsId" ) Long goodsId) {
  70. return AjaxResult.success(iGoodsService.queryById(goodsId));
  71. }
  72. /**
  73. * 新增商品
  74. */
  75. @ApiOperation("新增商品")
  76. @PreAuthorize("@ss.hasPermi('system:goods:add')")
  77. @Log(title = "商品", businessType = BusinessType.INSERT)
  78. @PostMapping()
  79. public AjaxResult<Void> add(@RequestBody GoodsAddBo bo) {
  80. return toAjax(iGoodsService.insertByAddBo(bo) ? 1 : 0);
  81. }
  82. /**
  83. * 修改商品
  84. */
  85. @ApiOperation("修改商品")
  86. @PreAuthorize("@ss.hasPermi('system:goods:edit')")
  87. @Log(title = "商品", businessType = BusinessType.UPDATE)
  88. @PostMapping("/edit")
  89. public AjaxResult<Void> edit(@RequestBody GoodsEditBo bo) {
  90. return toAjax(iGoodsService.updateByEditBo(bo) ? 1 : 0);
  91. }
  92. /**
  93. * 删除商品
  94. */
  95. /* @ApiOperation("删除商品")
  96. @PreAuthorize("@ss.hasPermi('system:goods:remove')")
  97. @Log(title = "商品" , businessType = BusinessType.DELETE)
  98. @DeleteMapping("/{goodsIds}")
  99. public AjaxResult<Void> remove(@PathVariable Long[] goodsIds) {
  100. return toAjax(iGoodsService.deleteWithValidByIds(Arrays.asList(goodsIds), true) ? 1 : 0);
  101. }*/
  102. }