feat: 注销账号时级联删除用户记录
- 注销账号时删除用户的所有测算记录 - 添加@Transactional注解确保事务一致性
This commit is contained in:
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;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user