тип задачи
This commit is contained in:
@@ -43,8 +43,9 @@
|
||||
</div>
|
||||
<nav>
|
||||
<button onclick="window.location.href = '/'" class="nav-btn tasks"><i class="fas fa-cog"></i> Главная</button>
|
||||
<button onclick="showSection('tasks')" class="nav-btn tasks"><i class="fas fa-list"></i> Задачи</button>
|
||||
<button onclick="showSection('tasks')" class="nav-btn tasks"><i class="fas fa-list"></i> Все задачи</button>
|
||||
<button onclick="showSection('create-task')" class="nav-btn create"><i class="fas fa-plus-circle"></i> Создать задачу</button>
|
||||
<button onclick="showSection('tasks')" class="nav-btn tasks"><i class="fas fa-list"></i> Мои задачи</button>
|
||||
<button onclick="showKanbanSection()" class="nav-btn kanban"><i class="fas fa-columns"></i> Канбан</button>
|
||||
<!--
|
||||
<button onclick="window.location.href = '/doc?action=create'" class="nav-btn create"><i class="fa-solid fa-file"></i> Согласование документов</button>
|
||||
|
||||
@@ -21,7 +21,7 @@ function setupEventListeners() {
|
||||
document.getElementById('edit-assignment-form').addEventListener('submit', updateAssignment);
|
||||
document.getElementById('rework-task-form').addEventListener('submit', sendForRework);
|
||||
|
||||
// Файлы
|
||||
// Файлыcreate-task
|
||||
document.getElementById('files').addEventListener('change', updateFileList);
|
||||
document.getElementById('edit-files').addEventListener('change', updateEditFileList);
|
||||
|
||||
@@ -46,6 +46,7 @@ async function createTask(event) {
|
||||
|
||||
const title = document.getElementById('title').value;
|
||||
const description = document.getElementById('description').value;
|
||||
const taskType = document.getElementById('task-type').value; // Добавлено из tasks.js
|
||||
|
||||
// Получаем полную дату и время из отдельных полей
|
||||
const fullDateTime = getFullDateTime('due-date', 'due-time');
|
||||
@@ -63,6 +64,7 @@ async function createTask(event) {
|
||||
const formData = new FormData();
|
||||
formData.append('title', title);
|
||||
formData.append('description', description);
|
||||
formData.append('taskType', taskType); // Добавлено
|
||||
formData.append('dueDate', fullDateTime);
|
||||
|
||||
selectedUsers.forEach(userId => {
|
||||
@@ -83,7 +85,7 @@ async function createTask(event) {
|
||||
if (response.ok) {
|
||||
alert('Задача успешно создана!');
|
||||
|
||||
// Сброс формы
|
||||
// Сброс формы (из main.js)
|
||||
document.getElementById('create-task-form').reset();
|
||||
document.getElementById('file-list').innerHTML = '';
|
||||
document.getElementById('user-search').value = '';
|
||||
|
||||
@@ -90,68 +90,7 @@ async function loadTasksWithoutDate() {
|
||||
}
|
||||
}
|
||||
|
||||
async function createTask(event) {
|
||||
event.preventDefault();
|
||||
|
||||
if (!currentUser) {
|
||||
alert('Требуется аутентификация');
|
||||
return;
|
||||
}
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('title', document.getElementById('title').value);
|
||||
formData.append('description', document.getElementById('description').value);
|
||||
|
||||
// Добавляем тип задачи
|
||||
const taskType = document.getElementById('task-type').value;
|
||||
formData.append('taskType', taskType);
|
||||
|
||||
const dueDate = document.getElementById('due-date').value;
|
||||
if (!dueDate) {
|
||||
alert('Дата и время выполнения обязательны');
|
||||
return;
|
||||
}
|
||||
formData.append('dueDate', dueDate);
|
||||
|
||||
// Используем selectedUsers вместо прямого доступа к DOM
|
||||
if (selectedUsers.length === 0) {
|
||||
alert('Выберите хотя бы одного исполнителя');
|
||||
return;
|
||||
}
|
||||
selectedUsers.forEach(userId => {
|
||||
formData.append('assignedUsers', userId);
|
||||
});
|
||||
|
||||
const files = document.getElementById('files').files;
|
||||
for (let i = 0; i < files.length; i++) {
|
||||
formData.append('files', files[i]);
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await fetch('/api/tasks', {
|
||||
method: 'POST',
|
||||
body: formData
|
||||
});
|
||||
|
||||
if (response.ok) {
|
||||
alert('Задача успешно создана!');
|
||||
document.getElementById('create-task-form').reset();
|
||||
document.getElementById('file-list').innerHTML = '';
|
||||
document.getElementById('user-search').value = '';
|
||||
selectedUsers = [];
|
||||
renderUsersChecklist();
|
||||
loadTasks();
|
||||
loadActivityLogs();
|
||||
showSection('tasks');
|
||||
} else {
|
||||
const error = await response.json();
|
||||
alert(error.error || 'Ошибка создания задачи');
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Ошибка:', error);
|
||||
alert('Ошибка создания задачи');
|
||||
}
|
||||
}
|
||||
// удален async function createTask(event)
|
||||
|
||||
async function openEditModal(taskId) {
|
||||
try {
|
||||
|
||||
@@ -53,8 +53,10 @@ function renderTasks() {
|
||||
<div class="task-header">
|
||||
<div class="task-title" onclick="toggleTask(${task.id})" style="cursor: pointer; display: flex; justify-content: space-between; align-items: center;">
|
||||
<div style="flex: 1;">
|
||||
<!--
|
||||
${task.task_type ? `<span class="task-type-badge ${task.task_type}">${getTaskTypeDisplayName(task.task_type)}</span>` : ''}
|
||||
-->
|
||||
<span class="task-number">Задача №${task.id}</span>
|
||||
|
||||
<strong>${task.title}</strong>
|
||||
${isDeleted ? '<span class="deleted-badge">Удалена</span>' : ''}
|
||||
${isClosed ? '<span class="closed-badge">Закрыта</span>' : ''}
|
||||
|
||||
Reference in New Issue
Block a user