13404089107
2026-04-24 8b81df3a7638e768b640b7935d9da52b77cd7649
tcm-training-admin-backend/src/main/java/com/tcm/training/admin/app/auth/service/AppSmsCodeService.java
@@ -67,28 +67,28 @@
    }
    /**
     * 校验登录验证码,成功后销毁缓存中的一次性验证码。
     * 校验登录验证码,缓存有效期内允许重复提交。
     */
    public void validateLoginCode(String phone, String code) {
        validateCode(phone, code, LOGIN_CODE_CACHE_PREFIX, SCENE_LOGIN);
    }
    /**
     * 校验注册验证码,成功后销毁缓存中的一次性验证码。
     * 校验注册验证码,缓存有效期内允许重复提交。
     */
    public void validateRegisterCode(String phone, String code) {
        validateCode(phone, code, REGISTER_CODE_CACHE_PREFIX, SCENE_REGISTER);
    }
    /**
     * 校验忘记密码验证码,成功后销毁缓存中的一次性验证码。
     * 校验忘记密码验证码,缓存有效期内允许重复提交。
     */
    public void validatePasswordResetCode(String phone, String code) {
        validateCode(phone, code, PASSWORD_RESET_CODE_CACHE_PREFIX, SCENE_PASSWORD_RESET);
    }
    /**
     * 校验修改手机号验证码,成功后销毁缓存中的一次性验证码。
     * 校验修改手机号验证码,缓存有效期内允许重复提交。
     */
    public void validatePhoneChangeCode(String phone, String code) {
        validateCode(phone, code, PHONE_CHANGE_CODE_CACHE_PREFIX, SCENE_PHONE_CHANGE);
@@ -118,7 +118,7 @@
    }
    /**
     * 统一校验指定场景的验证码并执行一次性销毁。
     * 统一校验指定场景的验证码,验证码仅按缓存 TTL 自然失效。
     */
    private void validateCode(String phone, String code, String cachePrefix, String scene) {
        if (matchesDebugCode(scene, code)) {
@@ -133,8 +133,6 @@
        if (!cachedCode.equals(code)) {
            throw new IllegalArgumentException("验证码错误");
        }
        // 验证码登录成功后立即删除,避免重复使用。
        stringRedisTemplate.delete(cacheKey);
    }
    /**