Răsfoiți Sursa

fix: SMS login templateName 透传 — 修复 hardcode 'login' 导致 Redis key 不匹配

alphaH 3 săptămâni în urmă
părinte
comite
fda617251e

+ 1 - 1
java/src/main/java/com/payment/platform/module/system/auth/controller/AuthController.java

@@ -101,7 +101,7 @@ public class AuthController {
         String ip = getClientIp(httpRequest);
         String userAgent = httpRequest.getHeader("User-Agent");
 
-        LoginResponse resp = authService.loginSms(mobile, code, ip, userAgent);
+        LoginResponse resp = authService.loginSms(mobile, code, templateName, ip, userAgent);
         log.info("用户{}短信登录成功", mobile);
         return Result.ok(resp);
     }

+ 2 - 2
java/src/main/java/com/payment/platform/module/system/auth/service/AuthService.java

@@ -118,9 +118,9 @@ public class AuthService {
      * 短信验证码登录 — 对应 Python authenticate_sms_user_service
      * 含 SMS 验证码校验 + 员工激活状态检查
      */
-    public LoginResponse loginSms(String mobile, String smsCode, String ip, String userAgentHeader) {
+    public LoginResponse loginSms(String mobile, String smsCode, String templateName, String ip, String userAgentHeader) {
         // SMS 验证码校验 — 对应 Python 的 sms_code 验证
-        if (!smsCodeService.verifyCode("login", mobile, smsCode)) {
+        if (!smsCodeService.verifyCode(templateName, mobile, smsCode)) {
             throw new BusinessException(ErrorCode.BAD_REQUEST.getCode(), "短信验证码错误或已过期");
         }