SpringDemo/src/main/java/com/example/springdemo/controller/UsersController.java
2023-11-07 22:42:22 +08:00

78 lines
2.6 KiB
Java

package com.example.springdemo.controller;
import com.example.springdemo.entities.Users;
import com.example.springdemo.entities.password.UsersPassword;
import com.example.springdemo.service.UsersService;
import com.example.springdemo.utils.RoleVerificationAnnotation;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;
import java.util.Optional;
@RestController
@RequestMapping("/users")
public class UsersController {
@Resource
private UsersService usersService;
//添加新用户
@RoleVerificationAnnotation(RoleIDList = {1}, UserIDList = {1})
@PostMapping("/add")
public Users addUsers(@RequestBody UsersPassword usersPassword, @RequestBody Users users) {
usersService.addPassword(usersPassword);
return usersService.addUsers(users);
}
//通过ID删除用户
@RoleVerificationAnnotation(RoleIDList = {1}, UserIDList = {1})
@DeleteMapping("/delete")
public void deleteUsers(@RequestParam(name = "userID") Long userID) {
usersService.deleteUsersById(userID);
}
//通过姓名删除用户
@RoleVerificationAnnotation(RoleIDList = {1}, UserIDList = {1})
@DeleteMapping("/delete")
public void deleteUsers(@RequestParam(name = "name") String name) {
usersService.deleteUsersByName(name);
}
//更新用户信息
@RoleVerificationAnnotation(RoleIDList = {1, 3}, UserIDList = {1})
@PutMapping("/update/info")
public Users updateUsers(@RequestBody Users users) {
return usersService.updateUsers(users);
}
//查找全部用户
@RoleVerificationAnnotation(RoleIDList = {1}, UserIDList = {1})
@GetMapping("/find")
public Iterable<Users> getUsers() {
return usersService.findAllUsers();
}
//根据姓名查找用户
@RoleVerificationAnnotation(RoleIDList = {1}, UserIDList = {1})
@GetMapping("/find")
public Users getUsersByName(@RequestParam(name = "name") String name) {
return usersService.findByName(name);
}
//根据ID查找用户
@RoleVerificationAnnotation(RoleIDList = {1}, UserIDList = {1})
@GetMapping("/find")
public Users getUsersById(@RequestParam(name = "id") Long userID) {
return usersService.findById(userID);
}
//更新用户密码
@RoleVerificationAnnotation(RoleIDList = {1, 3}, UserIDList = {1})
@PutMapping("/update/password")
public void updatePassword(@RequestParam(name = "password") String password,
@RequestParam(name = "userID") Long userID) {
usersService.updatePassword(password, userID);
}
}