123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- package com.zhentao.user.controller;
- import com.aliyun.oss.OSS;
- import com.aliyun.oss.OSSClientBuilder;
- import com.aliyun.oss.model.PutObjectRequest;
- import com.zhentao.config.NullLogin;
- import com.zhentao.osspicture.OssUtil;
- import com.zhentao.tool.TokenUtils;
- import com.zhentao.user.domain.UserLogin;
- import com.zhentao.user.dto.*;
- import com.zhentao.user.service.UserLoginService;
- import com.zhentao.vo.Result;
- import lombok.RequiredArgsConstructor;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.validation.annotation.Validated;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import javax.validation.Valid;
- import javax.validation.constraints.NotNull;
- import java.io.IOException;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.UUID;
- @RestController
- @RequestMapping("user")
- @RequiredArgsConstructor
- @Validated
- public class UserController {
- @Autowired
- public UserLoginService userLoginService;
- @Autowired
- public OssUtil ossUtil;
- //注册
- @PostMapping("/register")
- @NullLogin
- public Result Register(@RequestBody @Valid UserRegister userRegister){
- return userLoginService.register(userRegister);
- }
- //验证码
- @PostMapping("/code")
- @NullLogin
- public Result code(@RequestBody @Valid NoteDto noteDto) {
- // System.err.println(noteDto);
- return userLoginService.note(noteDto);
- }
- //手机号登录
- @PostMapping("/login")
- @NullLogin
- public Result login(@RequestBody @Valid UserLoginDto userLoginDto) {
- return userLoginService.login(userLoginDto);
- }
- //账号和密码进行登录
- @PostMapping("/UserPassLogin")
- @NullLogin
- public Result UserPassLogin(@RequestBody @Valid UserPassDto userPassDto) {
- return userLoginService.UserPassLogin(userPassDto);
- }
- // 忘记密码
- @PostMapping("/ForgetPass")
- @NullLogin
- public Result ForgetPass(@RequestBody @Valid ForgetPassDto forgetPassDto) {
- return userLoginService.ForgetPass(forgetPassDto);
- }
- /**
- * 上传头像
- */
- @PostMapping("/upload-avatar")
- @NullLogin
- public Map<String, Object> uploadAvatar(@NotNull(message = "请选择上传文件")
- @RequestParam("file") MultipartFile file) {
- Map<String, Object> result = new HashMap<>();
- try {
- // 上传到OSS
- String url = ossUtil.uploadFile(file);
- // TODO: 保存URL到数据库
- // userService.updateAvatar(userId, url);
- result.put("success", true);
- result.put("message", "上传成功");
- result.put("url", url);
- } catch (IOException e) {
- result.put("success", false);
- result.put("message", "上传失败: " + e.getMessage());
- }
- return result;
- }
- //根据ID查询用户的信息
- @GetMapping("getUserById")
- @NullLogin
- public Result getUserById(@RequestHeader("token") String token) {
- String userIdFromToken = TokenUtils.getUserIdFromToken(token);
- UserLogin userById = userLoginService.getUserById(Long.valueOf(userIdFromToken));
- System.err.println(userById);
- return Result.OK(userById, "查询成功");
- }
- //查询好有-搜索
- @GetMapping("searchFriends")
- @NullLogin
- public Result searchFriends(@RequestParam("keyword") String keyword) {
- return Result.OK(userLoginService.searchFriends(keyword), "查询成功");
- }
- }
|