SysNoticeController.java 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. package com.ruoyi.web.controller.system;
  2. import com.ruoyi.common.annotation.Log;
  3. import com.ruoyi.common.core.controller.BaseController;
  4. import com.ruoyi.common.core.domain.AjaxResult;
  5. import com.ruoyi.common.core.page.TableDataInfo;
  6. import com.ruoyi.common.enums.BusinessType;
  7. import com.ruoyi.system.domain.SysNotice;
  8. import com.ruoyi.system.service.ISysNoticeService;
  9. import io.swagger.annotations.Api;
  10. import io.swagger.annotations.ApiOperation;
  11. import lombok.RequiredArgsConstructor;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.security.access.prepost.PreAuthorize;
  14. import org.springframework.validation.annotation.Validated;
  15. import org.springframework.web.bind.annotation.*;
  16. /**
  17. * 公告 信息操作处理
  18. *
  19. * @author Lion Li
  20. */
  21. @Validated
  22. @Api(value = "公告信息控制器", tags = {"公告信息管理"})
  23. @RequiredArgsConstructor(onConstructor_ = @Autowired)
  24. @RestController
  25. @RequestMapping("/system/notice")
  26. public class SysNoticeController extends BaseController {
  27. private final ISysNoticeService noticeService;
  28. /**
  29. * 获取通知公告列表
  30. */
  31. @ApiOperation("获取通知公告列表")
  32. @PreAuthorize("@ss.hasPermi('system:notice:list')")
  33. @GetMapping("/list")
  34. public TableDataInfo<SysNotice> list(SysNotice notice) {
  35. return noticeService.selectPageNoticeList(notice);
  36. }
  37. /**
  38. * 根据通知公告编号获取详细信息
  39. */
  40. @ApiOperation("根据通知公告编号获取详细信息")
  41. @PreAuthorize("@ss.hasPermi('system:notice:query')")
  42. @GetMapping(value = "/{noticeId}")
  43. public AjaxResult<SysNotice> getInfo(@PathVariable Long noticeId) {
  44. return AjaxResult.success(noticeService.selectNoticeById(noticeId));
  45. }
  46. /**
  47. * 新增通知公告
  48. */
  49. @ApiOperation("新增通知公告")
  50. @PreAuthorize("@ss.hasPermi('system:notice:add')")
  51. @Log(title = "通知公告", businessType = BusinessType.INSERT)
  52. @PostMapping
  53. public AjaxResult<Void> add(@Validated @RequestBody SysNotice notice) {
  54. return toAjax(noticeService.insertNotice(notice));
  55. }
  56. /**
  57. * 修改通知公告
  58. */
  59. @ApiOperation("修改通知公告")
  60. @PreAuthorize("@ss.hasPermi('system:notice:edit')")
  61. @Log(title = "通知公告", businessType = BusinessType.UPDATE)
  62. @PutMapping
  63. public AjaxResult<Void> edit(@Validated @RequestBody SysNotice notice) {
  64. return toAjax(noticeService.updateNotice(notice));
  65. }
  66. /**
  67. * 删除通知公告
  68. */
  69. @ApiOperation("删除通知公告")
  70. @PreAuthorize("@ss.hasPermi('system:notice:remove')")
  71. @Log(title = "通知公告", businessType = BusinessType.DELETE)
  72. @DeleteMapping("/{noticeIds}")
  73. public AjaxResult<Void> remove(@PathVariable Long[] noticeIds) {
  74. return toAjax(noticeService.deleteNoticeByIds(noticeIds));
  75. }
  76. }