From 13d2750f75f3a28e17e8a3d17a79a1bb35401ef8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=9D=B0?= Date: Wed, 19 Sep 2018 17:50:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=94=A8=E6=88=B7=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E7=A6=81=E7=94=A8=E8=87=AA=E5=B7=B1=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/me/aurora/app/rest/user/UserController.java | 4 +++- .../java/me/aurora/config/scheduled/db/DBRecover.java | 1 + src/main/java/me/aurora/service/UserService.java | 2 +- .../java/me/aurora/service/impl/UserServiceImpl.java | 10 +++++++--- src/main/resources/templates/index.html | 2 +- src/main/resources/templates/user/index.html | 8 ++++++-- 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/main/java/me/aurora/app/rest/user/UserController.java b/src/main/java/me/aurora/app/rest/user/UserController.java index 5412536..f57cce2 100644 --- a/src/main/java/me/aurora/app/rest/user/UserController.java +++ b/src/main/java/me/aurora/app/rest/user/UserController.java @@ -12,6 +12,7 @@ import me.aurora.service.UserService; import me.aurora.service.mapper.UserMapper; import me.aurora.util.HttpContextUtils; import me.aurora.config.exception.AuroraException; +import org.apache.shiro.SecurityUtils; import org.apache.shiro.authz.annotation.Logical; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; @@ -152,7 +153,8 @@ public class UserController { @PutMapping(value = "/updateEnabled") public ResponseEntity updateEnabled(@RequestParam Long id){ log.warn("REST request to updateEnabled"); - userService.updateEnabled(id); + User user = (User) SecurityUtils.getSubject().getPrincipal(); + userService.updateEnabled(id,user); return ResponseEntity.ok(); } diff --git a/src/main/java/me/aurora/config/scheduled/db/DBRecover.java b/src/main/java/me/aurora/config/scheduled/db/DBRecover.java index 195d73f..f72b7fc 100644 --- a/src/main/java/me/aurora/config/scheduled/db/DBRecover.java +++ b/src/main/java/me/aurora/config/scheduled/db/DBRecover.java @@ -4,6 +4,7 @@ import lombok.extern.slf4j.Slf4j; import me.aurora.config.AuroraProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.ClassPathResource; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.io.BufferedReader; import java.io.IOException; diff --git a/src/main/java/me/aurora/service/UserService.java b/src/main/java/me/aurora/service/UserService.java index cc2113a..383745c 100644 --- a/src/main/java/me/aurora/service/UserService.java +++ b/src/main/java/me/aurora/service/UserService.java @@ -88,5 +88,5 @@ public interface UserService { * @return */ @CacheEvict(allEntries = true) - void updateEnabled(Long id); + void updateEnabled(Long id, User user); } diff --git a/src/main/java/me/aurora/service/impl/UserServiceImpl.java b/src/main/java/me/aurora/service/impl/UserServiceImpl.java index 2683e77..3d824d9 100644 --- a/src/main/java/me/aurora/service/impl/UserServiceImpl.java +++ b/src/main/java/me/aurora/service/impl/UserServiceImpl.java @@ -144,8 +144,12 @@ public class UserServiceImpl implements UserService { } @Override - public void updateEnabled(Long id) { - User user = userRepo.findById(id).get(); - user.setEnabled(user.getEnabled()==1?0:1); + public void updateEnabled(Long id, User user) { + if(id.equals(user.getId())){ + throw new AuroraException(HttpStatus.HTTP_BAD_REQUEST,"不能禁用自己"); + } + User user1 = userRepo.findById(id).get(); + user1.setEnabled(user1.getEnabled()==1?0:1); + userRepo.save(user1); } } diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html index 87c6d40..2419a0b 100644 --- a/src/main/resources/templates/index.html +++ b/src/main/resources/templates/index.html @@ -108,7 +108,7 @@