fix: fix a bunch of bugs!!!!!!!!
This commit is contained in:
parent
9e78a943c2
commit
374271bd47
@ -4,7 +4,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import org.blue.club.annotation.Auth;
|
||||
import org.blue.club.dao.AuthDao;
|
||||
import org.blue.club.dao.UserDao;
|
||||
import org.blue.club.entities.dto.User;
|
||||
import org.blue.club.entities.dto.user.User;
|
||||
import org.blue.club.entities.vo.data.UserVo;
|
||||
import org.mmga.spring.boot.starter.componet.AuthorizationHandler;
|
||||
import org.mmga.spring.boot.starter.componet.JwtUtils;
|
||||
|
@ -8,9 +8,9 @@ import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.blue.club.annotation.Auth;
|
||||
import org.blue.club.entities.dto.User;
|
||||
import org.blue.club.entities.dto.req.*;
|
||||
import org.blue.club.entities.dto.resp.VerifyCodeResponse;
|
||||
import org.blue.club.entities.dto.user.User;
|
||||
import org.blue.club.entities.dto.user.req.*;
|
||||
import org.blue.club.entities.dto.user.resp.VerifyCodeResponse;
|
||||
import org.blue.club.services.UserServices;
|
||||
import org.mmga.spring.boot.starter.annotation.AuthMapping;
|
||||
import org.mmga.spring.boot.starter.entities.PagerData;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto;
|
||||
package org.blue.club.entities.dto.user;
|
||||
|
||||
import com.mybatisflex.annotation.Id;
|
||||
import com.mybatisflex.annotation.RelationManyToOne;
|
||||
@ -6,6 +6,7 @@ import jakarta.annotation.Nullable;
|
||||
import lombok.Data;
|
||||
import org.blue.club.entities.vo.data.AuthVo;
|
||||
import org.blue.club.entities.vo.data.ClubVo;
|
||||
import org.mmga.spring.boot.starter.annotation.VoFieldMapper;
|
||||
import org.mmga.spring.boot.starter.interfaces.IdHolder;
|
||||
|
||||
@Data
|
||||
@ -16,6 +17,7 @@ public class User implements IdHolder {
|
||||
@Nullable
|
||||
private String avatar;
|
||||
@RelationManyToOne(selfField = "auth", targetField = "id")
|
||||
@VoFieldMapper("auths")
|
||||
private AuthVo auth;
|
||||
@RelationManyToOne(joinTable = "club_user_auth", selfField = "id", joinSelfColumn = "user_id", targetField = "id", joinTargetColumn = "club_id")
|
||||
private ClubVo club;
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto.req;
|
||||
package org.blue.club.entities.dto.user.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import org.apache.commons.codec.digest.DigestUtils;
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto.req;
|
||||
package org.blue.club.entities.dto.user.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import org.apache.commons.codec.digest.DigestUtils;
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto.req;
|
||||
package org.blue.club.entities.dto.user.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto.req;
|
||||
package org.blue.club.entities.dto.user.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto.req;
|
||||
package org.blue.club.entities.dto.user.req;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.entities.dto.resp;
|
||||
package org.blue.club.entities.dto.user.resp;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.blue.club.entities.vo.data;
|
||||
|
||||
import com.mybatisflex.annotation.Id;
|
||||
import com.mybatisflex.annotation.KeyType;
|
||||
import com.mybatisflex.annotation.RelationManyToOne;
|
||||
import com.mybatisflex.annotation.Table;
|
||||
import jakarta.annotation.Nullable;
|
||||
@ -12,7 +13,7 @@ import org.mmga.spring.boot.starter.annotation.VoIgnore;
|
||||
@Data
|
||||
@Table("user")
|
||||
public class UserVo extends BaseDataVo {
|
||||
@Id
|
||||
@Id(keyType = KeyType.Auto)
|
||||
private Long id;
|
||||
private String name;
|
||||
@VoIgnore
|
||||
|
@ -11,22 +11,25 @@ import org.apache.tomcat.util.buf.HexUtils;
|
||||
import org.blue.club.dao.UserDao;
|
||||
import org.blue.club.dao.redis.AvatarOperationDao;
|
||||
import org.blue.club.dao.redis.VerifyDao;
|
||||
import org.blue.club.entities.dto.User;
|
||||
import org.blue.club.entities.dto.req.*;
|
||||
import org.blue.club.entities.dto.resp.VerifyCodeResponse;
|
||||
import org.blue.club.entities.dto.user.User;
|
||||
import org.blue.club.entities.dto.user.req.*;
|
||||
import org.blue.club.entities.dto.user.resp.VerifyCodeResponse;
|
||||
import org.blue.club.entities.vo.data.AvatarTmpVo;
|
||||
import org.blue.club.entities.vo.data.UserVo;
|
||||
import org.blue.club.entities.vo.VerifyVo;
|
||||
import org.blue.club.utils.FileUtils;
|
||||
import org.blue.club.utils.VerifyCodeUtils;
|
||||
import org.blue.club.utils.iop.FileUtils;
|
||||
import org.blue.club.utils.iop.VerifyCodeUtils;
|
||||
import org.mmga.spring.boot.starter.entities.PagerData;
|
||||
import org.mmga.spring.boot.starter.entities.Result;
|
||||
import org.mmga.spring.boot.starter.exception.AuthorizationException;
|
||||
import org.mmga.spring.boot.starter.properties.Env;
|
||||
import org.mmga.spring.boot.starter.properties.MainProperties;
|
||||
import org.mmga.spring.boot.starter.utils.RandomUtils;
|
||||
import org.mmga.spring.boot.starter.utils.VoUtils;
|
||||
import org.springframework.http.ContentDisposition;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.StreamUtils;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
@ -55,8 +58,10 @@ public class UserServices {
|
||||
private final AvatarOperationDao avatarOperationDao;
|
||||
private final FileUtils fileUtils;
|
||||
private final VerifyCodeUtils verifyCodeUtils;
|
||||
private final MainProperties mainProperties;
|
||||
|
||||
private boolean isWrongVerifyCode(String key, String code) {
|
||||
if (mainProperties.getEnv().equals(Env.DEV)) return false;
|
||||
Optional<VerifyVo> targetCode = verifyDao.findById(key);
|
||||
if (targetCode.isEmpty()) {
|
||||
return true;
|
||||
@ -65,6 +70,7 @@ public class UserServices {
|
||||
return !targetCode.get().answer().equals(code);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Result<User> login(LoginRequest loginRequest) {
|
||||
if (this.isWrongVerifyCode(loginRequest.key(), loginRequest.code())) {
|
||||
return Result.failed(HttpStatus.FORBIDDEN, "错误的验证码");
|
||||
@ -75,6 +81,7 @@ public class UserServices {
|
||||
return Result.success(user);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Result<User> createUser(RegisterRequest request) {
|
||||
if (this.isWrongVerifyCode(request.key(), request.code())) {
|
||||
return Result.failed(HttpStatus.FORBIDDEN, "错误的验证码");
|
||||
@ -87,6 +94,7 @@ public class UserServices {
|
||||
userVo.setPassword(request.sha1HexPassword());
|
||||
userVo.setAuth(request.auth());
|
||||
userDao.insert(userVo);
|
||||
System.out.println(userVo);
|
||||
UserVo insertedUserData = userDao.selectOneWithRelationsById(userVo.getId());
|
||||
return Result.success(voUtils.vo2DtoSafe(insertedUserData, User.class));
|
||||
}
|
||||
@ -154,7 +162,7 @@ public class UserServices {
|
||||
MessageDigest messageDigest = digestInputStream.getMessageDigest();
|
||||
String sha1Hex = HexUtils.toHexString(messageDigest.digest());
|
||||
avatarOperationDao.save(new AvatarTmpVo(s, sha1Hex, new Date()));
|
||||
return Result.success(s);
|
||||
return Result.success("上传成功", s);
|
||||
}
|
||||
|
||||
public Result<Boolean> changeAvatar(String avatarOperationCode, User user) {
|
||||
@ -169,14 +177,14 @@ public class UserServices {
|
||||
avatarOperationDao.deleteById(avatarOperationCode);
|
||||
UserVo userVo = new UserVo();
|
||||
userVo.setId(user.getId());
|
||||
userVo.setAvatar(user.getAvatar());
|
||||
userVo.setAvatar(sha1);
|
||||
userDao.update(userVo);
|
||||
return Result.success(true);
|
||||
}
|
||||
|
||||
public Optional<Result<Boolean>> changeAvatarFile(File tmpFile, File targetFile) {
|
||||
if (targetFile.exists()) {
|
||||
fileUtils.tryDeleteOrDeleteOnExit(targetFile);
|
||||
fileUtils.tryDeleteOrDeleteOnExit(tmpFile);
|
||||
return Optional.empty();
|
||||
}
|
||||
if (!tmpFile.renameTo(targetFile))
|
||||
|
@ -1,4 +1,4 @@
|
||||
package org.blue.club.utils;
|
||||
package org.blue.club.utils.iop;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
@ -1,10 +1,10 @@
|
||||
package org.blue.club.utils;
|
||||
package org.blue.club.utils.iop;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
import org.apache.commons.codec.binary.Base64OutputStream;
|
||||
import org.blue.club.dao.redis.VerifyDao;
|
||||
import org.blue.club.entities.dto.resp.VerifyCodeResponse;
|
||||
import org.blue.club.entities.dto.user.resp.VerifyCodeResponse;
|
||||
import org.blue.club.entities.vo.VerifyVo;
|
||||
import org.mmga.spring.boot.starter.utils.RandomUtils;
|
||||
import org.springframework.stereotype.Component;
|
Loading…
x
Reference in New Issue
Block a user