package vip.mate.auth.controller; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import vip.mate.auth.model.LoginRequest; import vip.mate.auth.model.LoginResponse; import vip.mate.auth.model.UserEntity; import vip.mate.auth.service.AuthService; import vip.mate.common.result.R; import java.util.List; /** * 认证接口 * * @author MateClaw Team */ @Tag(name = "认证管理") @RestController @RequestMapping("/api/v1/auth") @RequiredArgsConstructor public class AuthController { private final AuthService authService; @Operation(summary = "用户登录") @PostMapping("/login") public R login(@RequestBody LoginRequest request) { return R.ok(authService.login(request)); } @Operation(summary = "获取用户列表") @GetMapping("/users") public R> listUsers() { return R.ok(authService.listUsers()); } @Operation(summary = "创建用户") @PostMapping("/users") public R createUser(@RequestBody UserEntity user) { return R.ok(authService.createUser(user)); } @Operation(summary = "修改密码") @PutMapping("/users/{id}/password") public R changePassword( @PathVariable Long id, @RequestParam String oldPassword, @RequestParam String newPassword) { authService.changePassword(id, oldPassword, newPassword); return R.ok(); } }