package com.admin.controller; import com.admin.common.aop.LogAnnotation; import com.admin.common.annotation.RequireRole; import com.admin.common.dto.ChangePasswordDto; import com.admin.common.dto.LoginDto; import com.admin.common.dto.PageDto; import com.admin.common.dto.UserDto; import com.admin.common.dto.UserUpdateDto; import com.admin.common.lang.R; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.Map; /** *

* 前端控制器 *

* * @author QAQ * @since 2025-06-03 */ @RestController @CrossOrigin @RequestMapping("/api/v1/user") public class UserController extends BaseController { @LogAnnotation @PostMapping("/login") public R login(@Validated @RequestBody LoginDto loginDto) { return userService.login(loginDto); } @LogAnnotation @RequireRole @PostMapping("/create") public R create(@Validated @RequestBody UserDto userDto) { return userService.createUser(userDto); } @LogAnnotation @RequireRole @PostMapping("/list") public R readAll(@RequestBody(required = false) PageDto pageDto) { // 如果没有传分页参数,使用默认值 if (pageDto == null) { pageDto = new PageDto(); } return userService.getAllUsers(pageDto); } @LogAnnotation @RequireRole @PostMapping("/update") public R update(@Validated @RequestBody UserUpdateDto userUpdateDto) { return userService.updateUser(userUpdateDto); } @LogAnnotation @RequireRole @PostMapping("/delete") public R delete(@RequestBody Map params) { Long id = Long.valueOf(params.get("id").toString()); return userService.deleteUser(id); } @LogAnnotation @PostMapping("/package") public R getUserPackageInfo() { return userService.getUserPackageInfo(); } @LogAnnotation @PostMapping("/updatePassword") public R updatePassword(@Validated @RequestBody ChangePasswordDto changePasswordDto) { return userService.updatePassword(changePasswordDto); } }