Parcourir la source

通知模块 查看、已读、删除接口

ZhangManMan il y a 2 ans
Parent
commit
fb8ce997a0

+ 23 - 7
src/main/java/com/sky/ioc/controller/notice/NoticeController.java

@@ -9,10 +9,9 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
 
 @Api(tags ="通知")
 @Slf4j
@@ -25,9 +24,26 @@ public class NoticeController {
     NoticeService noticeService;
 
     @ApiOperation("分页列表")
-    @PostMapping("/getList")
-    public ReturnMsg getList(@RequestBody NoticeParam noticeParam){
-
+    @PostMapping("/getNoticeList")
+    public ReturnMsg getNoticeList(@RequestBody NoticeParam noticeParam){
         return noticeService.listPage(noticeParam);
     }
+
+    @ApiOperation("通知设为已读")
+    @PostMapping("/readNotice")
+    public ReturnMsg readNotice(@RequestBody List<Integer> ids){
+        return noticeService.readNotice(ids);
+    }
+
+    @ApiOperation("删除通知")
+    @PostMapping("/delNotice")
+    public ReturnMsg delNotice(@RequestBody List<Integer> ids){
+        return noticeService.delNotice(ids);
+    }
+
+    @ApiOperation("查看通知")
+    @GetMapping("/getNotice")
+    public ReturnMsg getNotice(@RequestParam Integer id){
+        return noticeService.getNotice(id);
+    }
 }

+ 12 - 0
src/main/java/com/sky/ioc/mapper/notice/NoticeMapper.java

@@ -43,4 +43,16 @@ public interface NoticeMapper extends BaseMapper<Notice> {
             "</script>")
     long  countPage(@Param("noticeParam")NoticeParam noticeParam);
 
+    @Select("<script>" +
+            " update notice set status = 1,update_time = now()  " +
+            " where id in (<foreach collection='ids' item='id' index='no' separator=','>#{id}</foreach>) "
+            + "</script>")
+    Integer updateStatusByIds(@Param("ids") List<Integer> ids);
+
+    @Select("<script>" +
+            " update notice set is_del = 1, update_time = now()  " +
+            " where id in (<foreach collection='ids' item='id' index='no' separator=','>#{id}</foreach>) "
+            + "</script>")
+    Integer delByIds(@Param("ids") List<Integer> ids);
+
 }

+ 9 - 0
src/main/java/com/sky/ioc/service/notice/NoticeService.java

@@ -3,8 +3,17 @@ package com.sky.ioc.service.notice;
 import com.sky.ioc.entity.params.notice.NoticeParam;
 import com.sky.ioc.tool.ReturnMsg;
 
+import java.util.List;
+
 public interface NoticeService {
 
 
     ReturnMsg listPage(NoticeParam noticeParam);
+
+
+    ReturnMsg readNotice(List<Integer> ids);
+
+    ReturnMsg delNotice(List<Integer> ids);
+
+    ReturnMsg getNotice(Integer id);
 }

+ 28 - 0
src/main/java/com/sky/ioc/service/notice/impl/NoticeServiceImpl.java

@@ -1,6 +1,7 @@
 package com.sky.ioc.service.notice.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.sky.ioc.entity.domain.notice.Notice;
 import com.sky.ioc.entity.params.notice.NoticeParam;
 import com.sky.ioc.enums.NoticeTypeEnums;
@@ -33,4 +34,31 @@ public class NoticeServiceImpl implements NoticeService {
         jsonObject.put("data",lists);
         return ReturnMsg.ok(jsonObject);
     }
+
+    @Override
+    public ReturnMsg readNotice(List<Integer> ids) {
+        if(ids.size()==0||ids==null){
+            return ReturnMsg.fail("参数错误");
+        }else{
+            noticeMapper.updateStatusByIds(ids);
+            return ReturnMsg.ok();
+        }
+    }
+
+    @Override
+    public ReturnMsg delNotice(List<Integer> ids) {
+        if(ids.size()==0||ids==null){
+            return ReturnMsg.fail("参数错误");
+        }else{
+            noticeMapper.delByIds(ids);
+            return ReturnMsg.ok();
+        }
+    }
+
+    @Override
+    public ReturnMsg getNotice(Integer id) {
+        Notice notice = noticeMapper.selectById(id);
+
+        return ReturnMsg.ok(notice);
+    }
 }