Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -30,4 +30,11 @@ public class BackupController {
|
|||||||
backupService.restore(current.getId(), req);
|
backupService.restore(current.getId(), req);
|
||||||
return ResponseEntity.noContent().build();
|
return ResponseEntity.noContent().build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/all")
|
||||||
|
public ResponseEntity<Void> deleteAll(
|
||||||
|
@RequestAttribute(AuthInterceptor.CURRENT_MEMBER) SessionUser current) {
|
||||||
|
backupService.deleteAll(current.getId());
|
||||||
|
return ResponseEntity.noContent().build();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,6 +38,22 @@ public class BackupService {
|
|||||||
private final BudgetService budgetService;
|
private final BudgetService budgetService;
|
||||||
private final QuickEntryService quickEntryService;
|
private final QuickEntryService quickEntryService;
|
||||||
|
|
||||||
|
@Transactional
|
||||||
|
public void deleteAll(Long memberId) {
|
||||||
|
backupMapper.deleteEntryTags(memberId);
|
||||||
|
backupMapper.deleteEntries(memberId);
|
||||||
|
backupMapper.deleteRecurrings(memberId);
|
||||||
|
backupMapper.deleteBudgets(memberId);
|
||||||
|
backupMapper.deleteBudgetIncome(memberId);
|
||||||
|
backupMapper.deleteQuickEntries(memberId);
|
||||||
|
backupMapper.deleteInvestTrades(memberId);
|
||||||
|
backupMapper.deleteInvestHoldings(memberId);
|
||||||
|
backupMapper.deleteCategories(memberId);
|
||||||
|
backupMapper.deleteTags(memberId);
|
||||||
|
backupMapper.deleteWallets(memberId);
|
||||||
|
log.info("[deleteAll] member={} — all account data deleted", memberId);
|
||||||
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public void restore(Long memberId, RestoreRequest req) {
|
public void restore(Long memberId, RestoreRequest req) {
|
||||||
if (isEmpty(req)) {
|
if (isEmpty(req)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user