用户基本信息增改查
Change-Id: I19155b213d05529b01a232f474fc3ac35e0018bf
diff --git a/src/main/java/com/pt/controller/UserController.java b/src/main/java/com/pt/controller/UserController.java
index 4ced292..ea4dcab 100644
--- a/src/main/java/com/pt/controller/UserController.java
+++ b/src/main/java/com/pt/controller/UserController.java
@@ -1,11 +1,16 @@
package com.pt.controller;
+import com.pt.constant.Constants;
import com.pt.entity.User;
+import com.pt.utils.JWTUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import com.pt.service.UserService;
+import java.util.HashMap;
+import java.util.Map;
+
@RestController
@RequestMapping("/api/user")
@CrossOrigin(origins = "*")
@@ -30,24 +35,38 @@
newUser.setPassword(password);
newUser.setEmail(email);
userService.save(newUser);
- return ResponseEntity.ok("User registered successfully");
+
+ Map<String, Object> ans = new HashMap<>();
+ ans.put("result", "User registered successfully");
+
+ return ResponseEntity.ok().body(ans);
}
}
@PostMapping("/login")
public ResponseEntity<?> loginUser(@RequestParam("username") String username,
@RequestParam("password") String password) {
+
User user = userService.findByUsernameAndPassword(username, password);
+ Map<String, Object> ans = new HashMap<>();
if (user != null) {
- return ResponseEntity.ok("Login successful");
+ ans.put("result", "Login successful");
+ ans.put("token", JWTUtils.generateToken(username, Constants.UserRole.USER, Constants.DEFAULT_EXPIRE_TIME));
+ return ResponseEntity.ok().body(ans);
} else {
- return ResponseEntity.badRequest().body("Invalid username or password");
+ ans.put("result", "Invalid username or password");
+ return ResponseEntity.badRequest().body(ans);
}
}
@PostMapping("/update/username")
- public ResponseEntity<?> updateUsername(@RequestParam("username") String oldUsername,
+ public ResponseEntity<?> updateUsername(@RequestHeader("token") String token,
+ @RequestParam("username") String oldUsername,
@RequestParam("newUsername") String newUsername) {
+ if(!JWTUtils.checkToken(token, oldUsername, Constants.UserRole.USER)) {
+ return ResponseEntity.badRequest().body("Invalid token");
+ }
+
User user = userService.findByUsername(oldUsername);
if (user != null) {
user.setUsername(newUsername);
@@ -59,8 +78,13 @@
}
@PostMapping("/update/password")
- public ResponseEntity<?> updatePassword(@RequestParam("username") String username,
+ public ResponseEntity<?> updatePassword(@RequestHeader("token") String token,
+ @RequestParam("username") String username,
@RequestParam("newPassword") String newPassword) {
+ if(!JWTUtils.checkToken(token, username, Constants.UserRole.USER)) {
+ return ResponseEntity.badRequest().body("Invalid token");
+ }
+
User user = userService.findByUsername(username);
if (user != null) {
user.setPassword(newPassword);
@@ -72,8 +96,13 @@
}
@PostMapping("/update/email")
- public ResponseEntity<?> updateEmail(@RequestParam("username") String username,
+ public ResponseEntity<?> updateEmail(@RequestHeader("token") String token,
+ @RequestParam("username") String username,
@RequestParam("newEmail") String newEmail) {
+ if(!JWTUtils.checkToken(token, username, Constants.UserRole.USER)) {
+ return ResponseEntity.badRequest().body("Invalid token");
+ }
+
User user = userService.findByUsername(username);
if (user != null) {
user.setEmail(newEmail);