From bc2da7908a227c09e5cc7b6d8dab3e9c94b784a1 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期二, 12 十二月 2023 22:18:18 +0800
Subject: [PATCH] 图片压缩及bug修改
---
ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 47 insertions(+), 2 deletions(-)
diff --git a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
index c8235e2..5da93ed 100644
--- a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
+++ b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
@@ -1,6 +1,7 @@
package com.ycl.service.user.impl;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateTime;
import cn.hutool.core.util.PageUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.druid.sql.PagerUtils;
@@ -49,6 +50,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
import java.util.*;
import java.util.function.Consumer;
import java.util.stream.Collectors;
@@ -139,7 +141,7 @@
date = calendar.getTime();
umsAdmin.setExpirationDate(date);
} else {
- umsAdmin.setExpirationDate(new Date("2200-01-01"));
+ umsAdmin.setExpirationDate(new Date(2090, 1, 1));
}
if (umsAdmin.getId() != null) {
baseMapper.updateById(umsAdmin);
@@ -258,13 +260,51 @@
//瀵嗙爜闇�瑕佸鎴风鍔犲瘑鍚庝紶閫�
try {
AdminUserDetails userDetails = (AdminUserDetails) loadUserByUsername(username);
+
+ UmsAdmin admin = userDetails.getUmsAdmin();
+ LocalDateTime nowTime = LocalDateTime.now();
+ nowTime = nowTime.plusMinutes(-15);
+ if (admin.getPasswordErrorNum() != null && admin.getPasswordErrorNum() >= 5
+ && admin.getPasswordErrorLastTime().isAfter(nowTime)) {
+ admin.setPasswordErrorLastTime(LocalDateTime.now());
+ updateById(admin);
+ Asserts.fail("鐧诲綍澶辫触瓒呰繃5娆★紝姝よ处鍙疯閿佸畾锛岃15鍒嗛挓鍚庡啀璇曘��");
+ }
if (!passwordEncoder.matches(password, userDetails.getPassword())) {
+ if (admin.getPasswordErrorNum() == null) {
+ admin.setPasswordErrorNum(1);
+ } else {
+ admin.setPasswordErrorNum(admin.getPasswordErrorNum() + 1);
+ }
+ admin.setPasswordErrorLastTime(LocalDateTime.now());
+ updateById(admin);
Asserts.fail("瀵嗙爜涓嶆纭�");
}
if (!userDetails.isEnabled()) {
Asserts.fail("甯愬彿宸茶绂佺敤");
}
+ admin.setPasswordErrorNum(0);
+ updateById(admin);
+ UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
+ SecurityContextHolder.getContext().setAuthentication(authentication);
+ //鏍规嵁鐢ㄦ埛id锛岀敤鎴峰鍚�
+ token = jwtTokenUtil.generateToken(userDetails.getUserId(), userDetails.getUsername());
+ redisService.set(RedisKey.PLATFORM_TOKEN_KEY.concat(username), token, LiveTimeMillisecond.s7200.time);
+// updateLoginTimeByUsername(username);
+ //insertLoginLog(username);
+ } catch (AuthenticationException e) {
+ LOGGER.warn("鐧诲綍寮傚父:{}", e.getMessage());
+ }
+ return token;
+ }
+
+ @Override
+ public String getOAuthToken(String username) {
+ String token = null;
+ //瀵嗙爜闇�瑕佸鎴风鍔犲瘑鍚庝紶閫�
+ try {
+ AdminUserDetails userDetails = (AdminUserDetails) loadUserByUsername(username);
UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
SecurityContextHolder.getContext().setAuthentication(authentication);
//鏍规嵁鐢ㄦ埛id锛岀敤鎴峰鍚�
@@ -430,7 +470,7 @@
List<UmsMenu> resourceList = getResourceList(admin.getId());
return new AdminUserDetails(admin, resourceList);
}
- throw new UsernameNotFoundException("鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒");
+ throw new UsernameNotFoundException("鐢ㄦ埛涓嶅瓨鍦�");
}
@Override
@@ -575,5 +615,10 @@
return str;
}
+ @Override
+ public UmsAdmin getByOpenid(String openid) {
+ LambdaQueryWrapper<UmsAdmin> wrapper = new LambdaQueryWrapper<UmsAdmin>().eq(UmsAdmin::getOpenid, openid).last("limit 1");
+ return baseMapper.selectOne(wrapper);
+ }
}
--
Gitblit v1.8.0