chore(i18n): 전체 화면 '고정지출' → '정기결제' 문구 변경
Deploy / deploy (push) Failing after 11m5s

- 사이드바·헤더·홈·업그레이드·데모·정기결제/내역 화면 라벨 통일
- 백업 엑셀 시트명(backup.js)은 기존 백업 복원 호환 위해 '고정지출' 유지

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
sb
2026-07-07 22:20:24 +09:00
parent 98ad7b9e98
commit 1ee264f2ab
9 changed files with 26 additions and 26 deletions
+11 -11
View File
@@ -712,7 +712,7 @@ async function remove(e) {
}
}
// 고정지출 등록 확인 모달 상태 (네이티브 confirm 대신 — PC 팝업 제목 'sb_pt' 노출 방지)
// 정기결제 등록 확인 모달 상태 (네이티브 confirm 대신 — PC 팝업 제목 'sb_pt' 노출 방지)
const recurConfirm = reactive({ open: false, title: '', dom: 1, amount: 0, payload: null })
const flashMsg = ref('')
let flashTimer = null
@@ -722,9 +722,9 @@ function flash(msg) {
flashTimer = setTimeout(() => (flashMsg.value = ''), 2800)
}
// 현재 수정 중인 내역을 '매월' 고정지출로 등록 — 확인 모달을 띄운다
// 현재 수정 중인 내역을 '매월' 정기결제로 등록 — 확인 모달을 띄운다
function registerAsRecurring() {
if (form.type === 'REPAYMENT') return // 고정지출은 수입/지출/이체만
if (form.type === 'REPAYMENT') return // 정기결제은 수입/지출/이체만
const amount = Number(form.amount)
if (!amount || amount <= 0) {
formError.value = '금액을 올바르게 입력하세요.'
@@ -733,7 +733,7 @@ function registerAsRecurring() {
const title =
(form.memo || '').trim() ||
(form.category || '').trim() ||
(form.type === 'INCOME' ? '정기 수입' : form.type === 'TRANSFER' ? '정기 이체' : '고정 지출')
(form.type === 'INCOME' ? '정기 수입' : form.type === 'TRANSFER' ? '정기 이체' : '정기결제')
const base = form.entryDate || todayStr()
const [y, m, d] = base.split('-').map(Number)
const dom = d
@@ -766,9 +766,9 @@ async function doRegisterRecurring() {
await accountApi.createRecurring(recurConfirm.payload)
recurConfirm.open = false
formOpen.value = false
flash('고정지출로 등록했습니다. 고정지출 화면에서 주기를 변경할 수 있어요.')
flash('정기결제로 등록했습니다. 정기결제 화면에서 주기를 변경할 수 있어요.')
} catch (e) {
formError.value = e.response?.data?.message || '고정지출 등록에 실패했습니다.'
formError.value = e.response?.data?.message || '정기결제 등록에 실패했습니다.'
recurConfirm.open = false
} finally {
submitting.value = false
@@ -941,7 +941,7 @@ async function analyzePasted() {
onMounted(async () => {
// 진입 시 밀린 정기 거래를 먼저 반영한 뒤 목록을 불러온다 (중복 없이)
// 고정지출은 무료도 2건까지 사용 가능 → 모든 로그인 사용자에 대해 실행
// 정기결제은 무료도 2건까지 사용 가능 → 모든 로그인 사용자에 대해 실행
try {
await accountApi.runRecurrings()
} catch {
@@ -1302,7 +1302,7 @@ onMounted(async () => {
class="to-recurring"
:disabled="submitting"
@click="registerAsRecurring"
>🔁 내역을 고정지출 등록</button>
>🔁 내역을 정기결제 등록</button>
<button
v-if="editId && (form.type === 'INCOME' || form.type === 'EXPENSE')"
@@ -1346,17 +1346,17 @@ onMounted(async () => {
</Transition>
</Teleport>
<!-- 고정지출 등록 확인 (네이티브 confirm 대체 제목 'sb_pt' 노출 방지) -->
<!-- 정기결제 등록 확인 (네이티브 confirm 대체 제목 'sb_pt' 노출 방지) -->
<Teleport to="body">
<Transition name="fade">
<div v-if="recurConfirm.open" class="modal-backdrop" @click.self="recurConfirm.open = false">
<div class="modal confirm-modal" role="dialog" aria-modal="true">
<h2>고정지출 등록</h2>
<h2>정기결제 등록</h2>
<p class="confirm-body">
<b>{{ recurConfirm.title }}</b><br />
매월 <b>{{ recurConfirm.dom }}</b> · <b>{{ won(recurConfirm.amount) }}</b> 으로 등록할까요?
</p>
<p class="confirm-sub">주기·시작일은 고정지출 화면에서 변경할 있어요.</p>
<p class="confirm-sub">주기·시작일은 정기결제 화면에서 변경할 있어요.</p>
<div class="buttons">
<IconBtn icon="close" title="취소" @click="recurConfirm.open = false" />
<IconBtn icon="save" title="등록" variant="primary" :disabled="submitting" @click="doRegisterRecurring" />