liyong
6 天以前 9a30a3a8d3862a9b2ce898535b7cb51c3ddac816
src/main/java/com/ruoyi/project/system/controller/SysNoticeController.java
@@ -1,96 +1,99 @@
package com.ruoyi.project.system.controller;
import java.util.List;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.framework.web.domain.R;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.project.system.domain.SysNotice;
import com.ruoyi.project.system.service.ISysNoticeService;
/**
 * 公告 信息操作处理
 *
 * @author ruoyi
 */
@RestController
@RequestMapping("/system/notice")
@AllArgsConstructor
public class SysNoticeController extends BaseController {
    private ISysNoticeService noticeService;
    /**
     * 获取通知公告列表
     */
    @GetMapping("/list")
    public R<IPage<SysNotice>> list(SysNotice notice, Page page) {
        IPage<SysNotice> list = noticeService.selectNoticeList(notice, page);
        return R.ok(list);
    }
    /**
     * 获取未读数量
     */
    @GetMapping("/getCount")
    public R getCount(Long consigneeId) {
        return R.ok(noticeService.getCount(consigneeId));
    }
    /**
     * 根据通知公告编号获取详细信息
     */
    @GetMapping(value = "/{noticeId}")
    public AjaxResult getInfo(@PathVariable Long noticeId) {
        return success(noticeService.selectNoticeById(noticeId));
    }
    /**
     * 新增通知公告
     */
    @PostMapping
    public AjaxResult add(@Validated @RequestBody SysNotice notice) {
        return toAjax(noticeService.insertNotice(notice));
    }
    /**
     * 修改通知公告
     */
    @PutMapping
    public AjaxResult edit(@Validated @RequestBody SysNotice notice) {
        return toAjax(noticeService.updateNotice(notice));
    }
    /**
     * 删除通知公告
     */
    @DeleteMapping("/{noticeIds}")
    public AjaxResult remove(@PathVariable Long[] noticeIds) {
        return toAjax(noticeService.deleteNoticeByIds(noticeIds));
    }
    /**
     * 一键已读
     */
    @PostMapping("/readAll")
    public AjaxResult readAll() {
        return toAjax(noticeService.readAll());
    }
    @PostMapping("appReadNotice")
    @Operation(summary = "移动端根据消息ID进行已读")
    public AjaxResult appReadNotice(@RequestParam("noticeId") Long noticeId) {
        boolean result = noticeService.appReadNotice(noticeId);
        return toAjax(result);
    }
}
package com.ruoyi.project.system.controller;
import java.util.List;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.framework.web.domain.R;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.project.system.domain.SysNotice;
import com.ruoyi.project.system.service.ISysNoticeService;
/**
 * 公告 信息操作处理
 *
 * @author ruoyi
 */
@RestController
@RequestMapping("/system/notice")
@AllArgsConstructor
public class SysNoticeController extends BaseController {
    private ISysNoticeService noticeService;
    /**
     * 获取通知公告列表
     */
    @GetMapping("/list")
    public R<IPage<SysNotice>> list(SysNotice notice, Page page) {
        IPage<SysNotice> list = noticeService.selectNoticeList(notice, page);
        return R.ok(list);
    }
    /**
     * 获取未读数量
     */
    @GetMapping("/getCount")
    public R getCount(Long consigneeId) {
        return R.ok(noticeService.getCount(consigneeId));
    }
    /**
     * 根据通知公告编号获取详细信息
     */
    @GetMapping(value = "/{noticeId}")
    public R<?> getInfo(@PathVariable Long noticeId) {
        return R.ok(noticeService.selectNoticeById(noticeId));
    }
    /**
     * 新增通知公告
     */
    @PostMapping
    public R<?> add(@Validated @RequestBody SysNotice notice) {
        noticeService.insertNotice(notice);
        return R.ok();
    }
    /**
     * 修改通知公告
     */
    @PutMapping
    public R<?> edit(@Validated @RequestBody SysNotice notice) {
        noticeService.updateNotice(notice);
        return R.ok();
    }
    /**
     * 删除通知公告
     */
    @DeleteMapping("/{noticeIds}")
    public R<?> remove(@PathVariable Long[] noticeIds) {
        noticeService.deleteNoticeByIds(noticeIds);
        return R.ok();
    }
    /**
     * 一键已读
     */
    @PostMapping("/readAll")
    public R<?> readAll() {
        noticeService.readAll();
        return R.ok();
    }
    @PostMapping("appReadNotice")
    @Operation(summary = "移动端根据消息ID进行已读")
    public R<?> appReadNotice(@RequestParam("noticeId") Long noticeId) {
        noticeService.appReadNotice(noticeId);
        return R.ok();
    }
}