package com.qianwen.smartman.common.config; import io.jsonwebtoken.Claims; import java.util.Objects; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import org.jeecg.modules.jmreport.api.JmReportTokenServiceI; import org.jeecg.modules.jmreport.common.b.f; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.qianwen.core.jwt.JwtUtil; import com.qianwen.core.tool.jackson.JsonUtil; import com.qianwen.core.tool.utils.Func; import com.qianwen.core.tool.utils.WebUtil; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpHeaders; @Configuration /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/common/config/JmConfiguration.class */ public class JmConfiguration implements JmReportTokenServiceI { private static final String HEADER = "Blade-Auth"; private static final Logger log = LoggerFactory.getLogger(JmConfiguration.class); public static final String COOKIE_TOKEN_NAME = "saber-access-token"; public String getUsername(String s) { String token = getCookieToken(COOKIE_TOKEN_NAME, f.getHttpServletRequest()); String auth = JwtUtil.getToken(token); Claims claims = JwtUtil.parseJWT(auth); return Func.toStr(claims.get("user_name")); } public Boolean verifyToken(String s) { String token = getCookieToken(COOKIE_TOKEN_NAME, f.getHttpServletRequest()); String auth = JwtUtil.getToken(token); return Boolean.valueOf(!Objects.isNull(JwtUtil.parseJWT(auth))); } public HttpHeaders customApiHeader() { String token = getCookieToken(COOKIE_TOKEN_NAME, f.getHttpServletRequest()); HttpHeaders httpHeaders = new HttpHeaders(); httpHeaders.add(HEADER, token); return httpHeaders; } public static String getCookieToken(String key, HttpServletRequest request) { Cookie[] cookies = request.getCookies(); if (cookies == null) { log.warn("积木报表调取失败,token不存在,请求接口:{},请求IP:{},请求参数:{}", new Object[]{request.getRequestURI(), WebUtil.getIP(request), JsonUtil.toJson(request.getParameterMap())}); return ""; } for (Cookie cookie : cookies) { if (cookie.getName().equals(key)) { return cookie.getValue(); } } return ""; } }