- Добавлены модальные окна для всех действий на странице деталей
* Добавление позиции (#addItemModal)
* Одобрение заявки (#approveModal)
* Отклонение заявки (#rejectModal)
- Реализованы JavaScript обработчики для всех кнопок
* deleteItem() - удаление позиции
* saveItemBtn - сохранение новой позиции
* confirmApproveBtn - одобрение с комментарием
* confirmRejectBtn - отклонение с обязательным комментарием
- Исправлены API endpoints (items вместо request-items)
- Доработана форма создания/редактирования заявки
* Удалены несуществующие поля (desired_date, estimated_cost)
* Добавлен выбор отдела из API
* Реализована AJAX отправка формы
* Поддержка создания черновика и отправки на согласование
* Поддержка редактирования существующих заявок (PATCH)
- Добавлен URL и view для редактирования заявок
- Кнопка "Редактировать" теперь ведёт на страницу редактирования
- Обновлены иконки статусов в dashboard.html и request_list.html
- Все статусы теперь используют одинаковые иконки и стили
- Добавлены функции getStatusBadgeHTML() для динамического рендеринга
- Исправлена синтаксическая ошибка в loadRequests()
- Статусы: draft, pending, approved, rejected, in_progress, completed, cancelled
Добавлены endpoints:
- start_work: APPROVED → IN_PROGRESS
- complete: IN_PROGRESS → COMPLETED
- cancel: отмена заявки с любого статуса кроме завершённых
- create_equipment: создание оборудования из позиции завершённой заявки
Frontend:
- Модальные окна approve/reject/cancel
- POST handler для создания заявок
- Django формы для заявок
Тесты: 19 новых тестов lifecycle, всего 136 тестов procurement passed