diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/system/SysAdviceController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/resource/SysAdviceController.java similarity index 80% rename from mcwl-admin/src/main/java/com/mcwl/web/controller/system/SysAdviceController.java rename to mcwl-admin/src/main/java/com/mcwl/web/controller/resource/SysAdviceController.java index d1f29f9..167cd18 100644 --- a/mcwl-admin/src/main/java/com/mcwl/web/controller/system/SysAdviceController.java +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/resource/SysAdviceController.java @@ -1,4 +1,4 @@ -package com.mcwl.web.controller.system; +package com.mcwl.web.controller.resource; import com.mcwl.common.core.domain.R; import com.mcwl.resource.domain.vo.AdviceVo; @@ -22,13 +22,38 @@ import java.util.List; * 消息通知 */ @RestController -@RequestMapping("system/advice") +@RequestMapping("advice") @RequiredArgsConstructor @Api(tags = "消息通知") public class SysAdviceController { private final ISysAdviceService sysAdviceService; + + /** + * 已读 + */ + @GetMapping("read") + @ApiOperation(value = "已读") + public R read(@Valid + @NotNull(message = "消息id不能为空") + @ApiParam(value = "消息id", required = true) + Long adviceId) { + sysAdviceService.read(adviceId); + return R.ok(); + } + + /** + * 一键已读 + */ + @GetMapping("readAll") + @ApiOperation(value = "一键已读") + public R readAll() { + sysAdviceService.readAll(); + return R.ok(); + } + + /** * 获取所有通知 */ diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/service/ISysAdviceService.java b/mcwl-resource/src/main/java/com/mcwl/resource/service/ISysAdviceService.java index 88676cd..7dc2f1f 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/service/ISysAdviceService.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/service/ISysAdviceService.java @@ -7,6 +7,8 @@ import com.mcwl.resource.domain.vo.AttentionAdviceVo; import com.mcwl.resource.domain.vo.CommentAdviceVo; import com.mcwl.resource.domain.vo.LikeAdviceVo; +import javax.validation.Valid; +import javax.validation.constraints.NotNull; import java.util.List; /** @@ -23,4 +25,11 @@ public interface ISysAdviceService extends IService { List getLikeMsg(Integer productType); List getAttentionMsg(); + + void read(Long adviceId); + + /** + * 一键已读 + */ + void readAll(); } diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/SysAdviceServiceImpl.java b/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/SysAdviceServiceImpl.java index 7dd4163..d7dffe2 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/SysAdviceServiceImpl.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/SysAdviceServiceImpl.java @@ -2,6 +2,7 @@ package com.mcwl.resource.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mcwl.common.core.domain.entity.SysUser; @@ -223,6 +224,35 @@ public class SysAdviceServiceImpl extends ServiceImpl sysAdviceList = baseMapper.selectList(new LambdaQueryWrapper() + .eq(SysAdvice::getIsRead, 0) + .eq(SysAdvice::getReceiverId, SecurityUtils.getUserId())); + for (SysAdvice sysAdvice : sysAdviceList) { + sysAdvice.setIsRead(1); + baseMapper.updateById(sysAdvice); + } + } + public void postConstruct() { Long userId = SecurityUtils.getUserId();