From 43bcec3cc0cea0651d72264613aef4f003340bd9 Mon Sep 17 00:00:00 2001 From: huangge1199 Date: Mon, 30 Jun 2025 15:57:41 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=A8=A1=E5=9D=97=EF=BC=9A?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=B3=A8=E9=94=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../picture/controller/UserController.java | 10 ++++++++++ .../huangge1199/picture/service/UserService.java | 9 +++++++++ .../picture/service/impl/UserServiceImpl.java | 13 +++++++++++++ 3 files changed, 32 insertions(+) diff --git a/src/main/java/com/huangge1199/picture/controller/UserController.java b/src/main/java/com/huangge1199/picture/controller/UserController.java index 5ea9e5d..bedc9f9 100644 --- a/src/main/java/com/huangge1199/picture/controller/UserController.java +++ b/src/main/java/com/huangge1199/picture/controller/UserController.java @@ -60,6 +60,16 @@ public class UserController { return R.ok(userService.getLoginUserVO(user)); } + /** + * 用户注销 + */ + @PostMapping("/logout") + public R userLogout(HttpServletRequest request) { + ThrowUtils.throwIf(request == null, ErrorCode.PARAMS_ERROR); + boolean result = userService.userLogout(request); + return R.ok(result); + } + } diff --git a/src/main/java/com/huangge1199/picture/service/UserService.java b/src/main/java/com/huangge1199/picture/service/UserService.java index a90f24b..eca9dcd 100644 --- a/src/main/java/com/huangge1199/picture/service/UserService.java +++ b/src/main/java/com/huangge1199/picture/service/UserService.java @@ -57,4 +57,13 @@ public interface UserService extends IService { */ User getLoginUser(HttpServletRequest request); + /** + * 用户注销 + * + * @param request 请求 + * @return 是否注销成功 + */ + boolean userLogout(HttpServletRequest request); + + } diff --git a/src/main/java/com/huangge1199/picture/service/impl/UserServiceImpl.java b/src/main/java/com/huangge1199/picture/service/impl/UserServiceImpl.java index ab4c99f..b8dfe51 100644 --- a/src/main/java/com/huangge1199/picture/service/impl/UserServiceImpl.java +++ b/src/main/java/com/huangge1199/picture/service/impl/UserServiceImpl.java @@ -133,6 +133,19 @@ public class UserServiceImpl extends ServiceImpl return currentUser; } + @Override + public boolean userLogout(HttpServletRequest request) { + // 先判断是否已登录 + Object userObj = request.getSession().getAttribute(UserConstant.USER_LOGIN_STATE); + if (userObj == null) { + throw new MyException(ErrorCode.OPERATION_ERROR, "未登录"); + } + // 移除登录态 + request.getSession().removeAttribute(UserConstant.USER_LOGIN_STATE); + return true; + } + + }