package com.example.demo.user.controller; import com.example.demo.common.utils.RedisClient; import com.example.demo.user.dto.CollectDto; import com.example.demo.user.dto.LoginDto; import com.example.demo.user.dto.PhoneDto; import com.example.demo.user.dto.UserDto; import com.example.demo.user.service.UserService; import com.example.demo.user.service.ValidateCodeService; import com.example.demo.user.service.impl.UserFavoriteServiceImpl; import com.example.demo.user.service.impl.UserServiceImpl; import com.example.demo.user.vo.ResultVo; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @Api(tags = "用户管理") @RestController @RequestMapping("/user") public class UserController { @Autowired private UserServiceImpl userService; @Autowired private UserFavoriteServiceImpl userFavoriteService; @Autowired private ValidateCodeService validateCodeService; @Autowired private RedisClient redisClient; @RequestMapping("/register") public ResultVo register(@RequestBody UserDto dto){ return userService.register(dto); } @RequestMapping("/login") public ResultVo login(@RequestBody LoginDto dto){ return userService.login(dto); } @RequestMapping("/collect") public ResultVo collect(@RequestBody CollectDto dto, @RequestHeader("token") String token){ return userFavoriteService.collect(dto,token); } @RequestMapping("/delCollect") public ResultVo delCollect(Integer targetId, @RequestHeader("token") String token){ return userFavoriteService.delCollect(targetId,token); } @RequestMapping("/selCollect") public ResultVo selCollect(@RequestHeader("token") String token){ return userFavoriteService.selCollect(token); } @RequestMapping("/phoneLogin") public ResultVo phoneLogin(@RequestBody PhoneDto dto){ return userService.phoneLogin(dto); } /** * 生成验证码 * @param phone * @return */ @RequestMapping("/send4Order") public ResultVo send4Order(@RequestParam("phone") String phone) { Integer code = validateCodeService.send4Order(phone); String key = "CODE:" + phone; redisClient.set(key, code); redisClient.expire(key, 60); System.out.println("您的验证码为:------"+code); return ResultVo.success("验证码发送成功"); } }