Final version

This commit is contained in:
cyrteL
2025-08-22 19:26:43 +03:00
committed by GitHub
parent b4c1a2caa9
commit 558cd96cdf
31 changed files with 6181 additions and 1632 deletions

123
README.md
View File

@ -64,7 +64,8 @@ warehouse-system/
├── search.html # Поиск
├── profile.html # Профиль пользователя
├── admin/
── categories.html # Управление категориями
── categories.html # Управление категориями
│ └── users.html # Управление пользователями
├── css/
│ └── style.css # Основные стили
├── js/
@ -75,23 +76,14 @@ warehouse-system/
│ ├── history.js # История операций
│ ├── search.js # Поиск
│ ├── profile.js # Профиль пользователя
── categories.js # Управление категориями
── categories.js # Управление категориями
│ └── users.js # Управление пользователями
└── README.md # Документация
```
## 🛠️ Технологии
## 🚀 Старт
- **HTML5** - семантическая разметка
- **CSS3** - современные стили с CSS переменными
- **Bootstrap 5** - адаптивный дизайн
- **JavaScript (ES6+)** - интерактивность
- **jQuery** - упрощение работы с DOM
- **Font Awesome** - иконки
- **LocalStorage** - локальное хранение данных
## 🚀 Быстрый старт
### 1. Первый вход
### Для разработки/демо
1. Откройте `login.html`
2. Используйте тестовые учетные записи:
- **Администратор**: `admin` / `admin123`
@ -99,6 +91,18 @@ warehouse-system/
- **Оператор**: `operator` / `operator123`
- **Наблюдатель**: `viewer` / `viewer123`
### Настройка Email-уведомлений
1. Скопируйте `server/env.email.example` в `server/.env`
2. Настройте параметры SMTP-сервера:
- Для Gmail: используйте App Password
- Для Yandex/Mail.ru: используйте обычный пароль
3. Перезапустите сервер
4. Протестируйте отправку в разделе "Тест Email" (только для администраторов)
### Для продакшна
Система полностью готова к развертыванию в продакшн! См. подробные инструкции:
- 📋 **[DEPLOYMENT.md](DEPLOYMENT.md)** - пошаговое руководство по развертыванию
### 2. Начальная настройка
1. Войдите как администратор
2. Создайте категории позиций через "Администрирование" → "Категории позиций"
@ -157,27 +161,32 @@ warehouse-system/
- **Настройка иконок**: выбор иконок Font Awesome для категорий
- **Цветовая схема**: настройка цветов категорий
- **Активность категорий**: включение/отключение категорий
- **Управление пользователями**: полный CRUD для пользователей системы
- **Назначение ролей**: гибкая система ролей и разрешений
- **Статус пользователей**: активация/деактивация учетных записей
- **Отчеты**: фильтры по периоду, категории, сотруднику; экспорт CSV/JSON
## 🔧 Администрирование
## 📊 Отчеты
### Управление пользователями
1. Войдите как администратор
2. Перейдите в раздел "Администрирование"
3. Выберите "Управление пользователями"
4. Создавайте, редактируйте, удаляйте пользователей
### Доступ
Откройте "Администрирование" → "Отчеты" (`admin/reports.html`). Доступен пользователям с правами `admin` или `manager` (чтение).
### Настройка категорий
1. Откройте "Администрирование" → "Категории позиций"
2. Добавьте нужные категории с иконками и цветами
3. Настройте описания и активность
4. Категории автоматически появятся в hover-меню
5. Изменения применяются мгновенно на всех страницах
### Фильтры
- Период: дата от/до
- Тип операции: приход/расход/все
- Категория: выбор категории
- Товар: название/штрихкод
- Сотрудник: логин или ФИО
### Генерация отчетов
1. Выберите тип отчета
2. Укажите период
3. Настройте параметры
4. Экспортируйте в нужном формате
### Разделы
- Сводка: суммарный приход, расход, количество операций, уникальные товары
- Операции: таблица операций с деталями
- Остатки по категориям: количество позиций и суммарный остаток
- ТОП товаров по движению: лидеры по приходу/расходу
### Экспорт
- CSV: экспорт таблицы операций
- JSON: экспорт всей структуры отчета (сводка, таблицы)
## 📊 Структура данных
@ -304,11 +313,20 @@ warehouse-system/
- **Валидация данных**: проверка всех входных данных
- **Информативные подсказки**: кнопки показывают требуемые права
### Production-готовность
-**Удалены отладочные логи** из фронтенда
-**Созданы production конфигурации** (.env файлы)
-**Настроена безопасность** (JWT, CORS, rate limiting)
-**Готовы инструкции** по развертыванию
### Рекомендации по безопасности
1. **Измените пароли по умолчанию** при первом входе
2. **Регулярно обновляйте** права доступа
3. **Ведите логи** всех операций
4. **Делайте резервные копии** данных
2. **Настройте JWT_SECRET** в production окружении
3. **Включите HTTPS** с SSL сертификатом
4. **Настройте файрвол** и rate limiting
5. **Регулярно обновляйте** права доступа
6. **Ведите логи** всех операций
7. **Делайте резервные копии** данных
## 📈 Производительность
@ -318,6 +336,13 @@ warehouse-system/
- Минимизируйте количество одновременных операций
- Регулярно очищайте старые данные
### Production-оптимизация
-**Удалены отладочные логи** - улучшена производительность
-**Оптимизирован код** - убраны лишние console.log
-**Готовы production скрипты** - npm run start:prod
-**Настроено кэширование** - статические файлы
-**Оптимизированы запросы** - эффективная фильтрация
### Технические улучшения
- **Безопасная обработка данных**: проверка на null/undefined
- **Валидация форм**: клиентская проверка ввода
@ -329,18 +354,6 @@ warehouse-system/
- **Кэширование данных**: оптимизация производительности
- **Hover-функциональность**: плавные анимации и переходы
## 🔄 Последние обновления
### Версия 1.3.0 (Август 2025)
-**Система управления правами доступа**: автоматическое скрытие элементов согласно ролям
-**Hover-навигация**: выпадающее меню категорий при наведении мыши
-**Удаление данных по умолчанию**: чистая система для самостоятельного заполнения
-**Улучшенная безопасность**: проверка прав доступа для всех операций
-**Централизованное управление правами**: единая система в auth.js
-**Информативные подсказки**: кнопки показывают требуемые права
-**Плавные анимации**: hover-эффекты и переходы
-**Умное поведение меню**: предотвращение закрытия при наведении
## 🐛 Устранение неполадок
### Частые проблемы
@ -386,6 +399,9 @@ warehouse-system/
## 🤝 Поддержка
### Документация
- 📋 **[DEPLOYMENT.md](DEPLOYMENT.md)** - подробные инструкции по развертыванию
### Сообщение об ошибках
При обнаружении ошибок:
1. Опишите проблему подробно
@ -401,16 +417,11 @@ warehouse-system/
## 👥 Авторы
- Разработка: Roman Pylaev
- Дизайн: Roman Pylaev
- Тестирование: Roman Pylaev
- **Разработка**: Roman Pylaev
- **Дизайн**: Roman Pylaev
- **Тестирование**: Roman Pylaev
- **Production-готовность**: Roman Pylaev
## 📞 Контакты
- Telegram/Discord: @dark7es
---
**Версия**: 1.3.0
**Дата**: Август 2025
**Последнее обновление**: 15.08.2025
- **Telegram/Discord**: @dark7es