diff --git a/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/institution/app/AppSafetyMessageController.java b/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/institution/app/AppSafetyMessageController.java index 6e47454..9661555 100644 --- a/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/institution/app/AppSafetyMessageController.java +++ b/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/institution/app/AppSafetyMessageController.java @@ -53,4 +53,10 @@ public class AppSafetyMessageController { query.setReceiveId(AuthUserContextAdapter.getCurrentUserId()); return safetyMessageApi.page(query); } + + @ApiOperation("获取信息未读数量") + @GetMapping("/unreadCount") + public SingleResponse unreadCount() { + return safetyMessageApi.unreadCount(AuthUserContextAdapter.getCurrentUserId()); + } } diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/SafetyMessageExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/SafetyMessageExecutor.java index 4ef7f1c..761739d 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/SafetyMessageExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/SafetyMessageExecutor.java @@ -83,4 +83,12 @@ public class SafetyMessageExecutor implements SafetyMessageApi { ); return SingleResponse.success(true); } + + @Override + public SingleResponse unreadCount(Long currentUserId) { + Long unreadCount = safetyMessageMapper.selectCount(new LambdaUpdateWrapper() + .eq(SafetyMessageDO::getReceiveId, currentUserId) + .eq(SafetyMessageDO::getSendState, 0)); + return SingleResponse.success(unreadCount); + } } diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/api/SafetyMessageApi.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/api/SafetyMessageApi.java index 010b5af..d60de66 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/api/SafetyMessageApi.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/api/SafetyMessageApi.java @@ -27,4 +27,6 @@ public interface SafetyMessageApi { PageResponse page(SafetyMessagePageQuery query); SingleResponse batchMarkedAsRead(List data); + + SingleResponse unreadCount(Long currentUserId); }