From 6b5f37636c3c61bb47e45edfdc09e71e7b922a34 Mon Sep 17 00:00:00 2001 From: zhh Date: Wed, 5 Dec 2018 15:57:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=99=BB=E5=BD=95=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/UmsAdminServiceImpl.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/mall-admin/src/main/java/com/macro/mall/service/impl/UmsAdminServiceImpl.java b/mall-admin/src/main/java/com/macro/mall/service/impl/UmsAdminServiceImpl.java index aa40280..2dfe8f5 100644 --- a/mall-admin/src/main/java/com/macro/mall/service/impl/UmsAdminServiceImpl.java +++ b/mall-admin/src/main/java/com/macro/mall/service/impl/UmsAdminServiceImpl.java @@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper; import com.macro.mall.dao.UmsAdminPermissionRelationDao; import com.macro.mall.dao.UmsAdminRoleRelationDao; import com.macro.mall.dto.UmsAdminParam; +import com.macro.mall.mapper.UmsAdminLoginLogMapper; import com.macro.mall.mapper.UmsAdminMapper; import com.macro.mall.mapper.UmsAdminPermissionRelationMapper; import com.macro.mall.mapper.UmsAdminRoleRelationMapper; @@ -26,7 +27,10 @@ import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -59,6 +63,8 @@ public class UmsAdminServiceImpl implements UmsAdminService { private UmsAdminPermissionRelationMapper adminPermissionRelationMapper; @Autowired private UmsAdminPermissionRelationDao adminPermissionRelationDao; + @Autowired + private UmsAdminLoginLogMapper loginLogMapper; @Override public UmsAdmin getAdminByUsername(String username) { @@ -102,12 +108,28 @@ public class UmsAdminServiceImpl implements UmsAdminService { UserDetails userDetails = userDetailsService.loadUserByUsername(username); token = jwtTokenUtil.generateToken(userDetails); updateLoginTimeByUsername(username); + insertLoginLog(username); } catch (AuthenticationException e) { LOGGER.warn("登录异常:{}", e.getMessage()); } return token; } + /** + * 添加登录记录 + * @param username 用户名 + */ + private void insertLoginLog(String username) { + UmsAdmin admin = getAdminByUsername(username); + UmsAdminLoginLog loginLog = new UmsAdminLoginLog(); + loginLog.setAdminId(admin.getId()); + loginLog.setCreateTime(new Date()); + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + HttpServletRequest request = attributes.getRequest(); + loginLog.setIp(request.getRemoteAddr()); + loginLogMapper.insert(loginLog); + } + /** * 根据用户名修改登录时间 */