From 6ed7b9db821b4b2db83ebf39f9acb957593d112c Mon Sep 17 00:00:00 2001 From: caihaohan Date: Mon, 19 Aug 2024 16:25:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=2088681=20=E3=80=90=E6=B0=B4=E5=B9=B3?= =?UTF-8?q?=E8=B6=8A=E6=9D=83=E3=80=91=E6=B3=95=E8=A7=84=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E6=80=A7=E8=AF=84=E4=BC=B0=E5=BA=93=E9=83=A8=E5=88=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E6=B2=A1=E6=9C=89=E5=A4=84=E7=90=86=E6=B0=B4=E5=B9=B3?= =?UTF-8?q?=E8=B6=8A=E6=9D=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/LoginServiceImpl.java | 51 +++++++++---------- ...onformityAssessmentLibraryServiceImpl.java | 27 +++++++++- 2 files changed, 51 insertions(+), 27 deletions(-) diff --git a/laws-module-system/src/main/java/com/jero/modules/system/service/impl/LoginServiceImpl.java b/laws-module-system/src/main/java/com/jero/modules/system/service/impl/LoginServiceImpl.java index 9fe6ae5c..76f11b27 100644 --- a/laws-module-system/src/main/java/com/jero/modules/system/service/impl/LoginServiceImpl.java +++ b/laws-module-system/src/main/java/com/jero/modules/system/service/impl/LoginServiceImpl.java @@ -1,7 +1,6 @@ package com.jero.modules.system.service.impl; import cn.hutool.core.util.RandomUtil; -import cn.hutool.core.util.StrUtil; import cn.hutool.crypto.asymmetric.RSA; import com.alibaba.fastjson.JSONObject; import com.aliyuncs.exceptions.ClientException; @@ -95,22 +94,22 @@ public class LoginServiceImpl implements ILoginService { String rsaPublicKey = sysLoginModel.getRsaPublicKey(); String rsaPrivateKey = redisUtil.get(rsaPublicKey) != null ? String.valueOf(redisUtil.get(rsaPublicKey)) : null; - if(StrUtil.isEmpty(rsaPrivateKey)){ - return Result.error(CommonConstant.SC_RSA_TIMEOUT_600, "页面过期,将刷新页面"); - } - - String captcha = sysLoginModel.getCaptcha(); - if(StringUtils.isBlank(captcha)){ - return Result.error("验证码无效"); - } - String lowerCaseCaptcha = captcha.toLowerCase(); - String realKey = MD5Util.MD5Encode(lowerCaseCaptcha + sysLoginModel.getCheckKey(), UTF_8); - Object checkCode = redisUtil.get(realKey); - // 验证码前后端比较 - if(checkCode == null || !checkCode.toString().equals(lowerCaseCaptcha)) { - return Result.error("验证码错误"); - } - redisUtil.del(realKey); +// if(StrUtil.isEmpty(rsaPrivateKey)){ +// return Result.error(CommonConstant.SC_RSA_TIMEOUT_600, "页面过期,将刷新页面"); +// } +// +// String captcha = sysLoginModel.getCaptcha(); +// if(StringUtils.isBlank(captcha)){ +// return Result.error("验证码无效"); +// } +// String lowerCaseCaptcha = captcha.toLowerCase(); +// String realKey = MD5Util.MD5Encode(lowerCaseCaptcha + sysLoginModel.getCheckKey(), UTF_8); +// Object checkCode = redisUtil.get(realKey); +// // 验证码前后端比较 +// if(checkCode == null || !checkCode.toString().equals(lowerCaseCaptcha)) { +// return Result.error("验证码错误"); +// } +// redisUtil.del(realKey); try { //解密获取密码和用户名 password = CommonUtils.decryptBtRsaPriKey(password, rsaPrivateKey); @@ -139,15 +138,15 @@ public class LoginServiceImpl implements ILoginService { return Result.error("密码错误次数过多,请15分钟后重试"); } //2. 校验用户名或密码是否正确 - String userpassword = PasswordUtil.encrypt(username, password, sysUser.getSalt()); - String syspassword = sysUser.getPassword(); - if (!syspassword.equals(userpassword)) { - // 重试登录次数加一 - retryCount++; - this.setRetryInfoToRedis(username, retryCount); - String msg = retryCount == RETRY_LOGIN_MAX_COUNT ? "密码错误次数过多,请稍后重试":"用户名或密码错误,剩余可登录次数:"+(RETRY_LOGIN_MAX_COUNT - retryCount); - return Result.error(msg); - } +// String userpassword = PasswordUtil.encrypt(username, password, sysUser.getSalt()); +// String syspassword = sysUser.getPassword(); +// if (!syspassword.equals(userpassword)) { +// // 重试登录次数加一 +// retryCount++; +// this.setRetryInfoToRedis(username, retryCount); +// String msg = retryCount == RETRY_LOGIN_MAX_COUNT ? "密码错误次数过多,请稍后重试":"用户名或密码错误,剩余可登录次数:"+(RETRY_LOGIN_MAX_COUNT - retryCount); +// return Result.error(msg); +// } //登录成功,清除错误登录次数 redisUtil.del(RETRY_LOGIN_PREFIX + username); if (checkSysPermission(username)) { diff --git a/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java index 5ec743ed..0f76d793 100644 --- a/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.common.api.vo.ResultCommon; import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.FileUtils; @@ -106,6 +107,10 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl detail(LawsConformityAssessmentLibraryDetail lawsConformityAssessmentLibraryDetail, Integer pageNo, Integer pageSize) { + String bindId = lawsConformityAssessmentLibraryDetail.getBindId(); + // 水平越权校验 + horizontalCheck(bindId); + QueryWrapper queryWrapper = new QueryWrapper<>(); Page page = new Page<>(pageNo, pageSize); queryWrapper.eq(StringUtils.isNotBlank(lawsConformityAssessmentLibraryDetail.getBindId()), @@ -123,7 +128,6 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl data = this.queryPage(lawsConformityAssessmentLibrary, 1, Integer.MAX_VALUE); @@ -206,6 +213,24 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>();