Skip to content

Commit a880778

Browse files
authored
User/delete (#74)
* feat: add delete user api * feat:update frontend resources
1 parent 401f61b commit a880778

File tree

77 files changed

+295
-115
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+295
-115
lines changed

api/src/main/java/com/databasir/api/Routes.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ interface User {
1010

1111
String GET_ONE = BASE + "/users/{userId}";
1212

13+
String DELETE_ONE = BASE + "/users/{userId}";
14+
1315
String ENABLE = BASE + "/users/{userId}/enable";
1416

1517
String DISABLE = BASE + "/users/{userId}/disable";

api/src/main/java/com/databasir/api/UserController.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import com.databasir.core.domain.log.annotation.Operation;
99
import com.databasir.core.domain.user.data.*;
1010
import com.databasir.core.domain.user.service.UserService;
11-
import com.databasir.core.infrastructure.event.EventPublisher;
1211
import lombok.RequiredArgsConstructor;
1312
import org.springframework.data.domain.Page;
1413
import org.springframework.data.domain.Pageable;
@@ -29,8 +28,6 @@ public class UserController {
2928

3029
private final UserOperationValidator userOperationValidator;
3130

32-
private final EventPublisher eventPublisher;
33-
3431
@GetMapping(Routes.User.LIST)
3532
public JsonData<Page<UserPageResponse>> list(@PageableDefault(sort = "id", direction = Sort.Direction.DESC)
3633
Pageable pageable,
@@ -73,6 +70,16 @@ public JsonData<UserDetailResponse> getOne(@PathVariable Integer userId) {
7370
return JsonData.ok(userService.get(userId));
7471
}
7572

73+
@DeleteMapping(Routes.User.DELETE_ONE)
74+
@PreAuthorize("hasAnyAuthority('SYS_OWNER')")
75+
public JsonData<Void> deleteOne(@PathVariable Integer userId) {
76+
if (userOperationValidator.isMyself(userId)) {
77+
throw DomainErrors.CANNOT_DELETE_SELF.exception();
78+
}
79+
userService.deleteOne(userId);
80+
return JsonData.ok();
81+
}
82+
7683
@PostMapping(Routes.User.RENEW_PASSWORD)
7784
@PreAuthorize("hasAnyAuthority('SYS_OWNER')")
7885
@Operation(module = Operation.Modules.USER, name = "重置用户密码", involvedUserId = "#userId")
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/favicon.ico"><title>databasir</title><script defer="defer" type="module" src="/js/chunk-vendors.34b8254e.js"></script><script defer="defer" type="module" src="/js/app.969627b4.js"></script><link href="/css/chunk-vendors.8e1003a6.css" rel="stylesheet"><link href="/css/app.15b40a89.css" rel="stylesheet"><script defer="defer" src="/js/chunk-vendors-legacy.ca7b1117.js" nomodule></script><script defer="defer" src="/js/app-legacy.26c8cf98.js" nomodule></script></head><body><noscript><strong>We're sorry but databasir doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
1+
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/favicon.ico"><title>databasir</title><script defer="defer" type="module" src="/js/chunk-vendors.34b8254e.js"></script><script defer="defer" type="module" src="/js/app.42acff90.js"></script><link href="/css/chunk-vendors.8e1003a6.css" rel="stylesheet"><link href="/css/app.15b40a89.css" rel="stylesheet"><script defer="defer" src="/js/chunk-vendors-legacy.ca7b1117.js" nomodule></script><script defer="defer" src="/js/app-legacy.068b0ad8.js" nomodule></script></head><body><noscript><strong>We're sorry but databasir doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>

api/src/main/resources/static/js/101-legacy.fe788b74.js renamed to api/src/main/resources/static/js/101-legacy.762f538b.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

api/src/main/resources/static/js/101-legacy.fe788b74.js.map renamed to api/src/main/resources/static/js/101-legacy.762f538b.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)