@ -16,7 +16,10 @@ import java.util.List;
public interface InternalMessageMapper
{
/**
* 根据用户ID将所有消息状态更新为已读
*/
int updateMessagesToReadByUserId(@Param("userId") Long userId);
* 查询指定用户的所有消息,按时间倒序
@ -29,6 +29,7 @@ public class InternalMessageServiceImpl implements IInternalMessageService
if (userId == null) {
return Collections.emptyList();
}
internalMessageMapper.updateMessagesToReadByUserId(userId);
return internalMessageMapper.selectMessagesByUserId(userId);
@Override
@ -14,6 +14,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<!-- 根据用户ID将所有消息状态更新为已读 -->
<update id="updateMessagesToReadByUserId">
UPDATE internal_message
SET status = 'read' <!-- 假设1表示已读状态,请根据您的实际状态值调整 -->
WHERE user_id = #{userId}
</update>
<select id="selectMessagesByUserId" resultMap="InternalMessageResult">
SELECT *