From 40d3e277740f7e0d429b2adae4841109ba7ad043 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Mon, 16 Dec 2024 09:21:38 +0800 Subject: [PATCH 01/15] =?UTF-8?q?=E5=B0=86=E5=85=AC=E5=85=B1=E5=BE=AE?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E4=BB=A3=E7=A0=81=E7=89=88=E6=9C=AC=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E5=88=B024.12.0-SNAPSHOT=20=E5=92=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9RequiresPermissionsOrInnerAuth=20=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bonus-api/bonus-api-system/pom.xml | 2 +- bonus-api/pom.xml | 2 +- bonus-auth/pom.xml | 4 ++-- bonus-common/bonus-common-config/pom.xml | 2 +- bonus-common/bonus-common-core/pom.xml | 2 +- bonus-common/bonus-common-datascope/pom.xml | 2 +- bonus-common/bonus-common-datasource/pom.xml | 2 +- bonus-common/bonus-common-log/pom.xml | 2 +- bonus-common/bonus-common-redis/pom.xml | 2 +- bonus-common/bonus-common-seata/pom.xml | 2 +- bonus-common/bonus-common-security/pom.xml | 2 +- .../RequiresPermissionsOrInnerAuth.java | 12 ++++------ ....java => PermissionOrInnerAuthAspect.java} | 23 ++++++++++++++----- ...ot.autoconfigure.AutoConfiguration.imports | 2 ++ bonus-common/bonus-common-sensitive/pom.xml | 2 +- bonus-common/bonus-common-swagger/pom.xml | 2 +- bonus-common/pom.xml | 2 +- bonus-gateway/pom.xml | 2 +- bonus-modules/bonus-face/pom.xml | 2 +- bonus-modules/bonus-file/pom.xml | 2 +- bonus-modules/bonus-gen/pom.xml | 2 +- bonus-modules/bonus-job/pom.xml | 2 +- bonus-modules/bonus-system/pom.xml | 2 +- .../system/controller/SysUserController.java | 3 +-- bonus-modules/pom.xml | 2 +- bonus-visual/bonus-monitor/pom.xml | 2 +- bonus-visual/pom.xml | 2 +- pom.xml | 4 ++-- 28 files changed, 51 insertions(+), 41 deletions(-) rename bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/{PermisssionOrInnerAuthAspect.java => PermissionOrInnerAuthAspect.java} (76%) diff --git a/bonus-api/bonus-api-system/pom.xml b/bonus-api/bonus-api-system/pom.xml index 5227615..21e69e3 100644 --- a/bonus-api/bonus-api-system/pom.xml +++ b/bonus-api/bonus-api-system/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-api - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-api/pom.xml b/bonus-api/pom.xml index 03daccb..253e18a 100644 --- a/bonus-api/pom.xml +++ b/bonus-api/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-auth/pom.xml b/bonus-auth/pom.xml index 0ed55c4..d37f061 100644 --- a/bonus-auth/pom.xml +++ b/bonus-auth/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 @@ -87,7 +87,7 @@ com.bonus bonus-common-config - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT compile diff --git a/bonus-common/bonus-common-config/pom.xml b/bonus-common/bonus-common-config/pom.xml index 1857295..848503a 100644 --- a/bonus-common/bonus-common-config/pom.xml +++ b/bonus-common/bonus-common-config/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-core/pom.xml b/bonus-common/bonus-common-core/pom.xml index 9e3b46f..26fe105 100644 --- a/bonus-common/bonus-common-core/pom.xml +++ b/bonus-common/bonus-common-core/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-datascope/pom.xml b/bonus-common/bonus-common-datascope/pom.xml index c7c623a..47d3b02 100644 --- a/bonus-common/bonus-common-datascope/pom.xml +++ b/bonus-common/bonus-common-datascope/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-datasource/pom.xml b/bonus-common/bonus-common-datasource/pom.xml index 84dc2e5..ad83cf9 100644 --- a/bonus-common/bonus-common-datasource/pom.xml +++ b/bonus-common/bonus-common-datasource/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-log/pom.xml b/bonus-common/bonus-common-log/pom.xml index 278f03b..745f7d0 100644 --- a/bonus-common/bonus-common-log/pom.xml +++ b/bonus-common/bonus-common-log/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-redis/pom.xml b/bonus-common/bonus-common-redis/pom.xml index 897b8bb..8fd4cea 100644 --- a/bonus-common/bonus-common-redis/pom.xml +++ b/bonus-common/bonus-common-redis/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-seata/pom.xml b/bonus-common/bonus-common-seata/pom.xml index db431fb..7170bf6 100644 --- a/bonus-common/bonus-common-seata/pom.xml +++ b/bonus-common/bonus-common-seata/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-security/pom.xml b/bonus-common/bonus-common-security/pom.xml index 76e3879..68398bd 100644 --- a/bonus-common/bonus-common-security/pom.xml +++ b/bonus-common/bonus-common-security/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/annotation/RequiresPermissionsOrInnerAuth.java b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/annotation/RequiresPermissionsOrInnerAuth.java index 75d9d9c..27f9a9d 100644 --- a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/annotation/RequiresPermissionsOrInnerAuth.java +++ b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/annotation/RequiresPermissionsOrInnerAuth.java @@ -1,17 +1,15 @@ package com.bonus.common.security.annotation; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; +import java.lang.annotation.*; /** * @author wangvivi */ -@Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) +@Target({ ElementType.METHOD, ElementType.TYPE }) +@Documented public @interface RequiresPermissionsOrInnerAuth { - InnerAuth innerAuth() default @InnerAuth(); - RequiresPermissions requiresPermissions() default @RequiresPermissions(); + InnerAuth innerAuth() default @InnerAuth(isUser = false); + RequiresPermissions requiresPermissions() default @RequiresPermissions(value = {}); } diff --git a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/PermisssionOrInnerAuthAspect.java b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/PermissionOrInnerAuthAspect.java similarity index 76% rename from bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/PermisssionOrInnerAuthAspect.java rename to bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/PermissionOrInnerAuthAspect.java index e9a28ef..80efcd0 100644 --- a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/PermisssionOrInnerAuthAspect.java +++ b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/aspect/PermissionOrInnerAuthAspect.java @@ -11,6 +11,7 @@ import lombok.extern.slf4j.Slf4j; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; import org.aspectj.lang.reflect.MethodSignature; import org.springframework.core.Ordered; import org.springframework.stereotype.Component; @@ -24,13 +25,14 @@ import java.lang.reflect.Method; */ @Aspect @Component -@Slf4j -public class PermisssionOrInnerAuthAspect +public class PermissionOrInnerAuthAspect { - @Around("@annotation(RequiresPermissionsOrInnerAuth)") - public Object innerAround(ProceedingJoinPoint point, RequiresPermissionsOrInnerAuth permissionsOrInnerAuth) throws Throwable + @Pointcut("@annotation(com.bonus.common.security.annotation.RequiresPermissionsOrInnerAuth)") + public void permissionOrInnerAuthAspect() {} + + @Around("permissionOrInnerAuthAspect()") + public Object innerAround(ProceedingJoinPoint point) throws Throwable { - log.info("******************RequiresPermissionsOrInnerAuth**********"); MethodSignature signature = (MethodSignature) point.getSignature(); RequiresPermissionsOrInnerAuth auth = signature.getMethod().getAnnotation(RequiresPermissionsOrInnerAuth.class); @@ -56,7 +58,7 @@ public class PermisssionOrInnerAuthAspect try { AuthUtil.checkInnerAuth(innerAuth); } catch (InnerAuthException e){ - log.error("内部认证失败:{}",e.getMessage()); +// log.error("内部认证失败:{}",e.getMessage()); return false; } return true; @@ -66,4 +68,13 @@ public class PermisssionOrInnerAuthAspect AuthUtil.checkPermi(requiresPermissions,point); return true; } + +// /** +// * 确保在权限认证aop执行前执行 +// */ +// @Override +// public int getOrder() +// { +// return Ordered.HIGHEST_PRECEDENCE + 2; +// } } diff --git a/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 3a220a6..2a8788a 100644 --- a/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -4,6 +4,8 @@ com.bonus.common.security.config.VerificationCodeConfig com.bonus.common.security.service.TokenService com.bonus.common.security.service.SmsService com.bonus.common.security.service.EmailService +com.bonus.common.security.aspect.PermissionOrInnerAuthAspect com.bonus.common.security.aspect.PreAuthorizeAspect com.bonus.common.security.aspect.InnerAuthAspect +com.bonus.common.security.aspect.PreventRepeatSubmitAspect com.bonus.common.security.handler.GlobalExceptionHandler diff --git a/bonus-common/bonus-common-sensitive/pom.xml b/bonus-common/bonus-common-sensitive/pom.xml index a9cbe44..7048e18 100644 --- a/bonus-common/bonus-common-sensitive/pom.xml +++ b/bonus-common/bonus-common-sensitive/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/bonus-common-swagger/pom.xml b/bonus-common/bonus-common-swagger/pom.xml index aee2193..f17ef31 100644 --- a/bonus-common/bonus-common-swagger/pom.xml +++ b/bonus-common/bonus-common-swagger/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-common - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-common/pom.xml b/bonus-common/pom.xml index f6f0f93..5252fc1 100644 --- a/bonus-common/pom.xml +++ b/bonus-common/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-gateway/pom.xml b/bonus-gateway/pom.xml index b1d8e47..7316af7 100644 --- a/bonus-gateway/pom.xml +++ b/bonus-gateway/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-modules/bonus-face/pom.xml b/bonus-modules/bonus-face/pom.xml index 6ce02d2..098ff1c 100644 --- a/bonus-modules/bonus-face/pom.xml +++ b/bonus-modules/bonus-face/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-modules/bonus-file/pom.xml b/bonus-modules/bonus-file/pom.xml index 7e3f1b3..60cc602 100644 --- a/bonus-modules/bonus-file/pom.xml +++ b/bonus-modules/bonus-file/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-modules/bonus-gen/pom.xml b/bonus-modules/bonus-gen/pom.xml index 03aad6c..85d934f 100644 --- a/bonus-modules/bonus-gen/pom.xml +++ b/bonus-modules/bonus-gen/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-modules/bonus-job/pom.xml b/bonus-modules/bonus-job/pom.xml index 14a45fd..bed8c0e 100644 --- a/bonus-modules/bonus-job/pom.xml +++ b/bonus-modules/bonus-job/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-modules/bonus-system/pom.xml b/bonus-modules/bonus-system/pom.xml index 1877d92..3c8fbaf 100644 --- a/bonus-modules/bonus-system/pom.xml +++ b/bonus-modules/bonus-system/pom.xml @@ -5,7 +5,7 @@ com.bonus bonus-modules - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java index 099bc9c..88ab1ee 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java @@ -24,7 +24,6 @@ import com.bonus.system.service.*; import com.bonus.system.warning.WebSocketHandler; import org.apache.commons.lang3.ArrayUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Async; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -77,7 +76,7 @@ public class SysUserController extends BaseController { /** * 获取用户列表 */ - @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("system:user:list")) + @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth(isUser = false), requiresPermissions = @RequiresPermissions("system:user:list")) @GetMapping("/list") @PreventRepeatSubmit @SysLog(title = "用户管理", businessType = OperaType.QUERY, logType = 0, module = "系统管理->用户管理", details = "查询用户列表") diff --git a/bonus-modules/pom.xml b/bonus-modules/pom.xml index 2dde368..9af9141 100644 --- a/bonus-modules/pom.xml +++ b/bonus-modules/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-visual/bonus-monitor/pom.xml b/bonus-visual/bonus-monitor/pom.xml index e1b3316..3473892 100644 --- a/bonus-visual/bonus-monitor/pom.xml +++ b/bonus-visual/bonus-monitor/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus-visual - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/bonus-visual/pom.xml b/bonus-visual/pom.xml index cb1044a..870355b 100644 --- a/bonus-visual/pom.xml +++ b/bonus-visual/pom.xml @@ -4,7 +4,7 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT 4.0.0 diff --git a/pom.xml b/pom.xml index a51babd..d9cb79b 100644 --- a/pom.xml +++ b/pom.xml @@ -6,14 +6,14 @@ com.bonus bonus - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT bonus http://www.ahbonus.cn 博诺思微服务系统 - 24.11.0-SNAPSHOT + 24.12.0-SNAPSHOT UTF-8 UTF-8 1.8 From ca5066e21edc9156917a2eff0520cd61cb7747bb Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Mon, 16 Dec 2024 10:09:14 +0800 Subject: [PATCH 02/15] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=8D=E8=83=BD?= =?UTF-8?q?=E7=94=A8=E6=89=8B=E6=9C=BA=E5=8F=B7=E7=99=BB=E5=BD=95=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bonus/auth/service/EmailOtpLoginStrategy.java | 2 +- .../com/bonus/auth/service/EmailPasswordLoginStrategy.java | 2 +- .../java/com/bonus/auth/service/PhoneOtpLoginStrategy.java | 2 +- .../com/bonus/auth/service/PhonePasswordLoginStrategy.java | 2 +- .../bonus/auth/service/RegisterVerificationCodeSender.java | 4 ++-- .../src/main/java/com/bonus/auth/service/SysLoginService.java | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/EmailOtpLoginStrategy.java b/bonus-auth/src/main/java/com/bonus/auth/service/EmailOtpLoginStrategy.java index db40ed1..297d34f 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/EmailOtpLoginStrategy.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/EmailOtpLoginStrategy.java @@ -31,7 +31,7 @@ public class EmailOtpLoginStrategy implements LoginStrategy { throw new ServiceException("用户不存在/密码错误"); } passwordValidatorService.checkPhoneCaptcha(email, otp); - R userResult = remoteUserService.getUserInfoByEmail(Sm4Utils.encrypt(email), SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByEmail(email, SecurityConstants.INNER); //验证用户是否存在 passwordValidatorService.validateUserResult(email, userResult); LoginUser userInfo = userResult.getData(); diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/EmailPasswordLoginStrategy.java b/bonus-auth/src/main/java/com/bonus/auth/service/EmailPasswordLoginStrategy.java index 08fbbcf..733ebb0 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/EmailPasswordLoginStrategy.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/EmailPasswordLoginStrategy.java @@ -34,7 +34,7 @@ public class EmailPasswordLoginStrategy implements LoginStrategy { throw new ServiceException("用户不存在/密码错误"); } //通过手机号获取用户信息 - R userResult = remoteUserService.getUserInfoByEmail(Sm4Utils.encrypt(email), SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByEmail(email, SecurityConstants.INNER); //验证用户是否存在 passwordValidatorService.validateUserResult(email, userResult); //获取用户信息 diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/PhoneOtpLoginStrategy.java b/bonus-auth/src/main/java/com/bonus/auth/service/PhoneOtpLoginStrategy.java index 8d4572b..3570a03 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/PhoneOtpLoginStrategy.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/PhoneOtpLoginStrategy.java @@ -33,7 +33,7 @@ public class PhoneOtpLoginStrategy implements LoginStrategy { throw new ServiceException("用户不存在/验证码错误"); } passwordValidatorService.checkPhoneCaptcha(phone, otp); - R userResult = remoteUserService.getUserInfoByPhone(Sm4Utils.encrypt(phone), SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByPhone(phone, SecurityConstants.INNER); //验证用户是否存在 passwordValidatorService.validateUserResult(phone, userResult); LoginUser userInfo = userResult.getData(); diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/PhonePasswordLoginStrategy.java b/bonus-auth/src/main/java/com/bonus/auth/service/PhonePasswordLoginStrategy.java index 469a4f4..c580ed2 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/PhonePasswordLoginStrategy.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/PhonePasswordLoginStrategy.java @@ -36,7 +36,7 @@ public class PhonePasswordLoginStrategy implements LoginStrategy { throw new ServiceException("用户不存在/密码错误"); } //通过手机号获取用户信息 - R userResult = remoteUserService.getUserInfoByPhone(Sm4Utils.encrypt(phone), SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByPhone(phone, SecurityConstants.INNER); //验证用户是否存在 passwordValidatorService.validateUserResult(phone, userResult); //获取用户信息 diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/RegisterVerificationCodeSender.java b/bonus-auth/src/main/java/com/bonus/auth/service/RegisterVerificationCodeSender.java index f5f395c..7ddf915 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/RegisterVerificationCodeSender.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/RegisterVerificationCodeSender.java @@ -44,7 +44,7 @@ public class RegisterVerificationCodeSender implements VerificationCodeStrategy if (!systemConfig.getRegistersConfig().isEmailRegisters()) { throw new ServiceException("请输入正确的联系方式"); } - R userResult = remoteUserService.getUserInfoByEmail(Sm4Utils.encrypt(contactInfo) , SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByEmail(contactInfo , SecurityConstants.INNER); if (userResult.getData() != null) { throw new ServiceException("联系方式已经注册账号"); } @@ -53,7 +53,7 @@ public class RegisterVerificationCodeSender implements VerificationCodeStrategy if (!systemConfig.getRegistersConfig().isPhoneRegisters()) { throw new ServiceException("请输入正确的联系方式"); } - R userResult = remoteUserService.getUserInfoByPhone(Sm4Utils.encrypt(contactInfo), SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByPhone(contactInfo, SecurityConstants.INNER); if (userResult.getData() != null) { throw new ServiceException("联系方式已经注册账号"); } diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java b/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java index 4ba79d8..55a3d7b 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java @@ -87,12 +87,12 @@ public class SysLoginService { int contactType = getContactType(registerBody.getMobile()); if (contactType == 0) { - R userResult = remoteUserService.getUserInfoByEmail(Sm4Utils.encrypt(registerBody.getMobile()) , SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByEmail(registerBody.getMobile() , SecurityConstants.INNER); if (userResult.getData() != null) { throw new ServiceException("联系方式已经注册账号"); } } else if (contactType == 1) { - R userResult = remoteUserService.getUserInfoByPhone(Sm4Utils.encrypt(registerBody.getMobile()) , SecurityConstants.INNER); + R userResult = remoteUserService.getUserInfoByPhone(registerBody.getMobile() , SecurityConstants.INNER); if (userResult.getData() != null) { throw new ServiceException("联系方式已经注册账号"); } From 00a719d9bacb213c3fb5f7c3ebb2e712f71adbd3 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Fri, 20 Dec 2024 08:31:13 +0800 Subject: [PATCH 03/15] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bonus/system/api/domain/SysUser.java | 9 +++++---- .../common/core/utils/encryption/Sm4Utils.java | 12 +++++------- .../common/security/utils/SecurityUtils.java | 16 ++++++++++++++-- .../system/controller/SysUserController.java | 2 -- .../system/service/impl/SysUserServiceImpl.java | 9 ++++++++- 5 files changed, 32 insertions(+), 16 deletions(-) diff --git a/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java b/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java index 61627be..1e3f978 100644 --- a/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java +++ b/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java @@ -11,6 +11,7 @@ import org.apache.commons.lang3.builder.ToStringStyle; import javax.validation.constraints.Email; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Pattern; import javax.validation.constraints.Size; import java.util.Date; import java.util.List; @@ -194,7 +195,7 @@ public class SysUser extends BaseEntity { } @Xss(message = "用户昵称不能包含脚本字符") - @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符") + @Size(min = 0, max = 20, message = "用户昵称长度不能超过20个字符") public String getNickName() { return nickName; } @@ -205,7 +206,7 @@ public class SysUser extends BaseEntity { @Xss(message = "用户账号不能包含脚本字符") @NotBlank(message = "用户账号不能为空") - @Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符") + @Size(min = 0, max = 20, message = "用户账号长度不能超过20个字符") public String getUserName() { return userName; } @@ -215,7 +216,7 @@ public class SysUser extends BaseEntity { } @Email(message = "邮箱格式不正确") -// @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") + @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") public String getEmail() { return email; } @@ -224,7 +225,7 @@ public class SysUser extends BaseEntity { this.email = email; } -// @Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符") + @Pattern(regexp = "^\\d{11}$", message = "手机号码只能包含11位数字") public String getPhonenumber() { return phonenumber; } diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java index f08b9d1..8118f17 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java @@ -19,7 +19,7 @@ public class Sm4Utils { * 加密数据,使用固定盐 * * @param plainText 明文,待加密的字符串 - * @return 加密后的密文(包含盐),Hex 编码格式 + * @return 加密后的密文(包含盐),Hex 编码格式,如果加密异常就返回传入的字符串 */ public static String encrypt(String plainText) { try { @@ -29,8 +29,7 @@ public class Sm4Utils { // 返回带盐的加密结果(Hex编码) return HexUtil.encodeHexStr(encryptedData); } catch (Exception e) { -// e.printStackTrace(); - return null; // 发生异常时返回null + return plainText; // 发生异常时返回null } } @@ -38,7 +37,7 @@ public class Sm4Utils { * 解密数据,使用固定盐 * * @param cipherText 密文(包含盐),Hex 编码格式的字符串 - * @return 解密后的明文字符串 + * @return 解密后的明文字符串,如果解密异常就返回传入的字符串 */ public static String decrypt(String cipherText) { try { @@ -48,8 +47,7 @@ public class Sm4Utils { byte[] decryptedData = sm4.decrypt(cipherText); return new String(decryptedData); } catch (Exception e) { -// e.printStackTrace(); - return null; // 发生异常时返回null + return cipherText; // 发生异常时返回null } } @@ -63,7 +61,7 @@ public class Sm4Utils { System.out.println("加密后: " + encryptedText); // 解密密文 - String decryptedText = Sm4Utils.decrypt(encryptedText); + String decryptedText = Sm4Utils.decrypt(plainText); System.out.println("解密后: " + decryptedText); } } diff --git a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/utils/SecurityUtils.java b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/utils/SecurityUtils.java index eed0f78..5be97b8 100644 --- a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/utils/SecurityUtils.java +++ b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/utils/SecurityUtils.java @@ -7,6 +7,7 @@ import com.bonus.common.core.utils.ServletUtils; import com.bonus.common.core.utils.StringUtils; import com.bonus.common.core.utils.encryption.Sm4Utils; import com.bonus.system.api.model.LoginUser; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import javax.servlet.http.HttpServletRequest; @@ -116,14 +117,25 @@ public class SecurityUtils } public static void main(String[] args) { + //老的加密方式要保留,偶尔调试要用 +// BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); +// String encodePass = passwordEncoder.encode("Bonus$2026"); +// System.out.println(encodePass); +// boolean result = passwordEncoder.matches("Bonus$2026", "$2a$10$0TaYZgPNd7eqpvsKx4KZnu0nPiSQlVn5SZZaJa2q6tLPuI9bWD0lW"); +// System.out.println("result: " + result); + //$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2 //$2a$10$zvlw3Mu8M.j.MhAChrYwluj88ziX6lVD3AoRrBQpwKMcdIZvKMoR2 // String msg= encryptPassword("Admin@1234"); // String msg= encryptPassword("15888888888"); // boolean rest = matchesPassword("Bonus$2024","$2a$10$8JaKSUAU.K.mceU1.YQbd.wP4EJzbrsIscjAwPlfDR7wAWV6s/BGa"); - String msg = Sm4Utils.encrypt("Bonus$2026"); -// String msg = Sm4Utils.decrypt("4eb762402e0ce5ef9d0028e2d622c53bc8ea1d7680ea4416975e4cc23b4ef7f0"); + String msg = Sm4Utils.encrypt("18956025265"); System.err.println(msg); + + String msg1 = Sm4Utils.encrypt("1895"); + System.err.println(msg1); +// String msg = Sm4Utils.decrypt("4eb762402e0ce5ef9d0028e2d622c53bc8ea1d7680ea4416975e4cc23b4ef7f0"); + // System.err.println(rest); } } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java index 88ab1ee..e4dbf7d 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java @@ -78,13 +78,11 @@ public class SysUserController extends BaseController { */ @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth(isUser = false), requiresPermissions = @RequiresPermissions("system:user:list")) @GetMapping("/list") - @PreventRepeatSubmit @SysLog(title = "用户管理", businessType = OperaType.QUERY, logType = 0, module = "系统管理->用户管理", details = "查询用户列表") public TableDataInfo list(SysUser user) { try { startPage(); List list = userService.selectUserList(user); - webSocketHandler.sendMessageToAll("213123"); return getDataTable(list); } catch (Exception e) { logger.error(e.toString(), e); diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java index eab786c..03f0fd1 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java @@ -562,7 +562,14 @@ public class SysUserServiceImpl implements ISysUserService { } catch (Exception e) { failureNum++; String msg = "
" + failureNum + "、账号 " + user.getUserName() + " 导入失败:"; - failureMsg.append(msg + e.getMessage()); + //修复禅道bug 4076,wangweiwei 2024/12/16 + String message = e.getMessage(); + if (message != null && message.contains(":")) { + // 去掉冒号及其前面的字段名部分 + failureMsg.append(msg + message.substring(message.indexOf(":") + 2).trim()); + }else { + failureMsg.append(msg + e.getMessage()); + } log.error(msg, e); } } From 817f72233276d4efc0a32a5a837a9e2b586a5da5 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Fri, 20 Dec 2024 08:32:28 +0800 Subject: [PATCH 04/15] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dsm4=E5=8A=A0=E5=AF=86?= =?UTF-8?q?=E6=97=B6=E5=BC=82=E5=B8=B8=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bonus/common/core/utils/encryption/Sm4Utils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java index 8118f17..cbfe8bc 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/utils/encryption/Sm4Utils.java @@ -29,7 +29,7 @@ public class Sm4Utils { // 返回带盐的加密结果(Hex编码) return HexUtil.encodeHexStr(encryptedData); } catch (Exception e) { - return plainText; // 发生异常时返回null + return plainText; // 发生异常时返回传入字符串 } } @@ -47,7 +47,7 @@ public class Sm4Utils { byte[] decryptedData = sm4.decrypt(cipherText); return new String(decryptedData); } catch (Exception e) { - return cipherText; // 发生异常时返回null + return cipherText; // 发生异常时返回传入字符串 } } From 49e65d6f67895a11d40c08306ed57776eea0e44b Mon Sep 17 00:00:00 2001 From: 15856 <15856818120@163.com> Date: Fri, 20 Dec 2024 09:41:34 +0800 Subject: [PATCH 05/15] =?UTF-8?q?i=E7=9A=96=E9=80=81=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3=E7=BC=96?= =?UTF-8?q?=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auth/controller/TokenController.java | 82 +++++++++++++++++++ .../core/constant/SecurityConstants.java | 5 ++ 2 files changed, 87 insertions(+) diff --git a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java index 9d3b3dc..bcc3eff 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java +++ b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java @@ -1,5 +1,6 @@ package com.bonus.auth.controller; +import com.alibaba.fastjson.JSONObject; import com.bonus.auth.config.LoginType; import com.bonus.auth.factory.LoginStrategyFactory; import com.bonus.auth.form.LoginBody; @@ -8,6 +9,7 @@ import com.bonus.auth.service.*; import com.bonus.common.core.constant.CacheConstants; import com.bonus.common.core.constant.SecurityConstants; import com.bonus.common.core.domain.R; +import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.JwtUtils; import com.bonus.common.core.utils.StringUtils; import com.bonus.common.core.web.domain.AjaxResult; @@ -23,14 +25,19 @@ import com.bonus.system.api.domain.SysUser; import com.bonus.system.api.model.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.Collection; +import java.util.HashMap; +import java.util.Map; import java.util.Set; /** @@ -71,6 +78,12 @@ public class TokenController { @Resource private RemoteConfigService configService; + @Value("${iws.appId}") + private String iwsAppId; + + @Value("${iws.url}") + private String iwsUrl; + @PostMapping("isAdmin") public R isAdmin(@RequestBody LoginBody form) { if (!config.isAdmin()) { @@ -139,6 +152,75 @@ public class TokenController { } + /** + * i皖送登录 + * @param req + * @return + */ + @PostMapping("iwsLogin") + public R iwsLogin(@RequestBody HttpServletRequest req) { + //获取i皖送传过来的票据 + String ticket = req.getParameter("ticket"); + log.info("ticket=" + ticket); + if (StringUtils.isNotEmpty(ticket)) { + //获取系统标识,这里可以放到配置文件中 + //String appId = "ec3fce308fcc407a79e1f09938ba16ab"; + //调用i皖送平台进行认证获取用户信息 + //String url = "http://sgwpdm.ah.sgcc.com.cn/iws/workplat/auth/auth-by-ticket?ticket={ticket}&appId={appId}"; + RestTemplate restTemplate = new RestTemplate(); + Map paramMap = new HashMap<>(); + paramMap.put("ticket", ticket); + paramMap.put("appId", iwsAppId); + ResponseEntity authResponse = restTemplate.getForEntity(iwsUrl, String.class, paramMap); + log.info("authResponse:" + authResponse.toString()); + if ("200".equals(authResponse.getStatusCode())){ + // 根据ResponseEntity responseEntity对象,获取body部分,body为json格式字符串 + String content = authResponse.getBody(); + // 将json字符串转化为json对象 + JSONObject json = JSONObject.parseObject(content); + // 取出data部分对象 + JSONObject data = json.getJSONObject("data"); + //根据用户信息来生成token,并保存,不过目前来说因为不知道返回的内容,这里先用一个固定数据来生成token,后期修改 + LoginUser loginUser = new LoginUser(); + SysUser sysUser = new SysUser(); + sysUser.setUserName(data.get("name").toString()); + loginUser.setSysUser(sysUser); + //通过用户名获取人员信息 + R userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); + if (userResult.getData() == null || R.FAIL == userResult.getCode()) { + log.info("登录用户不存在,进行创建----"); + RegisterBody registerBody = new RegisterBody(); + registerBody.setUsername(sysUser.getUserName()); + registerBody.setNickName(data.get("userName").toString()); + registerBody.setMobile(data.get("mobile").toString()); + sysUser.setPassword(SecurityConstants.PASSWORD); + //新用户注册 + try { + sysLoginService.register(registerBody); + //查询用户信息 + userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); + loginUser = userResult.getData(); + sysUser = loginUser.getSysUser(); + //初始化一个角色 + Long[] roleIds = new Long[5]; + // 将数组的第一个元素赋值为 2 + roleIds[0] = 2L; + remoteUserService.insertAuthRole(sysUser.getUserId(),roleIds,SecurityConstants.INNER); + }catch (Exception e){ + throw new ServiceException("登录失败,请稍后重试"); + } + }else { + loginUser = userResult.getData(); + sysUser = loginUser.getSysUser(); + } + sysUser.setUserId(sysUser.getUserId()); + logService.saveLogin(sysUser.getUserName(), "登录", "登录成功", null, "成功"); + return R.ok(tokenService.createToken(loginUser)); + } + } + return R.fail("登录失败!"); + } + /** * 获取手机验证码 * diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java index 7bc2e40..40bd224 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java @@ -46,4 +46,9 @@ public class SecurityConstants * 角色权限 */ public static final String ROLE_PERMISSION = "role_permission"; + + /** + * i皖送初始化密码 + */ + public static final String PASSWORD = "Iws@20241219"; } From b7b00cf7fe35beee5d94190ae1d2d5af3a923727 Mon Sep 17 00:00:00 2001 From: 15856 <15856818120@163.com> Date: Fri, 20 Dec 2024 09:51:56 +0800 Subject: [PATCH 06/15] =?UTF-8?q?i=E7=9A=96=E9=80=81=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3=E7=BC=96?= =?UTF-8?q?=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/bonus/auth/controller/TokenController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java index bcc3eff..654b706 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java +++ b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java @@ -183,7 +183,7 @@ public class TokenController { //根据用户信息来生成token,并保存,不过目前来说因为不知道返回的内容,这里先用一个固定数据来生成token,后期修改 LoginUser loginUser = new LoginUser(); SysUser sysUser = new SysUser(); - sysUser.setUserName(data.get("name").toString()); + sysUser.setUserName(data.get("userName").toString()); loginUser.setSysUser(sysUser); //通过用户名获取人员信息 R userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); @@ -191,7 +191,7 @@ public class TokenController { log.info("登录用户不存在,进行创建----"); RegisterBody registerBody = new RegisterBody(); registerBody.setUsername(sysUser.getUserName()); - registerBody.setNickName(data.get("userName").toString()); + registerBody.setNickName(data.get("name").toString()); registerBody.setMobile(data.get("mobile").toString()); sysUser.setPassword(SecurityConstants.PASSWORD); //新用户注册 From fe21957eb740e07a92c7a2e75513aed561851db6 Mon Sep 17 00:00:00 2001 From: 15856 <15856818120@163.com> Date: Fri, 20 Dec 2024 10:55:15 +0800 Subject: [PATCH 07/15] =?UTF-8?q?i=E7=9A=96=E9=80=81=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3=E7=BC=96?= =?UTF-8?q?=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/bonus/auth/controller/TokenController.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java index 654b706..536dbf2 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java +++ b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java @@ -180,7 +180,6 @@ public class TokenController { JSONObject json = JSONObject.parseObject(content); // 取出data部分对象 JSONObject data = json.getJSONObject("data"); - //根据用户信息来生成token,并保存,不过目前来说因为不知道返回的内容,这里先用一个固定数据来生成token,后期修改 LoginUser loginUser = new LoginUser(); SysUser sysUser = new SysUser(); sysUser.setUserName(data.get("userName").toString()); @@ -213,8 +212,8 @@ public class TokenController { loginUser = userResult.getData(); sysUser = loginUser.getSysUser(); } - sysUser.setUserId(sysUser.getUserId()); logService.saveLogin(sysUser.getUserName(), "登录", "登录成功", null, "成功"); + //生成系统token return R.ok(tokenService.createToken(loginUser)); } } From a30aab2fc24928e0be72c4dda23d5b398c69b5b2 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Fri, 20 Dec 2024 11:58:19 +0800 Subject: [PATCH 08/15] =?UTF-8?q?=E8=BF=99=E4=B8=AA=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E7=B1=BB=E8=A2=AB=E5=B0=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/bonus/auth/controller/TokenController.java | 4 ++-- bonus-auth/src/main/resources/bootstrap-dev.yml | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java index 536dbf2..038f962 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java +++ b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java @@ -78,10 +78,10 @@ public class TokenController { @Resource private RemoteConfigService configService; - @Value("${iws.appId}") + @Value("${third-party-login.iws.appId}") private String iwsAppId; - @Value("${iws.url}") + @Value("${third-party-login.iws.url}") private String iwsUrl; @PostMapping("isAdmin") diff --git a/bonus-auth/src/main/resources/bootstrap-dev.yml b/bonus-auth/src/main/resources/bootstrap-dev.yml index fad7b8b..dde7233 100644 --- a/bonus-auth/src/main/resources/bootstrap-dev.yml +++ b/bonus-auth/src/main/resources/bootstrap-dev.yml @@ -19,3 +19,8 @@ spring: # 共享配置 shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + +third-party-login: + iws: + appId: + url: \ No newline at end of file From 7c8405fc556a31e2fdb5f8fb8d402177d720a75d Mon Sep 17 00:00:00 2001 From: lizhenhua <1075222162@qq.com> Date: Fri, 20 Dec 2024 15:47:57 +0800 Subject: [PATCH 09/15] =?UTF-8?q?=E6=BC=8F=E6=B4=9E=E4=BF=AE=E5=A4=8D=20?= =?UTF-8?q?=20=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bonus/system/service/impl/SysUserServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java index 03f0fd1..5d0a2f8 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java @@ -90,10 +90,16 @@ public class SysUserServiceImpl implements ISysUserService { @DataScope(deptAlias = "d", userAlias = "u") public List selectUserList(SysUser user) { try { + //临时获取开始时间和结束时间 + String beginTime = (String) user.getParams().get("beginTime"); + String endTime = (String) user.getParams().get("endTime"); BaseEntity entity = CommonDataPermissionInfo.backMissionInfo(user.getParams().get("dataScope").toString()); BeanUtils.copyProperties(entity, user); + user.getParams().put("beginTime", beginTime); + user.getParams().put("endTime", endTime); } catch (Exception e) { e.printStackTrace(); + } if (user.getUserName() != null) { String userName =user.getUserName().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_"); From 387898a830e3b2e6497c80ff0ad245b4c97e7cdb Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Fri, 20 Dec 2024 16:06:43 +0800 Subject: [PATCH 10/15] =?UTF-8?q?=E8=BF=99=E4=B8=AA=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E7=B1=BB=E8=A2=AB=E5=B0=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bonus-auth/src/main/resources/bootstrap-dev.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/bonus-auth/src/main/resources/bootstrap-dev.yml b/bonus-auth/src/main/resources/bootstrap-dev.yml index dde7233..fad7b8b 100644 --- a/bonus-auth/src/main/resources/bootstrap-dev.yml +++ b/bonus-auth/src/main/resources/bootstrap-dev.yml @@ -19,8 +19,3 @@ spring: # 共享配置 shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} - -third-party-login: - iws: - appId: - url: \ No newline at end of file From 8e91de1d1b1f49ecc1d86756d308a875c401a9c5 Mon Sep 17 00:00:00 2001 From: 15856 <15856818120@163.com> Date: Wed, 25 Dec 2024 11:02:21 +0800 Subject: [PATCH 11/15] =?UTF-8?q?i=E7=9A=96=E9=80=81=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3=E7=BC=96?= =?UTF-8?q?=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auth/controller/TokenController.java | 83 +++++--------- .../java/com/bonus/auth/form/LoginBody.java | 9 ++ .../bonus/auth/service/SysLoginService.java | 102 ++++++++++++++++++ 3 files changed, 135 insertions(+), 59 deletions(-) diff --git a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java index 038f962..5ef880e 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java +++ b/bonus-auth/src/main/java/com/bonus/auth/controller/TokenController.java @@ -78,11 +78,17 @@ public class TokenController { @Resource private RemoteConfigService configService; - @Value("${third-party-login.iws.appId}") - private String iwsAppId; + @Value("${third-party-login.iws.webAppId}") + private String iwsWebAppId; - @Value("${third-party-login.iws.url}") - private String iwsUrl; + @Value("${third-party-login.iws.webUrl}") + private String iwsWebUrl; + + @Value("${third-party-login.iws.h5AppId}") + private String iwsH5AppId; + + @Value("${third-party-login.iws.h5Url}") + private String iwsH5Url; @PostMapping("isAdmin") public R isAdmin(@RequestBody LoginBody form) { @@ -154,68 +160,27 @@ public class TokenController { /** * i皖送登录 - * @param req * @return */ @PostMapping("iwsLogin") - public R iwsLogin(@RequestBody HttpServletRequest req) { + public R iwsLogin(@RequestBody LoginBody form) { //获取i皖送传过来的票据 - String ticket = req.getParameter("ticket"); + String ticket = form.getTicket(); log.info("ticket=" + ticket); if (StringUtils.isNotEmpty(ticket)) { - //获取系统标识,这里可以放到配置文件中 - //String appId = "ec3fce308fcc407a79e1f09938ba16ab"; - //调用i皖送平台进行认证获取用户信息 - //String url = "http://sgwpdm.ah.sgcc.com.cn/iws/workplat/auth/auth-by-ticket?ticket={ticket}&appId={appId}"; - RestTemplate restTemplate = new RestTemplate(); - Map paramMap = new HashMap<>(); - paramMap.put("ticket", ticket); - paramMap.put("appId", iwsAppId); - ResponseEntity authResponse = restTemplate.getForEntity(iwsUrl, String.class, paramMap); - log.info("authResponse:" + authResponse.toString()); - if ("200".equals(authResponse.getStatusCode())){ - // 根据ResponseEntity responseEntity对象,获取body部分,body为json格式字符串 - String content = authResponse.getBody(); - // 将json字符串转化为json对象 - JSONObject json = JSONObject.parseObject(content); - // 取出data部分对象 - JSONObject data = json.getJSONObject("data"); - LoginUser loginUser = new LoginUser(); - SysUser sysUser = new SysUser(); - sysUser.setUserName(data.get("userName").toString()); - loginUser.setSysUser(sysUser); - //通过用户名获取人员信息 - R userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); - if (userResult.getData() == null || R.FAIL == userResult.getCode()) { - log.info("登录用户不存在,进行创建----"); - RegisterBody registerBody = new RegisterBody(); - registerBody.setUsername(sysUser.getUserName()); - registerBody.setNickName(data.get("name").toString()); - registerBody.setMobile(data.get("mobile").toString()); - sysUser.setPassword(SecurityConstants.PASSWORD); - //新用户注册 - try { - sysLoginService.register(registerBody); - //查询用户信息 - userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); - loginUser = userResult.getData(); - sysUser = loginUser.getSysUser(); - //初始化一个角色 - Long[] roleIds = new Long[5]; - // 将数组的第一个元素赋值为 2 - roleIds[0] = 2L; - remoteUserService.insertAuthRole(sysUser.getUserId(),roleIds,SecurityConstants.INNER); - }catch (Exception e){ - throw new ServiceException("登录失败,请稍后重试"); - } - }else { - loginUser = userResult.getData(); - sysUser = loginUser.getSysUser(); - } - logService.saveLogin(sysUser.getUserName(), "登录", "登录成功", null, "成功"); - //生成系统token - return R.ok(tokenService.createToken(loginUser)); + LoginUser loginUser = new LoginUser(); + SysUser sysUser = new SysUser(); + if (form.getSysType()!=null && "1".equals(form.getSysType())){ + sysLoginService.iwsH5Login(ticket,iwsH5AppId,iwsH5Url,loginUser,sysUser); + } else if (form.getSysType()!=null && "0".equals(form.getSysType())) { + sysLoginService.iwsWebLogin(ticket,iwsWebAppId,iwsWebUrl,loginUser,sysUser); + }else { + throw new ServiceException("登录失败,请稍后重试"); } + logService.saveLogin(sysUser.getUserName(), "登录", "登录成功", null, "成功"); + //生成系统token + return R.ok(tokenService.createToken(loginUser)); + } return R.fail("登录失败!"); } diff --git a/bonus-auth/src/main/java/com/bonus/auth/form/LoginBody.java b/bonus-auth/src/main/java/com/bonus/auth/form/LoginBody.java index a27e41a..5724fdb 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/form/LoginBody.java +++ b/bonus-auth/src/main/java/com/bonus/auth/form/LoginBody.java @@ -38,4 +38,13 @@ public class LoginBody { private String mobileCodeType; + /** + * i皖送使用的ticket + */ + private String ticket; + + /** + * i皖送登录方式 0:web端登录 1:H5登录 + */ + private String sysType; } \ No newline at end of file diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java b/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java index 55a3d7b..56de7e6 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java @@ -1,5 +1,6 @@ package com.bonus.auth.service; +import com.alibaba.fastjson.JSONObject; import com.bonus.auth.config.VerificationCodeType; import com.bonus.auth.factory.VerificationCodeStrategyFactory; import com.bonus.auth.form.RegisterBody; @@ -17,16 +18,22 @@ import com.bonus.system.api.RemoteUserService; import com.bonus.system.api.domain.SysUser; import com.bonus.system.api.model.LoginUser; import com.hankcs.hanlp.HanLP; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; +import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; +import java.util.HashMap; +import java.util.Map; /** * 登录校验方法 * 提供登录、注册、验证码获取等服务 */ @Component +@Slf4j public class SysLoginService { @Autowired private RemoteUserService remoteUserService; @@ -184,4 +191,99 @@ public class SysLoginService { return pinyin; } } + + /** + * i皖送Web端登录 + * @param ticket + * @param iwsWebAppId + * @param iwsWebUrl + * @return + */ + public void iwsWebLogin(String ticket, String iwsWebAppId, String iwsWebUrl,LoginUser loginUser,SysUser sysUser) { + Map paramMap = new HashMap<>(); + paramMap.put("ticket", ticket); + paramMap.put("appId", iwsWebAppId); + RestTemplate restTemplate = new RestTemplate(); + ResponseEntity authResponse = restTemplate.getForEntity(iwsWebUrl, String.class, paramMap); + log.info("authResponse:" + authResponse.toString()); + if ("200".equals(authResponse.getStatusCode())){ + // 根据ResponseEntity responseEntity对象,获取body部分,body为json格式字符串 + String content = authResponse.getBody(); + // 将json字符串转化为json对象 + JSONObject json = JSONObject.parseObject(content); + // 取出data部分对象 + JSONObject data = json.getJSONObject("data"); + sysUser.setUserName(data.get("userName").toString()); + sysUser.setNickName(data.get("name").toString()); + sysUser.setPhonenumber(data.get("mobile").toString()); + loginUser.setSysUser(sysUser); + createUser(sysUser,loginUser); + } + } + + /** + * 先查,如果没有进行创建 + * @param sysUser + * @param loginUser + */ + private void createUser(SysUser sysUser, LoginUser loginUser) { + //通过用户名获取人员信息 + R userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); + if (userResult.getData() == null || R.FAIL == userResult.getCode()) { + log.info("登录用户不存在,进行创建----"); + RegisterBody registerBody = new RegisterBody(); + registerBody.setUsername(sysUser.getUserName()); + registerBody.setNickName(sysUser.getNickName()); + registerBody.setMobile(sysUser.getPhonenumber()); + sysUser.setPassword(SecurityConstants.PASSWORD); + //新用户注册 + try { + register(registerBody); + //查询用户信息 + userResult = remoteUserService.getUserInfo(sysUser.getUserName(), SecurityConstants.INNER); + loginUser = userResult.getData(); + sysUser = loginUser.getSysUser(); + //初始化一个角色 + Long[] roleIds = new Long[5]; + // 将数组的第一个元素赋值为 2 + roleIds[0] = 2L; + remoteUserService.insertAuthRole(sysUser.getUserId(),roleIds,SecurityConstants.INNER); + }catch (Exception e){ + throw new ServiceException("登录失败,请稍后重试"); + } + }else { + loginUser = userResult.getData(); + sysUser = loginUser.getSysUser(); + } + } + + /** + * i皖送H5端登录 + * @param ticket + * @param iwsH5AppId + * @param iwsH5Url + * @return + */ + public void iwsH5Login(String ticket, String iwsH5AppId, String iwsH5Url,LoginUser loginUser,SysUser sysUser) { + Map paramMap = new HashMap<>(); + paramMap.put("ticket", ticket); + paramMap.put("appId", iwsH5AppId); + RestTemplate restTemplate = new RestTemplate(); + ResponseEntity authResponse = restTemplate.getForEntity(iwsH5Url, String.class, paramMap); + log.info("authResponse:" + authResponse.toString()); + if ("200".equals(authResponse.getStatusCode())){ + // 根据ResponseEntity responseEntity对象,获取body部分,body为json格式字符串 + String content = authResponse.getBody(); + // 将json字符串转化为json对象 + JSONObject json = JSONObject.parseObject(content); + // 取出data部分对象 + JSONObject data = json.getJSONObject("data"); + JSONObject userInfo = data.getJSONObject("userInfo"); + sysUser.setUserName(userInfo.get("userName").toString()); + sysUser.setNickName(userInfo.get("name").toString()); + sysUser.setPhonenumber(userInfo.get("mobile").toString()); + loginUser.setSysUser(sysUser); + createUser(sysUser,loginUser); + } + } } From 7b9db9e3202344662d0d0f730fec0031dd5f29ac Mon Sep 17 00:00:00 2001 From: 15856 <15856818120@163.com> Date: Fri, 27 Dec 2024 10:19:08 +0800 Subject: [PATCH 12/15] =?UTF-8?q?i=E7=9A=96=E9=80=81=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=AF=86=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bonus/auth/service/SysLoginService.java | 13 +++++++++++-- .../common/core/constant/SecurityConstants.java | 4 ---- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java b/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java index 56de7e6..3e66552 100644 --- a/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java +++ b/bonus-auth/src/main/java/com/bonus/auth/service/SysLoginService.java @@ -14,6 +14,7 @@ import com.bonus.common.core.utils.encryption.Sm4Utils; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.security.utils.SecurityUtils; import com.bonus.config.SystemConfig; +import com.bonus.system.api.RemoteConfigService; import com.bonus.system.api.RemoteUserService; import com.bonus.system.api.domain.SysUser; import com.bonus.system.api.model.LoginUser; @@ -35,7 +36,7 @@ import java.util.Map; @Component @Slf4j public class SysLoginService { - @Autowired + @Resource private RemoteUserService remoteUserService; @@ -51,6 +52,9 @@ public class SysLoginService { @Autowired private SystemConfig systemConfig; + @Resource + private RemoteConfigService configService; + /** * 获取验证码 * @@ -235,7 +239,12 @@ public class SysLoginService { registerBody.setUsername(sysUser.getUserName()); registerBody.setNickName(sysUser.getNickName()); registerBody.setMobile(sysUser.getPhonenumber()); - sysUser.setPassword(SecurityConstants.PASSWORD); + //获取配置中的初始密码 + AjaxResult result = configService.getConfigKey("sys.user.initPassword"); + if (result.isSuccess()) + { + sysUser.setPassword(result.get("msg").toString()); + } //新用户注册 try { register(registerBody); diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java index 40bd224..87ac4a6 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/constant/SecurityConstants.java @@ -47,8 +47,4 @@ public class SecurityConstants */ public static final String ROLE_PERMISSION = "role_permission"; - /** - * i皖送初始化密码 - */ - public static final String PASSWORD = "Iws@20241219"; } From 2567d81ff483956b32621b704438eb6c5ad4d1b6 Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Mon, 30 Dec 2024 14:55:24 +0800 Subject: [PATCH 13/15] =?UTF-8?q?=E6=99=BA=E6=85=A7=E5=B7=A5=E5=9C=B0?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/bootstrap-smart_site_local.yml | 27 ++++++++++++ .../resources/bootstrap-smart_site_local.yml | 43 +++++++++++++++++++ .../resources/bootstrap-smart_site_local.yml | 21 +++++++++ .../resources/bootstrap-smart_site_local.yml | 26 +++++++++++ 4 files changed, 117 insertions(+) create mode 100644 bonus-auth/src/main/resources/bootstrap-smart_site_local.yml create mode 100644 bonus-gateway/src/main/resources/bootstrap-smart_site_local.yml create mode 100644 bonus-modules/bonus-file/src/main/resources/bootstrap-smart_site_local.yml create mode 100644 bonus-modules/bonus-system/src/main/resources/bootstrap-smart_site_local.yml diff --git a/bonus-auth/src/main/resources/bootstrap-smart_site_local.yml b/bonus-auth/src/main/resources/bootstrap-smart_site_local.yml new file mode 100644 index 0000000..2836bc0 --- /dev/null +++ b/bonus-auth/src/main/resources/bootstrap-smart_site_local.yml @@ -0,0 +1,27 @@ +# Tomcat +server: + port: 38081 + +# Spring +spring: + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + config: + # 配置中心地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + +#加密组件 +jasypt: + encryptor: + password: Encrypt + diff --git a/bonus-gateway/src/main/resources/bootstrap-smart_site_local.yml b/bonus-gateway/src/main/resources/bootstrap-smart_site_local.yml new file mode 100644 index 0000000..e89f050 --- /dev/null +++ b/bonus-gateway/src/main/resources/bootstrap-smart_site_local.yml @@ -0,0 +1,43 @@ +# Tomcat +server: + port: 38080 + +# Spring +spring: + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + config: + # 配置中心地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + sentinel: + # 取消控制台懒加载 + eager: true + transport: + # 控制台地址 + dashboard: 127.0.0.1:18858 + # nacos配置持久化 + datasource: + ds1: + nacos: + server-addr: 127.0.0.1:8848 + namespace: sgzb_bns + dataId: sentinel-bonus-gateway + groupId: DEFAULT_GROUP + data-type: json + rule-type: gw-flow + +#加密组件 +jasypt: + encryptor: + password: Encrypt + diff --git a/bonus-modules/bonus-file/src/main/resources/bootstrap-smart_site_local.yml b/bonus-modules/bonus-file/src/main/resources/bootstrap-smart_site_local.yml new file mode 100644 index 0000000..36a6ceb --- /dev/null +++ b/bonus-modules/bonus-file/src/main/resources/bootstrap-smart_site_local.yml @@ -0,0 +1,21 @@ +# Tomcat +server: + port: 39300 + +# Spring +spring: + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + config: + # 配置中心地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/bonus-modules/bonus-system/src/main/resources/bootstrap-smart_site_local.yml b/bonus-modules/bonus-system/src/main/resources/bootstrap-smart_site_local.yml new file mode 100644 index 0000000..44a0b1b --- /dev/null +++ b/bonus-modules/bonus-system/src/main/resources/bootstrap-smart_site_local.yml @@ -0,0 +1,26 @@ +# Tomcat +server: + port: 38082 + +# Spring +spring: + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + config: + # 配置中心地址 + server-addr: 127.0.0.1:8848 + namespace: smart_site + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + +#加密组件 +jasypt: + encryptor: + password: Encrypt From 415050e6ddec0ae67a6798008740796dd1ce2588 Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Tue, 31 Dec 2024 10:33:12 +0800 Subject: [PATCH 14/15] =?UTF-8?q?=E9=83=A8=E9=97=A8=E8=A1=A8=E5=8A=A0?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/bns_202412_patch.sql | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 sql/bns_202412_patch.sql diff --git a/sql/bns_202412_patch.sql b/sql/bns_202412_patch.sql new file mode 100644 index 0000000..522f6e5 --- /dev/null +++ b/sql/bns_202412_patch.sql @@ -0,0 +1,16 @@ +SET NAMES utf8mb4; + +-- 省 +alter table sys_dept add province varchar(50) null comment '省'; +-- 市 +alter table sys_dept add city varchar(50) null comment '市'; +-- 县 +alter table sys_dept add district varchar(50) null comment '县'; +-- 详细地址 +alter table sys_dept add address varchar(255) null comment '详细地址'; +-- 公司简称 +alter table sys_dept add dept_abbreviation varchar(255) null comment '公司简称'; +-- 公司概述 +alter table sys_dept add remark varchar(255) null comment '公司概述'; +-- 公司logo +alter table sys_dept add logo varchar(255) null comment '公司logo'; \ No newline at end of file From 7f4cb6d5207791b528d8929d54633e50ec82a183 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Tue, 31 Dec 2024 13:14:07 +0800 Subject: [PATCH 15/15] =?UTF-8?q?=E6=8F=90=E4=BA=A4slq=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/bns_202411_patch.sql | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sql/bns_202411_patch.sql b/sql/bns_202411_patch.sql index 14b2db9..a81745f 100644 --- a/sql/bns_202411_patch.sql +++ b/sql/bns_202411_patch.sql @@ -55,3 +55,10 @@ INSERT INTO `sys_menu` VALUES (2023, '修改', 2020, 3, '#', '', NULL, 1, 0, 'F' INSERT INTO `sys_menu` VALUES (2024, '删除', 2020, 4, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:whitelist:remove', '#', 'admin', '2024-11-06 06:23:22', 'bonus_admin', '2024-11-06 06:25:20', '', '0'); INSERT INTO `sys_menu` VALUES (2025, '导出', 2020, 5, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:whitelist:export', '#', 'admin', '2024-11-06 06:23:22', 'bonus_admin', '2024-11-06 06:25:28', '', '0'); INSERT INTO `sys_menu` VALUES (2026, '用户锁定', 1, 7, 'lockUser', 'system/lockUser/index', NULL, 1, 0, 'C', '0', '0', NULL, 'radio', 'bonus_admin', '2024-11-07 03:10:44', '', NULL, '', '0'); + + +INSERT INTO sys_config (config_name,config_key,config_value,config_type,create_by,create_time,update_by,update_time,remark) VALUES + ('登录失败锁定-次数','sys.login.failed.times','5','Y','admin','2024-11-05 01:22:10','',NULL,NULL), + ('登录失败锁定-时间','sys.login.failed.locktime','20','Y','admin','2024-11-05 01:24:37','',NULL,NULL), + ('系统并发访问限制','sys.backend.concurrency','100','Y','admin','2024-11-05 03:23:01','admin','2024-11-06 01:22:16',NULL), + ('系统会话时长','sys.visit.tokentime','29','Y','admin','2024-11-06 01:23:35','admin','2024-11-06 01:23:49',NULL); \ No newline at end of file