feat: 분류 순서변경(reorder) + 월 예상 수입 설정 API
CI / build (push) Failing after 13m44s

- 분류: sort_order reorder 엔드포인트, 생성 시 맨 뒤 배치
- 예산: account_setting 테이블 + 월 예상 수입 GET/PUT

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ByungCheol
2026-06-01 22:37:41 +09:00
parent 9ad6a91a56
commit cac9919cc5
11 changed files with 159 additions and 1 deletions
+8
View File
@@ -123,6 +123,14 @@ CREATE TABLE IF NOT EXISTS account_entry_tag (
KEY idx_aet_tag (tag_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 사용자별 가계부 설정 (예: 월 예상 수입)
CREATE TABLE IF NOT EXISTS account_setting (
member_id BIGINT NOT NULL COMMENT '소유자 member.id',
expected_income BIGINT NULL COMMENT '월 예상 수입',
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (member_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 투자 보유 종목 (INVEST 지갑별 · 사용자별)
CREATE TABLE IF NOT EXISTS invest_holding (
id BIGINT NOT NULL AUTO_INCREMENT,
@@ -0,0 +1,16 @@
<?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.AccountSettingMapper">
<select id="findExpectedIncome" resultType="java.lang.Long">
SELECT expected_income FROM account_setting WHERE member_id = #{memberId}
</select>
<update id="upsertExpectedIncome">
INSERT INTO account_setting (member_id, expected_income, updated_at)
VALUES (#{memberId}, #{expectedIncome}, NOW())
ON DUPLICATE KEY UPDATE expected_income = #{expectedIncome}, updated_at = NOW()
</update>
</mapper>
@@ -51,4 +51,14 @@
DELETE FROM account_category WHERE id = #{id} AND member_id = #{memberId}
</delete>
<update id="updateSortOrder">
UPDATE account_category SET sort_order = #{sortOrder}
WHERE id = #{id} AND member_id = #{memberId}
</update>
<select id="maxSortOrder" resultType="java.lang.Integer">
SELECT MAX(sort_order) FROM account_category
WHERE member_id = #{memberId} AND type = #{type}
</select>
</mapper>