From 59b56a39dc4c288d207b9db0892af7a188a73edc Mon Sep 17 00:00:00 2001 From: chendaofei <857448963@qq.com> Date: Mon, 29 Jul 2024 13:56:28 +0800 Subject: [PATCH] =?UTF-8?q?1.=E7=94=A8=E8=83=BD=E4=BB=A3=E7=A0=81=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=202.=E7=B3=BB=E7=BB=9F=E5=B9=B6=E5=8F=91bug=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/njcn/auth/controller/AuthController.java | 14 ++++++++------ .../main/java/com/njcn/auth/utils/AuthPubUtil.java | 4 ++-- .../njcn/energy/pojo/param/AirStrategyParam.java | 4 +--- .../controller/StatisticDataRunController.java | 2 +- .../service/impl/EleAirStrategyServiceImpl.java | 9 +++++++-- .../com/njcn/gateway/filter/AuthGlobalFilter.java | 2 +- 6 files changed, 20 insertions(+), 15 deletions(-) diff --git a/pqs-auth/src/main/java/com/njcn/auth/controller/AuthController.java b/pqs-auth/src/main/java/com/njcn/auth/controller/AuthController.java index 6d5bca43e..f3d832e22 100644 --- a/pqs-auth/src/main/java/com/njcn/auth/controller/AuthController.java +++ b/pqs-auth/src/main/java/com/njcn/auth/controller/AuthController.java @@ -1,6 +1,7 @@ package com.njcn.auth.controller; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.json.JSONObject; import com.nimbusds.jose.jwk.JWKSet; import com.nimbusds.jose.jwk.RSAKey; import com.njcn.auth.service.UserTokenService; @@ -44,10 +45,7 @@ import java.security.Principal; import java.security.interfaces.RSAPublicKey; import java.time.LocalDateTime; import java.time.ZoneOffset; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -102,14 +100,18 @@ public class AuthController extends BaseController { username = parameters.get(SecurityConstants.PHONE); } + //判断当前登录是否超过最大并发数 UserStrategy data = passWordRuleFeugnClient.getUserStrategy().getData(); String onlineUserKey = SecurityConstants.TOKEN_ONLINE_PREFIX; List onLineUser = (List) redisUtil.getLikeListAllValues(onlineUserKey); if(CollectionUtil.isNotEmpty(onLineUser)){ String finalUsername = username; onLineUser = onLineUser.stream().filter(item->{ - String login = AuthPubUtil.getLoginByToken(item.getRefreshToken()); - return !login.equals(finalUsername); + JSONObject jsonObject = AuthPubUtil.getLoginByToken(item.getRefreshToken()); + String login = jsonObject.getStr(SecurityConstants.USER_NAME_KEY); + long exp = Long.parseLong(jsonObject.getStr(SecurityConstants.JWT_EXP)); + long now = Calendar.getInstance().getTimeInMillis()/1000; + return (exp > now) && !login.equals(finalUsername); }).collect(Collectors.toList()); } diff --git a/pqs-auth/src/main/java/com/njcn/auth/utils/AuthPubUtil.java b/pqs-auth/src/main/java/com/njcn/auth/utils/AuthPubUtil.java index ccecd44e7..a51056975 100644 --- a/pqs-auth/src/main/java/com/njcn/auth/utils/AuthPubUtil.java +++ b/pqs-auth/src/main/java/com/njcn/auth/utils/AuthPubUtil.java @@ -33,11 +33,11 @@ public class AuthPubUtil { @SneakyThrows - public static String getLoginByToken(String token){ + public static JSONObject getLoginByToken(String token){ JWSObject jwsObject = JWSObject.parse(token); String payload = jwsObject.getPayload().toString(); JSONObject jsonObject = JSONUtil.parseObj(payload); - return jsonObject.getStr(SecurityConstants.USER_NAME_KEY); + return jsonObject; } } diff --git a/pqs-energy/energy-api/src/main/java/com/njcn/energy/pojo/param/AirStrategyParam.java b/pqs-energy/energy-api/src/main/java/com/njcn/energy/pojo/param/AirStrategyParam.java index 7c6be8459..32d6dad43 100644 --- a/pqs-energy/energy-api/src/main/java/com/njcn/energy/pojo/param/AirStrategyParam.java +++ b/pqs-energy/energy-api/src/main/java/com/njcn/energy/pojo/param/AirStrategyParam.java @@ -36,11 +36,9 @@ public class AirStrategyParam{ private Integer type; @ApiModelProperty(name = "开始时间",required = true) - @NotBlank(message = "开始时间不可为空") private String startTime; - @ApiModelProperty(name = "开始时间",required = true) - @NotBlank(message = "开始时间不可为空") + @ApiModelProperty(name = "结束时间",required = true) private String endTime; @ApiModelProperty(name = "空调模式",required = true) diff --git a/pqs-energy/energy-boot/src/main/java/com/njcn/energy/controller/StatisticDataRunController.java b/pqs-energy/energy-boot/src/main/java/com/njcn/energy/controller/StatisticDataRunController.java index a30a9ddb1..cb2c62088 100644 --- a/pqs-energy/energy-boot/src/main/java/com/njcn/energy/controller/StatisticDataRunController.java +++ b/pqs-energy/energy-boot/src/main/java/com/njcn/energy/controller/StatisticDataRunController.java @@ -160,7 +160,7 @@ public class StatisticDataRunController { } } } else { - log.error(start + "——————" + end + "数据为空"); + log.error(start + "——————" + end + "influxdb数据库power_data表数据为空,请联系管理员排查"); } diff --git a/pqs-energy/energy-boot/src/main/java/com/njcn/energy/service/impl/EleAirStrategyServiceImpl.java b/pqs-energy/energy-boot/src/main/java/com/njcn/energy/service/impl/EleAirStrategyServiceImpl.java index 412f85584..cc4a5818e 100644 --- a/pqs-energy/energy-boot/src/main/java/com/njcn/energy/service/impl/EleAirStrategyServiceImpl.java +++ b/pqs-energy/energy-boot/src/main/java/com/njcn/energy/service/impl/EleAirStrategyServiceImpl.java @@ -530,7 +530,7 @@ public class EleAirStrategyServiceImpl extends ServiceImpl