BannerInfoController.java 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package com.zsElectric.boot.app.controller;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.zsElectric.boot.app.model.form.BannerInfoForm;
  4. import com.zsElectric.boot.app.model.query.BannerInfoPageQuery;
  5. import com.zsElectric.boot.app.model.vo.BannerInfoPageVO;
  6. import com.zsElectric.boot.app.service.BannerInfoService;
  7. import com.zsElectric.boot.common.annotation.Log;
  8. import com.zsElectric.boot.common.enums.LogModuleEnum;
  9. import com.zsElectric.boot.core.web.PageResult;
  10. import com.zsElectric.boot.core.web.Result;
  11. import io.swagger.v3.oas.annotations.Operation;
  12. import io.swagger.v3.oas.annotations.Parameter;
  13. import io.swagger.v3.oas.annotations.tags.Tag;
  14. import lombok.RequiredArgsConstructor;
  15. import org.springframework.security.access.prepost.PreAuthorize;
  16. import org.springframework.web.bind.annotation.*;
  17. /**
  18. * Banner信息接口
  19. */
  20. @Tag(name = "Banner信息接口")
  21. @RestController("appBannerInfoController")
  22. @RequestMapping("/api/v1/app/banner-info")
  23. @RequiredArgsConstructor
  24. public class BannerInfoController {
  25. private final BannerInfoService bannerInfoService;
  26. @Operation(summary = "Banner信息分页列表")
  27. @GetMapping("/page")
  28. @Log(value = "Banner信息分页列表", module = LogModuleEnum.OTHER)
  29. public PageResult<BannerInfoPageVO> listPagedBannerInfos(BannerInfoPageQuery queryParams) {
  30. IPage<BannerInfoPageVO> result = bannerInfoService.listPagedBannerInfos(queryParams);
  31. return PageResult.success(result);
  32. }
  33. @Operation(summary = "Banner信息详情")
  34. @GetMapping("/{id}")
  35. @Log(value = "Banner信息详情", module = LogModuleEnum.OTHER)
  36. public Result<BannerInfoForm> getBannerInfoFormData(
  37. @Parameter(description = "Banner信息ID") @PathVariable Long id) {
  38. BannerInfoForm formData = bannerInfoService.getBannerInfoFormData(id);
  39. return Result.success(formData);
  40. }
  41. @Operation(summary = "新增Banner信息")
  42. @PostMapping
  43. @PreAuthorize("hasRole('ADMIN')")
  44. @Log(value = "新增Banner信息", module = LogModuleEnum.OTHER)
  45. public Result<Boolean> saveBannerInfo(@RequestBody BannerInfoForm formData) {
  46. boolean result = bannerInfoService.saveBannerInfo(formData);
  47. return Result.success(result);
  48. }
  49. @Operation(summary = "修改Banner信息")
  50. @PutMapping("/{id}")
  51. @PreAuthorize("hasRole('ADMIN')")
  52. @Log(value = "修改Banner信息", module = LogModuleEnum.OTHER)
  53. public Result<Boolean> updateBannerInfo(
  54. @Parameter(description = "Banner信息ID") @PathVariable Long id,
  55. @RequestBody BannerInfoForm formData) {
  56. boolean result = bannerInfoService.updateBannerInfo(id, formData);
  57. return Result.success(result);
  58. }
  59. @Operation(summary = "删除Banner信息")
  60. @DeleteMapping("/{ids}")
  61. @PreAuthorize("hasRole('ADMIN')")
  62. @Log(value = "删除Banner信息", module = LogModuleEnum.OTHER)
  63. public Result<Boolean> deleteBannerInfos(
  64. @Parameter(description = "Banner信息ID,多个以英文逗号(,)分割") @PathVariable String ids) {
  65. boolean result = bannerInfoService.deleteBannerInfos(ids);
  66. return Result.success(result);
  67. }
  68. }