diff --git a/frontend/admin/js/views/users.js b/frontend/admin/js/views/users.js index 5a02dcf..3b11350 100755 --- a/frontend/admin/js/views/users.js +++ b/frontend/admin/js/views/users.js @@ -196,14 +196,14 @@ export async function initUsers() { renderUsers(users); } catch (e) { usersTbody.innerHTML = - 'Ошибка загрузки: ' + + 'Ошибка загрузки: ' + escapeHtml(e.message) + ''; } } function renderUsers(users) { if (!users || !users.length) { - usersTbody.innerHTML = 'Нет пользователей'; + usersTbody.innerHTML = 'Нет пользователей'; return; } @@ -211,6 +211,9 @@ export async function initUsers() { ${u.id} ${escapeHtml(u.username)} + ${escapeHtml(u.fullName || '-')} + ${escapeHtml(u.jobTitle || '-')} + ${u.departmentId || '-'} ${ROLE_LABELS[u.role] || escapeHtml(u.role)} @@ -378,14 +381,24 @@ export async function initUsers() { const username = document.getElementById('new-username').value.trim(); const password = document.getElementById('new-password').value; const role = document.getElementById('new-role').value; + const fullName = document.getElementById('new-fullname').value.trim(); + const jobTitle = document.getElementById('new-jobtitle').value.trim(); + const departmentId = document.getElementById('new-department').value; - if (!username || !password) { + if (!username || !password || !fullName || !jobTitle || !departmentId) { showAlert('create-alert', 'Заполните все поля', 'error'); return; } try { - const data = await api.post('/api/users', { username, password, role }); + const data = await api.post('/api/users', { + username, + password, + role, + fullName, + jobTitle, + departmentId: Number(departmentId) + }); showAlert('create-alert', `Пользователь "${escapeHtml(data.username)}" создан`, 'success'); createForm.reset(); loadUsers(); diff --git a/frontend/admin/views/users.html b/frontend/admin/views/users.html index 84e6815..3b63477 100755 --- a/frontend/admin/views/users.html +++ b/frontend/admin/views/users.html @@ -19,6 +19,18 @@ +
+ + +
+
+ + +
+
+ + +
@@ -33,13 +45,16 @@ ID Имя пользователя + ФИО + Должность + ID кафедры Роль - Действия + Действия - Загрузка... + Загрузка...