diff --git a/index.cfm b/index.cfm index ecf2c44..9d84ed3 100644 --- a/index.cfm +++ b/index.cfm @@ -71,7 +71,7 @@
Nubes - Сверка договоров — LLM v1.0.76 — Lucee + Сверка договоров — LLM v1.0.77 — Lucee
@@ -234,6 +234,26 @@ fileInput.addEventListener('change', async function() { fileQueue[rowIdx].doc_id = resp.DOC_ID; fileQueue[rowIdx].status = ''; fileQueue[rowIdx].uploaded = true; + + // Авто-парсинг сразу после загрузки + var t0 = Date.now(); + fileQueue[rowIdx].status = '⏳ парсинг...'; + renderTable(); + try { + var pr = await fetch('/parser.cfm?doc_id=' + resp.DOC_ID); + var pd = await pr.json(); + var elapsed = ((Date.now() - t0) / 1000).toFixed(1); + if (pd.OK && pd.STATUS === 'parsed') { + fileQueue[rowIdx].parsed = true; + fileQueue[rowIdx].parseInfo = pd; + fileQueue[rowIdx].status = '✓ ' + pd.ELEMENT_COUNT + ' эл. (' + elapsed + 'с)'; + } else { + fileQueue[rowIdx].status = '✗ ' + (pd.ERROR_COUNT > 0 ? (pd.ERRORS && pd.ERRORS[0] || 'ошибка') : 'ошибка') + ''; + fileQueue[rowIdx].parseInfo = pd; + } + } catch(pe) { + fileQueue[rowIdx].status = '✗ парсинг: сеть'; + } } catch(err) { fileQueue[rowIdx].status = '✗ ' + err.message + ''; } @@ -244,8 +264,15 @@ fileInput.addEventListener('change', async function() { fileInput.value = ''; fileInput.disabled = false; - parseBtn.disabled = (contractId === null); + parseBtn.disabled = false; parseBtn.innerHTML = ' Парсинг'; + // Показать кнопки LLM после авто-парсинга + var llmBtn = document.getElementById('llmBtn'); + llmBtn.style.display = 'flex'; + llmBtn.disabled = false; + var llmBtnV2 = document.getElementById('llmBtnV2'); + llmBtnV2.style.display = 'flex'; + llmBtnV2.disabled = false; lucide.createIcons(); });