LabEx/src/main/java/com/sdut/labex/controller/UserController.java
KaiyuanOSG 60040d341c 2023.6.25
1. 答辩完成
2023-06-26 12:35:35 +08:00

75 lines
2.4 KiB
Java

package com.sdut.labex.controller;
import com.alibaba.fastjson.JSONObject;
import com.sdut.labex.Factory.UserFactory;
import com.sdut.labex.entity.User;
import com.sdut.labex.service.LogService;
import com.sdut.labex.service.UserService;
import com.sdut.labex.utils.ResVo;
import com.sdut.labex.utils.UserHolder;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
/**
* File: UserController
* Created: 2023/6/12
* Author: springforest
* Description:
*/
@RestController
@CrossOrigin
public class UserController {
@Resource
private UserService userService;
@Resource
private LogService logService;
@PostMapping("/login")
public ResVo login(@RequestBody JSONObject jsonObject) {
return userService.login(jsonObject.getString("id"), jsonObject.getString("password"));
}
@PutMapping("/changePassword")
public ResVo changePassword(@RequestBody JSONObject jsonObject) {
String id = UserHolder.getUser().getId();
String oldPassword = jsonObject.getString("oldPassword");
String newPassword = jsonObject.getString("newPassword");
return userService.changePassword(id, oldPassword, newPassword);
}
@PostMapping("/addUserBatch")
public ResVo addBatch(MultipartFile file) {
return userService.addBatch(file);
}
@DeleteMapping("/user/{id}")
public ResVo delete(@PathVariable("id") String id) {
return userService.delete(id);
}
@PutMapping("/user")
public ResVo update(@RequestBody JSONObject jsonObject) {
User user = UserFactory.createUser(jsonObject);
return userService.update(user);
}
@PostMapping("/user/{pageNum}/{pageSize}")
public ResVo getUser(@RequestBody JSONObject jsonObject, @PathVariable("pageNum") int pageNum, @PathVariable("pageSize") int pageSize) {
User user = UserFactory.createUser(jsonObject);
return userService.getUser(pageNum, pageSize, user);
}
@PostMapping("/user")
public ResVo add(@RequestBody JSONObject jsonObject) {
User user = UserFactory.createUser(jsonObject);
return userService.add(user);
}
@GetMapping("/log/{pageNum}/{pageSize}")
public ResVo getLog(@PathVariable("pageNum") int pageNum, @PathVariable("pageSize") int pageSize) {
return logService.getLog(pageNum, pageSize);
}
}