package com.yunan.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.yunan.dto.RegisterDTO; import com.yunan.mapper.AuthMapper; import com.yunan.dto.User; import com.yunan.response.ErrorResponse; import com.yunan.service.AuthService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; import javax.annotation.Resource; @Service public class AuthServiceImpl implements AuthService { @Resource private AuthMapper authMapper; @Override public ResponseEntity register(RegisterDTO registerDTO, String rightCode) { //处理registerDTO对数据为空的逻辑 // 验证验证码的正确性 if(registerDTO.getCode() == rightCode){ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(User::getUsername, registerDTO.getUsername()); if(authMapper.selectOne(queryWrapper) != null) { return ResponseEntity .status(HttpStatus.CONFLICT) .body(new ErrorResponse("用户名已存在!!!")); } User user = new User(); user.setUsername(registerDTO.getUsername()); user.setPassword(registerDTO.getPassword()); user.setEmai(registerDTO.getEmail()); boolean isSaved = authMapper.insert(user) > 0; if (isSaved) { return ResponseEntity .status(HttpStatus.OK) .body("注册成功!"); } else { return ResponseEntity .status(HttpStatus.INTERNAL_SERVER_ERROR) .body("数据库存储失败,请稍后重试"); } } else{ // 如果验证码为空或者与正确的验证码不匹配,返回错误信息 return ResponseEntity .status(HttpStatus.BAD_REQUEST) // 设置 HTTP 状态码为 400 .body(new ErrorResponse("验证码不正确或已过期")); // 返回自定义的错误消息 } } }