/* ===== tkuser 협력업체 조회 (읽기 전용) ===== */ let partnersLoaded = false; let partnersList = []; let selectedPartnerIdTkuser = null; async function loadPartnersTab() { if (partnersLoaded) return; partnersLoaded = true; await loadPartnersList(); } async function loadPartnersList() { try { const isActive = document.getElementById('partnerFilterActiveTkuser')?.value; const search = document.getElementById('partnerSearchTkuser')?.value?.trim() || ''; const params = new URLSearchParams(); if (isActive !== '' && isActive !== undefined) params.set('is_active', isActive); if (search) params.set('search', search); const r = await api('/partners?' + params.toString()); partnersList = r.data || []; renderPartnersListTkuser(); } catch (e) { document.getElementById('partnersListTkuser').innerHTML = `
${e.message}
등록된 협력업체가 없습니다.
'; return; } c.innerHTML = partnersList.map(p => { const types = tryParseJsonTkuser(p.business_type) || []; const typeStr = types.map(t => `${escHtml(t)}`).join(' '); const insuranceWarn = isInsuranceExpiringSoonTkuser(p.insurance_expiry); return `등록된 작업자가 없습니다
'}