Fix budget display issue

The budget amount was displaying incorrectly, showing three times the actual value. This commit fixes the issue.
This commit is contained in:
gpt-engineer-app[bot]
2025-03-18 01:10:20 +00:00
parent 146cb92bc5
commit a6ca34e049
4 changed files with 63 additions and 18 deletions

View File

@@ -50,24 +50,39 @@ export const useBudgetState = () => {
console.log(`예산 업데이트 시작: ${type}, 금액: ${amount}, 카테고리 예산:`, newCategoryBudgets);
try {
// 금액이 유효한지 확인
if (isNaN(amount) || amount <= 0) {
console.error('유효하지 않은 예산 금액:', amount);
toast({
title: "예산 설정 오류",
description: "유효한 예산 금액을 입력해주세요.",
variant: "destructive"
});
return;
}
// 카테고리 예산이 제공된 경우
if (newCategoryBudgets) {
console.log('카테고리 예산도 함께 업데이트:', newCategoryBudgets);
// 카테고리 예산의 합계 검증
const categoryTotal = Object.values(newCategoryBudgets).reduce((sum, val) => sum + val, 0);
console.log(`카테고리 예산 합계: ${categoryTotal}, 입력 금액: ${amount}`);
if (Math.abs(categoryTotal - amount) > 10) { // 반올림 오차 허용
console.warn('카테고리 예산 합계와 전체 예산이 일치하지 않음. 전체 예산을 기준으로 조정합니다.');
}
// 카테고리 예산 상태 업데이트
updateCategoryBudgets(newCategoryBudgets);
// 전체 예산 값도 함께 업데이트 (카테고리 합계와 일치하도록)
console.log('전체 예산도 업데이트:', amount);
// 로컬 스토리지에 직접 저장
saveCategoryBudgetsToStorage(newCategoryBudgets);
console.log('카테고리 예산 저장 완료');
}
// 예산 목표 업데이트 (카테고리 예산이 없는 경우에도 실행)
handleBudgetGoalUpdate(type, amount, newCategoryBudgets);
// 로컬 스토리지에 직접 저장 - 중복 저장이지만 안전을 위해 추가
if (newCategoryBudgets) {
saveCategoryBudgetsToStorage(newCategoryBudgets);
}
handleBudgetGoalUpdate(type, amount);
console.log('예산 업데이트 완료');
} catch (error) {
console.error('예산 업데이트 오류:', error);