Parcourir la source

调整 message-service 的 UserMessageController 接口和实现

reghao il y a 1 mois
Parent
commit
59b0b47c0d

+ 11 - 4
message/message-service/src/main/java/cn/reghao/tnb/message/app/controller/UserMessageController.java

@@ -18,7 +18,6 @@ import java.util.Map;
  */
 @Tag(name = "用户消息接口")
 @RestController
-//@RequestMapping("/api/user/message")
 @RequestMapping("/api/message/user")
 public class UserMessageController {
     private final UserMessageService userMessageService;
@@ -37,15 +36,23 @@ public class UserMessageController {
 
     @Operation(summary = "获取未读消息列表", description = "N")
     @GetMapping(value = "/unread/list", produces = MediaType.APPLICATION_JSON_VALUE)
-    public String getUnreadMessages() {
+    public String getUnreadMessages(@RequestParam("pn") int pageNumber) {
         long loginUser = UserContext.getUserId();
         List<UserMessage> list = userMessageService.getMessages(loginUser);
         return WebResult.success(list);
     }
 
+    @Operation(summary = "清空未读消息列表", description = "N")
+    @PostMapping(value = "/unread/clear", produces = MediaType.APPLICATION_JSON_VALUE)
+    public String clearUnreadMessages() {
+        long loginUser = UserContext.getUserId();
+        userMessageService.clearUnreadMessages(loginUser);
+        return WebResult.success();
+    }
+
     @Operation(summary = "获取消息详情", description = "N")
-    @GetMapping(value = "/detail/{messageId}", produces = MediaType.APPLICATION_JSON_VALUE)
-    public String getUserMessage(@PathVariable("messageId") Long messageId) {
+    @GetMapping(value = "/detail", produces = MediaType.APPLICATION_JSON_VALUE)
+    public String getUserMessage(@RequestParam("messageId") Long messageId) {
         UserMessage userMessage = userMessageService.getUserMessage(messageId);
         return WebResult.success(userMessage);
     }

+ 1 - 0
message/message-service/src/main/java/cn/reghao/tnb/message/app/db/mapper/UserMessageMapper.java

@@ -13,6 +13,7 @@ import java.util.List;
  */
 @Mapper
 public interface UserMessageMapper extends BaseMapper<UserMessage> {
+    void updateByUserId(@Param("userId") long userId);
     void updateSetRead(@Param("messageId") long messageId);
 
     int countByUnread(long userId);

+ 4 - 0
message/message-service/src/main/java/cn/reghao/tnb/message/app/service/UserMessageService.java

@@ -58,6 +58,10 @@ public class UserMessageService {
         return total;
     }
 
+    public void clearUnreadMessages(long userId) {
+        userMessageMapper.updateByUserId(userId);
+    }
+
     public UserMessage getUserMessage(long messageId) {
         UserMessage userMessage = userMessageMapper.findByMessageId(messageId);
         userMessageMapper.updateSetRead(messageId);

+ 5 - 0
message/message-service/src/main/resources/mapper/UserMessageMapper.xml

@@ -9,6 +9,11 @@
         (#{msgType},#{messageId},#{title},#{content},#{unread},#{userId})
     </insert>
 
+    <update id="updateByUserId">
+        update message_user_message
+        set update_time=now(),unread=0
+        where user_id=#{userId}
+    </update>
     <update id="updateSetRead">
         update message_user_message
         set update_time=now(),unread=0