fix(tkuser): 연차설정 저장 시 settings 객체→배열 변환 누락 수정

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-03-25 12:59:49 +09:00
parent 08a629f662
commit d46e509e42
2 changed files with 36 additions and 3 deletions

View File

@@ -279,6 +279,22 @@
</div>
<div id="dept-tksafety-perms" class="p-4 border border-t-0 border-orange-100 rounded-b-lg space-y-4"></div>
</div>
<!-- tksupport - 행정 지원 -->
<div class="system-section tksupport rounded-lg mb-5 bg-white">
<div class="flex items-center justify-between px-4 py-3 bg-indigo-50 rounded-t-lg border border-indigo-100">
<div class="flex items-center gap-2">
<i class="fas fa-briefcase text-indigo-500"></i>
<span class="font-semibold text-sm text-indigo-900">행정 지원</span>
<span class="text-xs text-indigo-500 bg-indigo-100 px-2 py-0.5 rounded-full">tksupport</span>
</div>
<div class="flex gap-2">
<button onclick="toggleDeptSystemAll('tksupport', true)" class="text-xs text-indigo-600 hover:underline">전체 허용</button>
<span class="text-gray-300">|</span>
<button onclick="toggleDeptSystemAll('tksupport', false)" class="text-xs text-indigo-600 hover:underline">전체 해제</button>
</div>
</div>
<div id="dept-tksupport-perms" class="p-4 border border-t-0 border-indigo-100 rounded-b-lg space-y-4"></div>
</div>
<!-- tkuser - 통합 관리 -->
<div>
<div class="flex items-center justify-between bg-slate-50 px-4 py-2 rounded-t-lg border border-slate-200">
@@ -381,6 +397,22 @@
</div>
<div id="tksafety-perms" class="p-4 border border-t-0 border-orange-100 rounded-b-lg space-y-4"></div>
</div>
<!-- tksupport - 행정 지원 -->
<div class="system-section tksupport rounded-lg mb-5 bg-white">
<div class="flex items-center justify-between px-4 py-3 bg-indigo-50 rounded-t-lg border border-indigo-100">
<div class="flex items-center gap-2">
<i class="fas fa-briefcase text-indigo-500"></i>
<span class="font-semibold text-sm text-indigo-900">행정 지원</span>
<span class="text-xs text-indigo-500 bg-indigo-100 px-2 py-0.5 rounded-full">tksupport</span>
</div>
<div class="flex gap-2">
<button onclick="toggleSystemAll('tksupport', true)" class="text-xs text-indigo-600 hover:underline">전체 허용</button>
<span class="text-gray-300">|</span>
<button onclick="toggleSystemAll('tksupport', false)" class="text-xs text-indigo-600 hover:underline">전체 해제</button>
</div>
</div>
<div id="tksupport-perms" class="p-4 border border-t-0 border-indigo-100 rounded-b-lg space-y-4"></div>
</div>
<!-- tkuser - 통합 관리 -->
<div>
<div class="flex items-center justify-between bg-slate-50 px-4 py-2 rounded-t-lg border border-slate-200">
@@ -2360,14 +2392,14 @@
<!-- JS: Tabs -->
<script src="/static/js/tkuser-tabs.js?v=2026032301"></script>
<!-- JS: Individual modules -->
<script src="/static/js/tkuser-users.js?v=2026032501"></script>
<script src="/static/js/tkuser-users.js?v=2026032502"></script>
<script src="/static/js/tkuser-projects.js?v=2026031401"></script>
<script src="/static/js/tkuser-departments.js?v=2026032302"></script>
<script src="/static/js/tkuser-issue-types.js?v=2026031401"></script>
<script src="/static/js/tkuser-workplaces.js?v=2026031401"></script>
<script src="/static/js/tkuser-tasks.js?v=2026031401"></script>
<script src="/static/js/tkuser-vacations.js?v=2026032301"></script>
<script src="/static/js/tkuser-vacation-settings.js?v=2026032301"></script>
<script src="/static/js/tkuser-vacation-settings.js?v=2026032501"></script>
<script src="/static/js/tkuser-layout-map.js?v=2026031401"></script>
<script src="/static/js/tkuser-partners.js?v=2026031601"></script>
<script src="/static/js/tkuser-vendors.js?v=2026031401"></script>

View File

@@ -150,7 +150,8 @@ async function saveVacationSettings() {
if (!Object.keys(changes).length) { showToast('변경된 설정이 없습니다.', 'error'); return; }
try {
await api('/vacation-settings', { method: 'PUT', body: JSON.stringify({ settings: changes }) });
const settingsArr = Object.entries(changes).map(([setting_key, setting_value]) => ({ setting_key, setting_value: String(setting_value) }));
await api('/vacation-settings', { method: 'PUT', body: JSON.stringify({ settings: settingsArr }) });
showToast('설정이 저장되었습니다.');
vacSettingsLoaded = false;
await loadVacationSettingsTab();