SysMessageController.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package com.aizuda.boot.modules.system.controller;
  2. import com.aizuda.boot.modules.system.entity.SysMessage;
  3. import com.aizuda.boot.modules.system.entity.vo.InformMessageVO;
  4. import com.aizuda.boot.modules.system.entity.vo.SysMessageVO;
  5. import com.aizuda.boot.modules.system.service.ISysMessageService;
  6. import com.aizuda.core.api.ApiController;
  7. import com.aizuda.core.api.PageParam;
  8. import com.aizuda.core.validation.Create;
  9. import com.aizuda.core.validation.Update;
  10. import com.baomidou.kisso.annotation.Permission;
  11. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  12. import io.swagger.v3.oas.annotations.Operation;
  13. import io.swagger.v3.oas.annotations.tags.Tag;
  14. import jakarta.validation.constraints.NotEmpty;
  15. import lombok.AllArgsConstructor;
  16. import org.springframework.validation.annotation.Validated;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.List;
  19. /**
  20. * 消息发送表 前端控制器
  21. *
  22. * @author 青苗
  23. * @since 2023-10-03
  24. */
  25. @Tag(name = "系统消息表")
  26. @RestController
  27. @AllArgsConstructor
  28. @RequestMapping("/sys/message")
  29. public class SysMessageController extends ApiController {
  30. private ISysMessageService sysMessageService;
  31. @Operation(summary = "分页列表")
  32. @Permission("sys:message:page")
  33. @PostMapping("/page")
  34. public Page<SysMessage> getPage(@RequestBody PageParam<SysMessage> dto) {
  35. return sysMessageService.page(dto.page(), dto.getData());
  36. }
  37. @Operation(summary = "我的分页列表")
  38. @Permission("sys:message:page-my")
  39. @PostMapping("/page-my")
  40. public Page<SysMessageVO> pageMy(@RequestBody PageParam<SysMessage> dto) {
  41. return sysMessageService.pageMy(dto.page(), dto.getData());
  42. }
  43. @Operation(summary = "一键已读")
  44. @Permission("sys:message:page")
  45. @PostMapping("/read")
  46. public boolean read(@RequestParam(required = false) Long id) {
  47. return sysMessageService.read(id);
  48. }
  49. @Operation(summary = "告知消息")
  50. @Permission(ignore = true)
  51. @GetMapping("/inform")
  52. public InformMessageVO inform() {
  53. return sysMessageService.getInformByUser();
  54. }
  55. @Operation(summary = "查询 id 信息")
  56. @Permission("sys:message:get")
  57. @GetMapping("/get")
  58. public SysMessage get(@RequestParam Long id) {
  59. return sysMessageService.getById(id);
  60. }
  61. @Operation(summary = "根据 id 修改信息")
  62. @Permission("sys:message:update")
  63. @PostMapping("/update")
  64. public boolean update(@Validated(Update.class) @RequestBody SysMessage sysMessage) {
  65. return sysMessageService.updateById(sysMessage);
  66. }
  67. @Operation(summary = "创建添加")
  68. @Permission("sys:message:create")
  69. @PostMapping("/create")
  70. public boolean create(@Validated(Create.class) @RequestBody SysMessage sysMessage) {
  71. return sysMessageService.save(sysMessage);
  72. }
  73. @Operation(summary = "根据 ids 删除")
  74. @Permission("sys:message:delete")
  75. @PostMapping("/delete")
  76. public boolean delete(@NotEmpty @RequestBody List<Long> ids) {
  77. return sysMessageService.removeByIds(ids);
  78. }
  79. }