diff --git a/backend/templates/procurement/request_form.html b/backend/templates/procurement/request_form.html index 82e35619..f96bb310 100644 --- a/backend/templates/procurement/request_form.html +++ b/backend/templates/procurement/request_form.html @@ -126,22 +126,26 @@ } const departments = await resp.json(); - console.log('[Departments] Loaded:', departments.length, 'departments'); + console.log('[Departments] Raw response:', departments); - if (!departments || departments.length === 0) { + // API может вернуть массив или объект с пагинацией {results: [...]} + const departmentsList = Array.isArray(departments) ? departments : (departments.results || []); + console.log('[Departments] Loaded:', departmentsList.length, 'departments'); + + if (!departmentsList || departmentsList.length === 0) { select.innerHTML = ''; return; } select.innerHTML = ''; - departments.forEach(dept => { + departmentsList.forEach(dept => { const option = document.createElement('option'); option.value = dept.id; option.textContent = dept.name; // Автовыбор отдела текущего пользователя, если он один - if (!isEdit && departments.length === 1) { + if (!isEdit && departmentsList.length === 1) { option.selected = true; } @@ -179,8 +183,15 @@ } // Обновляем заголовок - document.querySelector('.card-header h4').innerHTML = 'Редактирование заявки #' + requestId; - document.querySelector('.breadcrumb-item.active').textContent = 'Редактирование заявки'; + const cardHeader = document.querySelector('.card-header h4'); + if (cardHeader) { + cardHeader.innerHTML = 'Редактирование заявки #' + requestId; + } + + const breadcrumbItem = document.querySelector('.breadcrumb-item.active'); + if (breadcrumbItem) { + breadcrumbItem.textContent = 'Редактирование заявки'; + } // Скрываем кнопку "Создать и отправить" для редактирования const submitBtn = document.querySelector('[name="action"][value="submit"]');