5.7 KiB
5.7 KiB
Функциональность отчётов
Обзор
В приложение добавлена полная функциональность для работы с отчётами согласно техническому заданию. Система позволяет генерировать, просматривать и скачивать отчёты в форматах PDF и DOCX.
Структура файлов
Сервисы
src/service/ReportService.js- Основной сервис для работы с API отчётов
Компоненты
src/views/reports/ReportManager.vue- Главная страница управления отчётамиsrc/views/reports/ReportGenerator.vue- Страница создания нового отчётаsrc/views/reports/ReportHistory.vue- Страница истории отчётов
Конфигурация
src/config/api.js- Обновлён с эндпоинтами для отчётовsrc/router/index.js- Добавлены маршруты для страниц отчётовsrc/layout/AppMenu.vue- Добавлен раздел "Отчёты" в меню
Функциональность
1. Генерация отчётов
- Создание отчётов с настраиваемыми параметрами
- Поддержка форматов PDF и DOCX
- Валидация формы с отображением ошибок
- Автоматическое скачивание сгенерированного файла
2. История отчётов
- Просмотр всех созданных отчётов
- Пагинация и сортировка
- Фильтрация по формату, дате и тексту
- Статистика по отчётам
3. Скачивание отчётов
- Скачивание отчётов из истории
- Автоматическое определение имени файла
- Обработка ошибок при скачивании
API Endpoints
Генерация отчёта
POST /api/parser/report/generate
Параметры:
reportTitle(string) - Заголовок отчётаauthorName(string) - Имя автораcompanyName(string) - Название компанииstartDate(string) - Дата начала (ISO 8601)endDate(string) - Дата окончания (ISO 8601)format(string) - Формат файла (PDF/DOCX)
История отчётов
GET /api/parser/report/history?page=0&size=20&sort=createdAt,desc
Параметры:
page(int) - Номер страницыsize(int) - Размер страницыsort(string) - Поле и направление сортировки
Скачивание отчёта
GET /api/parser/report/history/{id}
Использование
1. Создание отчёта
- Перейдите в раздел "Отчёты" → "Создать отчёт"
- Заполните обязательные поля:
- Заголовок отчёта
- Автор
- Компания
- Период (дата начала и окончания)
- Формат файла
- Нажмите "Сгенерировать отчёт"
- Файл автоматически скачается
2. Просмотр истории
- Перейдите в раздел "Отчёты" → "История отчётов"
- Используйте фильтры для поиска нужных отчётов
- Сортируйте по любому столбцу
- Скачивайте отчёты кнопкой "Скачать"
3. Управление отчётами
- Перейдите в раздел "Отчёты" → "Управление отчётами"
- Здесь доступны все функции в одном интерфейсе
Технические детали
Валидация
- Все обязательные поля проверяются перед отправкой
- Проверка корректности дат (дата окончания должна быть позже даты начала)
- Отображение ошибок валидации под соответствующими полями
Обработка ошибок
- Обработка HTTP ошибок (400, 401, 403, 404, 500)
- Пользовательские сообщения об ошибках
- Логирование ошибок в консоль
UI/UX
- Использование PrimeVue компонентов
- Адаптивный дизайн
- Индикаторы загрузки
- Toast уведомления
- Подтверждающие диалоги
Зависимости
Функциональность использует существующие зависимости проекта:
- Vue 3
- PrimeVue 4
- Vue Router 4
Безопасность
- Все запросы требуют авторизации (Bearer token)
- Токен извлекается из localStorage
- Обработка ошибок авторизации
Расширения
Для будущих версий можно добавить:
- Удаление отчётов
- Редактирование отчётов
- Предварительный просмотр отчётов
- Шаблоны отчётов
- Планировщик генерации отчётов
- Уведомления о готовности отчётов