feat: 注销账号时级联删除用户记录

- 注销账号时删除用户的所有测算记录
- 添加@Transactional注解确保事务一致性
This commit is contained in:
H1d3rOne committed 2026-03-10 04:04:47 +08:00
1 parent 9967e5008c
commit 4eb434b9ec
1 file changed
+6
@@ -2,6 +2,7 @@ package xuan.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import xuan.entity.UserInfo;
import xuan.repository.UserInfoRepository;
@@ -13,6 +14,9 @@ public class UserInfoService {
@Autowired
private UserInfoRepository userInfoRepository;
@Autowired
private DeductRecordService deductRecordService;
public UserInfo loginOrRegister(String openId, String nickname, String avatarUrl) {
UserInfo user = userInfoRepository.findByOpenId(openId);
if (user != null) {
@@ -109,9 +113,11 @@ public class UserInfoService {
return null;
}
@Transactional
public boolean deleteAccount(String userId) {
UserInfo user = userInfoRepository.findByUserId(userId);
if (user != null) {
deductRecordService.deleteByUserId(userId);
userInfoRepository.delete(user);
return true;
}