1
0
mirror of https://gitlab.com/MoonTestUse1/AdministrationItDepartmens.git synced 2025-08-14 00:25:46 +02:00

Починка добавления сотрудникаv2

This commit is contained in:
MoonTestUse1
2025-01-02 05:33:05 +06:00
parent 9dab06d2b9
commit 7473298ba1
3 changed files with 31 additions and 14 deletions

View File

@@ -29,6 +29,18 @@ const router = createRouter({
name: 'admin-dashboard',
component: () => import('@/views/AdminDashboardView.vue'),
meta: { requiresAdmin: true }
},
{
path: '/admin/employees',
name: 'admin-employees',
component: () => import('@/views/admin/EmployeesView.vue'),
meta: { requiresAdmin: true }
},
{
path: '/admin/employees/add',
name: 'admin-employees-add',
component: () => import('@/views/admin/AddEmployeeView.vue'),
meta: { requiresAdmin: true }
}
]
});

View File

@@ -465,17 +465,8 @@ const openRequestDetails = (request: Request) => {
}
const openAddEmployeeModal = () => {
isEditingEmployee.value = false
employeeForm.value = {
id: null,
first_name: '',
last_name: '',
department: '',
office: '',
password: ''
}
showEmployeeModal.value = true
}
router.push('/admin/employees/add');
};
const openEditEmployeeModal = (employee: Employee) => {
isEditingEmployee.value = true

View File

@@ -114,6 +114,13 @@ const handleSubmit = async () => {
try {
isSubmitting.value = true;
const token = localStorage.getItem('admin_token');
if (!token) {
throw new Error('Не найден токен авторизации');
}
console.log('Отправляем данные:', form.value);
const response = await fetch('/api/employees/', {
method: 'POST',
headers: {
@@ -123,14 +130,21 @@ const handleSubmit = async () => {
body: JSON.stringify(form.value)
});
console.log('Статус ответа:', response.status);
if (!response.ok) {
throw new Error('Ошибка при создании сотрудника');
const errorData = await response.json();
console.error('Ошибка от сервера:', errorData);
throw new Error(errorData.detail || 'Ошибка при создании сотрудника');
}
router.push('/admin/employees');
const data = await response.json();
console.log('Успешный ответ:', data);
router.push('/admin/dashboard');
} catch (error) {
console.error('Error creating employee:', error);
alert('Произошла ошибка при создании сотрудника');
alert(error instanceof Error ? error.message : 'Произошла ошибка при создании сотрудника');
} finally {
isSubmitting.value = false;
}