package com.ruoyi.notice.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.domain.Result; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.notice.pojo.InformationNotification; import com.ruoyi.notice.service.InformationNotificationService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Map; /** *
* 消息通知 前端控制器 *
* * @author 江苏鵷雏网络科技有限公司 * @since 2024-04-23 02:14:30 */ @Api(tags = "消息通知") @RestController @RequestMapping("/informationNotification") public class InformationNotificationController { @Autowired private InformationNotificationService informationNotificationService; @ApiOperation(value = "消息通知-滚动分页查询") @GetMapping("page") public Result> getPage(Long size, Long current, String messageType) { return Result.success(informationNotificationService.getPage(new Page<>(current, size), messageType)); } @ApiOperation(value = "消息通知-更新消息状态(拒绝、接收)") @PutMapping("updateMessageStatus") @Log(title = "消息通知", businessType = BusinessType.UPDATE) public Result> updateMessageStatus(@RequestBody InformationNotification informationNotification) { informationNotificationService.updateById(informationNotification); return Result.success(); } @ApiOperation(value = "消息通知-标记所有信息为已读/删除所有已读消息") @PutMapping("informationReadOrDelete/{isMarkAllInformationRead}") public Result> markAllInformationReadOrDeleteAllReadMessages(@PathVariable("isMarkAllInformationRead") Boolean isMarkAllInformationRead) { informationNotificationService.markAllInformationReadOrDeleteAllReadMessages(isMarkAllInformationRead); return Result.success(); } @ApiOperation(value = "消息通知-删除数据") @DeleteMapping("deleteDataBasedOnId") @Log(title = "消息通知", businessType = BusinessType.DELETE) public Result> deleteDataBasedOnId(Integer id) { informationNotificationService.removeById(id); return Result.success(); } @ApiOperation(value = "消息通知-查询是否存在未读数据") @GetMapping("checkForUnreadData") public Result> checkForUnreadData() { return Result.success(informationNotificationService.checkForUnreadData()); } @ApiOperation(value = "消息通知-点击详情触发修改状态为已读") @PutMapping("triggerModificationStatusToRead/{id}") @Log(title = "消息通知", businessType = BusinessType.UPDATE) public Result> triggerModificationStatusToRead(@PathVariable("id") Integer id) { informationNotificationService.triggerModificationStatusToRead(id); return Result.success(); } @ApiOperation(value = "消息通知-获取首页四种消息数量") @GetMapping("getNumberFourTypesMessagesHomePage") public Result> getNumberFourTypesMessagesHomePage() { Map