package com.qianwen.smartman.modules.notify.websocket; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import io.jsonwebtoken.Claims; import java.lang.invoke.SerializedLambda; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.qianwen.core.jwt.JwtUtil; import com.qianwen.core.secure.utils.AuthUtil; import com.qianwen.core.websocket.config.WebSocketMessageSender; import com.qianwen.core.websocket.handler.JsonMessageHandler; import com.qianwen.smartman.modules.notify.service.INotifySystemService; import org.springframework.stereotype.Component; import org.springframework.web.socket.WebSocketSession; @Component /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/notify/websocket/InternalMessageDataJsonMessageHandler.class */ public class InternalMessageDataJsonMessageHandler implements JsonMessageHandler { private static final Logger log = LoggerFactory.getLogger(InternalMessageDataJsonMessageHandler.class); private INotifySystemService notifySystemService; private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) { String implMethodName = lambda.getImplMethodName(); boolean z = true; switch (implMethodName.hashCode()) { case -1462639958: if (implMethodName.equals("getNotifyUser")) { z = false; break; } break; case 803533544: if (implMethodName.equals("getStatus")) { z = true; break; } break; } switch (z) { case false: if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/notify/entity/NotifySystem") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { return (v0) -> { return v0.getNotifyUser(); }; } break; case true: if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/mp/base/BaseEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/Integer;")) { return (v0) -> { return v0.getStatus(); }; } break; } throw new IllegalArgumentException("Invalid lambda deserialization"); } public InternalMessageDataJsonMessageHandler(final INotifySystemService notifySystemService) { this.notifySystemService = notifySystemService; } public void handle(WebSocketSession session, InternalMessageRequestJsonWebSocketMessage message) { try { String uri = session.getUri().getQuery(); Claims claims = AuthUtil.parseJWT(JwtUtil.getToken(uri.substring(uri.lastIndexOf("=") + 1))); long unNotificationCount = this.notifySystemService.count((Wrapper) ((LambdaQueryWrapper) Wrappers.lambdaQuery().ne((v0) -> { return v0.getStatus(); }, 1)).eq((v0) -> { return v0.getNotifyUser(); }, claims.get("user_id"))); InternalMessageResponseJsonWebSocketMessage internalMessageResponseJsonWebSocketMessage = new InternalMessageResponseJsonWebSocketMessage(); internalMessageResponseJsonWebSocketMessage.setHaveUnread(unNotificationCount > 0); WebSocketMessageSender.send(session, internalMessageResponseJsonWebSocketMessage); } catch (Exception e) { log.error("消息通知websocket连接异常,异常信息为", e); } } public String type() { return "internalMessageData"; } public Class getMessageClass() { return InternalMessageRequestJsonWebSocketMessage.class; } }