package com.futu.course.user.controller; import com.futu.course.common.utils.ThreadLocalUtil; import com.futu.course.user.dto.TokenDto; import com.futu.course.user.service.impl.UserServiceImpl; import io.minio.errors.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import com.futu.course.common.annotation.NonLoginRequired; import com.futu.course.common.entity.R; import com.futu.course.user.dto.UserDTO; import com.futu.course.user.dto.UserLoginDto; import org.springframework.web.bind.annotation.RequestBody; /** * @author "杨旭朋" * @ClassName: UserController * @date 2025年05月07日 14:24 */ @RestController @RequestMapping("user") public class UserController { @Autowired private UserServiceImpl userService; @PostMapping("unload") public String unload(MultipartFile multipartFile,Long uid) throws ServerException, InvalidBucketNameException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { return userService.unload(multipartFile, uid); } @NonLoginRequired @PostMapping("wx_login") public R wxLogin(@RequestBody UserDTO dto) { return userService.appLogin(dto); } @NonLoginRequired @PostMapping("logout") public R logout(@RequestBody UserDTO dto) { System.out.println(dto); return userService.logout(dto); } //手机号密码登录 @NonLoginRequired @PostMapping("login") public R login(@RequestBody UserLoginDto dto) throws InterruptedException { R login = userService.login(dto); return login; } @NonLoginRequired @PostMapping("get_login_user") public R getLoginUser(@RequestBody TokenDto token) { R loginUser = userService.getLoginUser(token); return loginUser; } }