From b96db512032a8a8889a28afb654cf360c63ad226 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 19 九月 2023 20:02:46 +0800 Subject: [PATCH] 修改 --- server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java | 29 +++++++++++++++++++---------- 1 files changed, 19 insertions(+), 10 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java b/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java index d9abcaa..b41579c 100644 --- a/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java @@ -1,8 +1,10 @@ package com.doumee.service.system.impl; +import com.baomidou.mybatisplus.extension.api.R; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; +import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.system.dto.LoginDTO; import com.doumee.dao.system.model.SystemLoginLog; @@ -20,6 +22,7 @@ import javax.servlet.http.HttpServletRequest; import java.util.Date; +import java.util.Objects; @Slf4j @Service @@ -27,6 +30,8 @@ @Value("${project.version}") private String systemVersion; + @Value("${captcha_check}") + private boolean captchaCheck; @Autowired private CaptchaService captchaService; @@ -35,7 +40,7 @@ private SystemLoginLogService systemLoginLogService; @Override - public String loginByPassword(LoginDTO dto, HttpServletRequest request) { + public String loginByPassword(LoginDTO dto, int type,HttpServletRequest request) { SystemLoginLog loginLog = new SystemLoginLog(); loginLog.setLoginUsername(dto.getUsername()); loginLog.setLoginTime(new Date()); @@ -47,14 +52,18 @@ loginLog.setOsInfo(Utils.User_Client.getOS(request)); loginLog.setServerIp(Utils.Server.getIP()); // 鏍¢獙楠岃瘉鐮� - try { - captchaService.check(dto.getUuid(), dto.getCode()); - } catch (Exception e) { - log.error(e.getMessage(), e); - loginLog.setReason(e.getMessage().length() > 200 ? (e.getMessage().substring(0, 190) + "...") : e.getMessage()); - loginLog.setSuccess(Boolean.FALSE); - systemLoginLogService.create(loginLog); - throw e; + if(type!= Constants.TWO){ + try { + if(captchaCheck){ + captchaService.check(dto.getUuid(), dto.getCode()); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + loginLog.setReason(e.getMessage().length() > 200 ? (e.getMessage().substring(0, 190) + "...") : e.getMessage()); + loginLog.setSuccess(Boolean.FALSE); + systemLoginLogService.create(loginLog); + throw e; + } } // 鏍¢獙鐢ㄦ埛鍚嶅拰瀵嗙爜 Subject subject = SecurityUtils.getSubject(); @@ -70,7 +79,7 @@ loginLog.setReason(e.getMessage().length() > 200 ? (e.getMessage().substring(0, 190) + "...") : e.getMessage()); loginLog.setSuccess(Boolean.FALSE); systemLoginLogService.create(loginLog); - throw new BusinessException(ResponseStatus.ACCOUNT_INCORRECT); + throw new BusinessException(ResponseStatus.ACCOUNT_INCORRECT.getCode(), Objects.isNull(e.getCause())?ResponseStatus.ACCOUNT_INCORRECT.getMessage():e.getCause().getMessage()); } } } -- Gitblit v1.9.3