|
@@ -53,42 +53,10 @@ public class LoginService {
|
|
|
}
|
|
|
dao.insertNewUserToDjUserBase(tempUserInfo);
|
|
|
}
|
|
|
- // 如果当前时间在 限制时间之前就是锁定
|
|
|
- if (tempUserInfo.getNextInputTimes() != null && now.toInstant().isBefore(tempUserInfo.getNextInputTimes().toInstant())) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOCK_OUT_THE_USER, StrUtil.format("用户已被锁定请:【{}】后重试。", DateUtil.formatDatetime(tempUserInfo.getNextInputTimes())), tempUserInfo);
|
|
|
- }
|
|
|
|
|
|
String pwd = SecureUtil.md5(userInfo.getPassword());
|
|
|
if (!Objects.equals("fromTriageScreen", userInfo.getSid()) && !pwd.equals(tempUserInfo.getPassword())) {
|
|
|
- Integer times = dao.selectInputErrFrequency(tempUserInfo.getCodeRs());
|
|
|
- times = times == null ? 1 : times + 1;
|
|
|
- userInfo.setNextInputTimes(null);
|
|
|
- userInfo.setInputErrFrequency(times);
|
|
|
- // 输入次数大于三次锁定
|
|
|
- if (times > 3) {
|
|
|
- // 如果当前时间在限制时间之前就用限制时间
|
|
|
- if (now.toInstant().isBefore(tempUserInfo.getNextInputTimes().toInstant())) {
|
|
|
- now = tempUserInfo.getNextInputTimes();
|
|
|
- } else {
|
|
|
- // 如果不在就加一定的时间
|
|
|
- now = DateUtil.offsetMinute(now, dao.selectLockTime());
|
|
|
- }
|
|
|
- userInfo.setNextInputTimes(now);
|
|
|
- dao.addInputErrFrequency(tempUserInfo.getCodeRs(), times, now);
|
|
|
- }
|
|
|
- dao.addInputErrFrequency(tempUserInfo.getCodeRs(), times, now);
|
|
|
- if (userInfo.getNextInputTimes() != null) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOCK_OUT_THE_USER,
|
|
|
- StrUtil.format("用户已被锁定请:【{}】后重试。",
|
|
|
- DateUtil.formatDatetime(userInfo.getNextInputTimes())),
|
|
|
- userInfo);
|
|
|
- } else {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.INVALID_PASSWORD, userInfo);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (tempUserInfo.getInputErrFrequency() > 0) {
|
|
|
- dao.addInputErrFrequency(tempUserInfo.getCodeRs(), 0, null);
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.INVALID_PASSWORD, userInfo);
|
|
|
}
|
|
|
String token = TokenUtil.getInstance().createToken(tempUserInfo.getCode());
|
|
|
try {
|