|
@@ -3,6 +3,11 @@ package com.ozs.web.controller.system;
|
|
|
import java.util.List;
|
|
|
import java.util.Set;
|
|
|
|
|
|
+import com.ozs.common.core.domain.model.LoginUser;
|
|
|
+import com.ozs.common.utils.StringUtils;
|
|
|
+import com.ozs.framework.manager.AsyncManager;
|
|
|
+import com.ozs.framework.manager.factory.AsyncFactory;
|
|
|
+import com.ozs.framework.web.service.TokenService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -20,6 +25,8 @@ import com.ozs.framework.web.service.SysLoginService;
|
|
|
import com.ozs.framework.web.service.SysPermissionService;
|
|
|
import com.ozs.system.service.ISysMenuService;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+
|
|
|
/**
|
|
|
* 登录验证
|
|
|
*
|
|
@@ -38,6 +45,9 @@ public class SysLoginController
|
|
|
@Autowired
|
|
|
private SysPermissionService permissionService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private TokenService tokenService;
|
|
|
+
|
|
|
/**
|
|
|
* 登录方法
|
|
|
*
|
|
@@ -90,4 +100,26 @@ public class SysLoginController
|
|
|
List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
|
|
|
return AjaxResult.success(menuService.buildMenus(menus));
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 登录方法
|
|
|
+ *
|
|
|
+ * @return 结果
|
|
|
+ */
|
|
|
+ @ApiOperation("退出方法")
|
|
|
+ @PostMapping("/logout")
|
|
|
+ public AjaxResult logout(HttpServletRequest request)
|
|
|
+ {
|
|
|
+ AjaxResult ajax = AjaxResult.success();
|
|
|
+ LoginUser loginUser = tokenService.getLoginUser(request);
|
|
|
+ if (StringUtils.isNotNull(loginUser))
|
|
|
+ {
|
|
|
+ String userName = loginUser.getUsername();
|
|
|
+ // 删除用户缓存记录
|
|
|
+ tokenService.delLoginUser(loginUser.getToken());
|
|
|
+ // 记录用户退出日志
|
|
|
+ AsyncManager.me().execute(AsyncFactory.recordLogininfor(userName, Constants.LOGOUT, "退出成功"));
|
|
|
+ }
|
|
|
+ return ajax;
|
|
|
+ }
|
|
|
}
|