发表于: 2025-06-13 20:23:58

0 22


今天完成的事情:(一定要写非常细致的内容,比如说学会了盒子模型,了解了Margin)

UserController
package org.example.controller;

import org.example.model.ApiResponse;
import org.example.model.TreeNode;
import org.example.model.User;
import org.example.service.UserService;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;

@RestController
@RequestMapping("/api/users")
public class UserController {

private final UserService userService;

public UserController(UserService userService) {
this.userService = userService;
}

/**
    * 获取完整树形结构
    */
   @GetMapping("/tree")
public ApiResponse<List<TreeNode>> getFullTree() {
return ApiResponse.success(userService.buildTree());
}

/**
    * 获取指定节点的子节点树
    * @param pid 父节点ID
    */
   @GetMapping("/{pid}/children")
public ApiResponse<List<TreeNode>> getChildrenTree(@PathVariable Long pid) {
return ApiResponse.success(userService.getChildrenTree(pid));
}

/**
    * 根据名称查询用户
    * @param name 用户名
    */
   @GetMapping("/search")
public ApiResponse<User> getUserByName(@RequestParam String name) {
return ApiResponse.success(userService.getByName(name));
}

/**
    * 获取所有用户列表(平铺结构)
    */
   @GetMapping
   public ApiResponse<List<User>> getAllUsers() {
return ApiResponse.success(userService.getAll());
}

/**
    * 创建新用户
    * @param user 用户数据
    */
   @PostMapping
   public ApiResponse<Long> createUser(@RequestBody @Valid User user) {
return ApiResponse.success(userService.create(user));
}

/**
    * 更新用户信息
    * @param id 用户ID
    * @param user 更新后的用户数据
    */
   @PutMapping("/{id}")
public ApiResponse<Boolean> updateUser(
@PathVariable Long id,
@RequestBody @Valid User user) {
user.setId(id); // 确保ID一致性
       return ApiResponse.success(userService.update(user));
}

/**
    * 删除用户
    * @param id 用户ID
    */
   @DeleteMapping("/{id}")
public ApiResponse<Boolean> deleteUser(@PathVariable Long id) {
return ApiResponse.success(userService.deleteById(id));
}
}

明天计划的事情:(一定要写非常细致的内容)

遇到的问题:(遇到什么困难,怎么解决的)

收获:(通过今天的学习,学到了什么知识)



返回列表 返回列表
评论

    分享到