feat: 完善微信授权登录功能
- 新增半屏授权登录窗口,从底部滑出 - 支持微信头像和昵称选择 - 新用户注册默认3个金币 - 新增注销账号功能,从数据库删除用户 - 删除旧的授权登录页面 - 退出登录和注销后跳转首页 - 优化登录交互体验
This commit is contained in:
1 parent
832f282ff9
commit
6561e9034b
11 files changed
+593
-563
No files matched your search
@@ -245,4 +245,25 @@ public class UserController {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@PostMapping("/deleteAccount")
|
||||
public Map<String, Object> deleteAccount(@RequestBody Map<String, Object> params) {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
try {
|
||||
String userId = params.get("userId").toString();
|
||||
|
||||
boolean deleted = userInfoService.deleteAccount(userId);
|
||||
if (deleted) {
|
||||
result.put("success", true);
|
||||
result.put("message", "账号已注销");
|
||||
} else {
|
||||
result.put("success", false);
|
||||
result.put("error", "用户不存在");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
result.put("success", false);
|
||||
result.put("error", e.getMessage());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,9 @@ public class UserInfoService {
|
||||
public UserInfo loginOrRegister(String openId, String nickname, String avatarUrl) {
|
||||
UserInfo user = userInfoRepository.findByOpenId(openId);
|
||||
if (user != null) {
|
||||
return user;
|
||||
user.setNickname(nickname);
|
||||
user.setAvatarUrl(avatarUrl);
|
||||
return userInfoRepository.save(user);
|
||||
}
|
||||
|
||||
user = new UserInfo();
|
||||
@@ -26,7 +28,7 @@ public class UserInfoService {
|
||||
user.setUsername(generateUsername());
|
||||
user.setUserId(generateUserId());
|
||||
user.setVipLevel(0);
|
||||
user.setCoins(10);
|
||||
user.setCoins(3);
|
||||
user.setStreakDays(0);
|
||||
|
||||
return userInfoRepository.save(user);
|
||||
@@ -108,6 +110,15 @@ public class UserInfoService {
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean deleteAccount(String userId) {
|
||||
UserInfo user = userInfoRepository.findByUserId(userId);
|
||||
if (user != null) {
|
||||
userInfoRepository.delete(user);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private String generateUsername() {
|
||||
String prefix = "玄机用户";
|
||||
String suffix = generateRandomString(6);
|
||||
|
||||
Reference in new issue
Block a user