From 7f48fd423c3b9229a982c2f435d2da9802ffac2c Mon Sep 17 00:00:00 2001 From: zhengziru Date: Sat, 5 Apr 2025 11:59:12 +0800 Subject: [PATCH] server_commit --- src/main/java/io/v/nutz/base/utils/LoginUtil.java | 2 +- src/main/java/io/v/nutz/base/utils/PwdUtil.java | 2 +- .../platform/sys/SysWechatController.java | 14 +++++--------- .../commons/shiro/config/EasyCredentialsMatch.java | 2 +- .../shiro/realm/PlatformAuthorizingRealm.java | 4 ++-- .../v/nutz/zhgh/mobile/mobileLoginController.java | 4 ++-- .../platform/activity/school/ActivityApply.html | 2 +- 7 files changed, 13 insertions(+), 17 deletions(-) diff --git a/src/main/java/io/v/nutz/base/utils/LoginUtil.java b/src/main/java/io/v/nutz/base/utils/LoginUtil.java index a8d5c0a..5d78033 100644 --- a/src/main/java/io/v/nutz/base/utils/LoginUtil.java +++ b/src/main/java/io/v/nutz/base/utils/LoginUtil.java @@ -30,7 +30,7 @@ import javax.servlet.http.HttpSession; public class LoginUtil { public enum LoginOrigin { - APP, WEB, WEB_H5, CAS, QI_YE_WEI_XIN, WEI_XIN, SMS_CODE; + APP, WEB, WEB_H5, CAS, QI_YE_WEI_XIN, WEI_XIN, WEI_XIN_SUCCESS, SMS_CODE; } @Inject diff --git a/src/main/java/io/v/nutz/base/utils/PwdUtil.java b/src/main/java/io/v/nutz/base/utils/PwdUtil.java index 6999464..6dc3fc0 100644 --- a/src/main/java/io/v/nutz/base/utils/PwdUtil.java +++ b/src/main/java/io/v/nutz/base/utils/PwdUtil.java @@ -126,7 +126,7 @@ public class PwdUtil { // System.out.println(dbPwd); // System.out.println(s); - String pwd = "123456"; + String pwd = "002154"; String dbPwd = PwdUtil.doSm4CbcEncrypt(pwd); System.out.println(dbPwd); } diff --git a/src/main/java/io/v/nutz/sys/controllers/platform/sys/SysWechatController.java b/src/main/java/io/v/nutz/sys/controllers/platform/sys/SysWechatController.java index 931b6ca..5979555 100644 --- a/src/main/java/io/v/nutz/sys/controllers/platform/sys/SysWechatController.java +++ b/src/main/java/io/v/nutz/sys/controllers/platform/sys/SysWechatController.java @@ -11,6 +11,7 @@ import io.v.nutz.sys.services.SysUserService; import io.v.nutz.web.commons.base.Globals; import io.v.nutz.web.commons.shiro.exception.CaptchaEmptyException; import io.v.nutz.web.commons.shiro.exception.CaptchaIncorrectException; +import io.v.nutz.web.commons.shiro.filter.PlatformAuthenticationFilter; import io.v.nutz.web.commons.slog.SLogService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.math.NumberUtils; @@ -27,10 +28,7 @@ import org.nutz.ioc.loader.annotation.IocBean; import org.nutz.json.Json; import org.nutz.lang.Strings; import org.nutz.lang.util.NutMap; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Attr; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; +import org.nutz.mvc.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; @@ -140,7 +138,7 @@ public class SysWechatController { String loginName = Optional.ofNullable(sysUser).map(Sys_user::getLoginname).orElse(null); try { - loginUtil.doLogin(loginName, request, session, LoginUtil.LoginOrigin.WEI_XIN); + loginUtil.doLogin(loginName, request, session, LoginUtil.LoginOrigin.WEI_XIN_SUCCESS); if (StrUtil.isNotBlank(redirect)) { return ">>:" + redirect; } @@ -151,9 +149,6 @@ public class SysWechatController { } catch (UnknownAccountException e) { request.setAttribute("errMsg", "系统中没有此用户"); return ">>:" + Globals.AppDomain + "/error/UnknownAccountError.html"; - } catch (AuthenticationException e) { - request.setAttribute("errMsg", "系统中没有此用户"); - return ">>:" + Globals.AppDomain + "/error/UnknownAccountError.html"; } catch (Exception e) { request.setAttribute("errMsg", "用户名或密码错误"); return ">>:" + Globals.AppDomain + "/error/500.html"; @@ -162,7 +157,8 @@ public class SysWechatController { @At - @Ok("re") + @Ok("json") + @Filters(@By(type = PlatformAuthenticationFilter.class)) public Result doLogin(@Attr("platformLoginToken") AuthenticationToken token, HttpServletRequest request, HttpSession session, @Param("state") String state) { System.out.println(state); diff --git a/src/main/java/io/v/nutz/web/commons/shiro/config/EasyCredentialsMatch.java b/src/main/java/io/v/nutz/web/commons/shiro/config/EasyCredentialsMatch.java index 2bb49fe..b65f591 100644 --- a/src/main/java/io/v/nutz/web/commons/shiro/config/EasyCredentialsMatch.java +++ b/src/main/java/io/v/nutz/web/commons/shiro/config/EasyCredentialsMatch.java @@ -32,7 +32,7 @@ public class EasyCredentialsMatch extends HashedCredentialsMatcher { LoginUtil.LoginOrigin loginOrigin = platformCaptchaToken.getLoginOrigin(); //cas和企业微信实现免密登录 - if (loginOrigin.equals(LoginUtil.LoginOrigin.CAS) || loginOrigin.equals(LoginUtil.LoginOrigin.QI_YE_WEI_XIN)){ + if (loginOrigin.equals(LoginUtil.LoginOrigin.CAS) || loginOrigin.equals(LoginUtil.LoginOrigin.QI_YE_WEI_XIN) || loginOrigin.equals(LoginUtil.LoginOrigin.WEI_XIN_SUCCESS)){ return true; } diff --git a/src/main/java/io/v/nutz/web/commons/shiro/realm/PlatformAuthorizingRealm.java b/src/main/java/io/v/nutz/web/commons/shiro/realm/PlatformAuthorizingRealm.java index 309e98c..cd1ac07 100644 --- a/src/main/java/io/v/nutz/web/commons/shiro/realm/PlatformAuthorizingRealm.java +++ b/src/main/java/io/v/nutz/web/commons/shiro/realm/PlatformAuthorizingRealm.java @@ -94,7 +94,7 @@ public class PlatformAuthorizingRealm extends AuthorizingRealm { throw Lang.makeThrow(AuthenticationException.class, "验证码失效,请重新获取"); } user = sysUserService.fetch(Cnd.NEW().and("mobile", "=", mobile)); - }else if (!loginOrigin.equals(LoginUtil.LoginOrigin.CAS) && !loginOrigin.equals(LoginUtil.LoginOrigin.QI_YE_WEI_XIN) && !loginOrigin.equals(LoginUtil.LoginOrigin.WEI_XIN)) { + }else if (!loginOrigin.equals(LoginUtil.LoginOrigin.CAS) && !loginOrigin.equals(LoginUtil.LoginOrigin.QI_YE_WEI_XIN) && !loginOrigin.equals(LoginUtil.LoginOrigin.WEI_XIN_SUCCESS)) { validateService.checkCode(key, captcha); if (Strings.isBlank(loginname)) { throw Lang.makeThrow(AuthenticationException.class, "登录账号不可为空"); @@ -120,7 +120,7 @@ public class PlatformAuthorizingRealm extends AuthorizingRealm { } if (!loginOrigin.equals(LoginUtil.LoginOrigin.CAS) && !loginOrigin.equals(LoginUtil.LoginOrigin.QI_YE_WEI_XIN) - && !loginOrigin.equals(LoginUtil.LoginOrigin.WEI_XIN)) { + && !loginOrigin.equals(LoginUtil.LoginOrigin.WEI_XIN_SUCCESS)) { int errCount = NumberUtils.toInt(Strings.sNull(session.getAttribute("platformErrCount"))); if (errCount >= 4) { //输错5次禁用账户10分钟 diff --git a/src/main/java/io/v/nutz/zhgh/mobile/mobileLoginController.java b/src/main/java/io/v/nutz/zhgh/mobile/mobileLoginController.java index f6d91de..2bd000d 100644 --- a/src/main/java/io/v/nutz/zhgh/mobile/mobileLoginController.java +++ b/src/main/java/io/v/nutz/zhgh/mobile/mobileLoginController.java @@ -142,7 +142,7 @@ public class mobileLoginController { } String pwd = PwdUtil.doSm4CbcEncrypt(newPwd); - dao.update(Sys_user.class, Chain.make("password", pwd), Cnd.where("id", "=", ShiroUtil.getUserId())); + dao.update(Sys_user.class, Chain.make("password", pwd).add("weAppLoginCount", user.getWeAppLoginCount() + 1), Cnd.where("id", "=", ShiroUtil.getUserId())); sysUserService.deleteCacheAndUpdate(ShiroUtil.getUserId()); return Result.success("修改成功"); @@ -160,6 +160,6 @@ public class mobileLoginController { sql.setCallback(Sqls.callback.integer()); dao.execute(sql); int count = sql.getInt(); - return count == 0 ? Result.error() : Result.success(); + return count == 1 ? Result.error() : Result.success(); } } diff --git a/src/main/resources/views/platform/activity/school/ActivityApply.html b/src/main/resources/views/platform/activity/school/ActivityApply.html index 305beb8..ed71231 100644 --- a/src/main/resources/views/platform/activity/school/ActivityApply.html +++ b/src/main/resources/views/platform/activity/school/ActivityApply.html @@ -861,7 +861,7 @@ layout("/layouts/platform.html"){ + style="height: 60px" v-if="row.applyUserSign"> 暂未签字