- POST /api/account/restore: 기존 데이터 전부 삭제 후 이름 기준 재생성 (계좌→태그→분류(대/소)→내역→고정→예산→자주내역), 한 트랜잭션(실패 시 롤백) - 빈 데이터 안전장치, 투자 종목/매매는 복구 대상 외(삭제됨) - BackupMapper(deleteByMember), RestoreRequest DTO, BackupService/Controller Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.sb.web.account.mapper.BackupMapper">
|
||||
|
||||
<delete id="deleteEntryTags">
|
||||
DELETE FROM account_entry_tag
|
||||
WHERE entry_id IN (SELECT id FROM account_entry WHERE member_id = #{memberId})
|
||||
</delete>
|
||||
<delete id="deleteEntries">
|
||||
DELETE FROM account_entry WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteRecurrings">
|
||||
DELETE FROM recurring WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteBudgets">
|
||||
DELETE FROM budget WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteBudgetIncome">
|
||||
DELETE FROM budget_income WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteQuickEntries">
|
||||
DELETE FROM quick_entry WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteInvestTrades">
|
||||
DELETE FROM invest_trade WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteInvestHoldings">
|
||||
DELETE FROM invest_holding WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteCategories">
|
||||
DELETE FROM account_category WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteTags">
|
||||
DELETE FROM account_tag WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
<delete id="deleteWallets">
|
||||
DELETE FROM wallet WHERE member_id = #{memberId}
|
||||
</delete>
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user