Add files via upload
v0.1(front)
This commit is contained in:
327
README.md
Normal file
327
README.md
Normal file
@ -0,0 +1,327 @@
|
||||
# Система управления складом "Склад-Менеджер"
|
||||
|
||||
Современная веб-система для управления товарными запасами и операциями склада с разными уровнями доступа.
|
||||
|
||||
## 🚀 Возможности системы
|
||||
|
||||
### Основной функционал
|
||||
- **Управление товарами**: добавление, редактирование, удаление товаров
|
||||
- **Операции склада**: приход и расход товаров
|
||||
- **Каталог товаров**: удобный просмотр с фильтрами и поиском
|
||||
- **История операций**: полный учет всех операций со складом
|
||||
- **Поиск**: быстрый поиск товаров и операций
|
||||
- **Отчеты**: генерация различных отчетов
|
||||
- **Экспорт данных**: выгрузка в CSV и JSON форматах
|
||||
|
||||
### Система безопасности
|
||||
- **Многоуровневая авторизация** с разными ролями
|
||||
- **Контроль доступа** к функциям системы
|
||||
- **Безопасные сессии** пользователей
|
||||
- **Валидация данных** на всех уровнях
|
||||
|
||||
### Уровни доступа
|
||||
|
||||
#### 🔧 Администратор (admin/admin123)
|
||||
- Полный доступ ко всем функциям
|
||||
- Управление пользователями
|
||||
- Настройка системы
|
||||
- Просмотр всех отчетов
|
||||
|
||||
#### 👔 Менеджер (manager/manager123)
|
||||
- Чтение и запись данных
|
||||
- Управление товарами
|
||||
- Оформление операций
|
||||
- Просмотр отчетов
|
||||
|
||||
#### 👷 Оператор (operator/operator123)
|
||||
- Только чтение данных
|
||||
- Просмотр каталога и истории
|
||||
- Ограниченный доступ к функциям
|
||||
|
||||
#### 👁️ Наблюдатель (viewer/viewer123)
|
||||
- Ограниченный просмотр
|
||||
- Только чтение данных
|
||||
- Минимальный доступ
|
||||
|
||||
## 📁 Структура проекта
|
||||
|
||||
```
|
||||
warehouse-system/
|
||||
├── index.html # Главная страница
|
||||
├── login.html # Страница авторизации
|
||||
├── catalog.html # Каталог товаров
|
||||
├── history.html # История операций
|
||||
├── search.html # Поиск
|
||||
├── profile.html # Профиль пользователя
|
||||
├── css/
|
||||
│ └── style.css # Основные стили
|
||||
├── js/
|
||||
│ ├── auth.js # Система авторизации
|
||||
│ ├── main.js # Основная логика
|
||||
│ ├── warehouse.js # Управление складом
|
||||
│ ├── catalog.js # Каталог товаров
|
||||
│ ├── history.js # История операций
|
||||
│ ├── search.js # Поиск
|
||||
│ └── profile.js # Профиль пользователя
|
||||
└── README.md # Документация
|
||||
```
|
||||
|
||||
## 🛠️ Технологии
|
||||
|
||||
- **HTML5** - семантическая разметка
|
||||
- **CSS3** - современные стили с CSS переменными
|
||||
- **Bootstrap 5** - адаптивный дизайн
|
||||
- **JavaScript (ES6+)** - интерактивность
|
||||
- **jQuery** - упрощение работы с DOM
|
||||
- **Font Awesome** - иконки
|
||||
- **LocalStorage** - локальное хранение данных
|
||||
|
||||
## 🚀 Быстрый старт
|
||||
|
||||
### 1. Установка
|
||||
1. Скачайте или клонируйте проект
|
||||
2. Откройте `index.html` в браузере
|
||||
3. Или запустите локальный сервер:
|
||||
```bash
|
||||
# Python 3
|
||||
python -m http.server 8000
|
||||
|
||||
# Node.js
|
||||
npx http-server
|
||||
|
||||
# PHP
|
||||
php -S localhost:8000
|
||||
```
|
||||
|
||||
### 2. Первый вход
|
||||
1. Откройте `login.html`
|
||||
2. Используйте тестовые учетные записи:
|
||||
- **Администратор**: `admin` / `admin123`
|
||||
- **Менеджер**: `manager` / `manager123`
|
||||
- **Оператор**: `operator` / `operator123`
|
||||
- **Наблюдатель**: `viewer` / `viewer123`
|
||||
|
||||
### 3. Начальная настройка
|
||||
1. Войдите как администратор
|
||||
2. Добавьте первые товары через главную страницу
|
||||
3. Настройте категории товаров
|
||||
4. Создайте пользователей с нужными правами
|
||||
|
||||
## 📖 Руководство пользователя
|
||||
|
||||
### Главная страница
|
||||
- **Быстрые действия**: добавление товаров, приход/расход
|
||||
- **Статистика**: общая информация о складе
|
||||
- **Последние операции**: мониторинг активности
|
||||
|
||||
### Каталог товаров
|
||||
- **Просмотр**: все товары с фильтрами
|
||||
- **Поиск**: по названию, описанию, штрих-коду
|
||||
- **Фильтры**: по категории, цене, наличию
|
||||
- **Редактирование**: изменение информации о товарах
|
||||
|
||||
### История операций
|
||||
- **Просмотр**: все операции с детализацией
|
||||
- **Фильтры**: по типу, дате, товару, сотруднику
|
||||
- **Отчеты**: генерация различных отчетов
|
||||
- **Экспорт**: выгрузка данных
|
||||
|
||||
### Поиск
|
||||
- **Универсальный поиск**: товары и операции
|
||||
- **Расширенные фильтры**: точная настройка
|
||||
- **Результаты**: с подсветкой найденного
|
||||
- **Экспорт результатов**: сохранение найденного
|
||||
|
||||
### Профиль пользователя
|
||||
- **Информация**: личные данные и права
|
||||
- **Статистика**: активность пользователя
|
||||
- **Настройки**: персонализация интерфейса
|
||||
- **Безопасность**: смена пароля
|
||||
|
||||
## 🔧 Администрирование
|
||||
|
||||
### Управление пользователями
|
||||
1. Войдите как администратор
|
||||
2. Перейдите в раздел "Администрирование"
|
||||
3. Выберите "Управление пользователями"
|
||||
4. Создавайте, редактируйте, удаляйте пользователей
|
||||
|
||||
### Настройка категорий
|
||||
1. Откройте "Категории товаров"
|
||||
2. Добавьте нужные категории
|
||||
3. Настройте иконки и описания
|
||||
|
||||
### Генерация отчетов
|
||||
1. Выберите тип отчета
|
||||
2. Укажите период
|
||||
3. Настройте параметры
|
||||
4. Экспортируйте в нужном формате
|
||||
|
||||
## 📊 Структура данных
|
||||
|
||||
### Товар
|
||||
```javascript
|
||||
{
|
||||
id: 1,
|
||||
name: "Название товара",
|
||||
category: "electronics",
|
||||
price: 1000,
|
||||
quantity: 50,
|
||||
description: "Описание товара",
|
||||
barcode: "1234567890123",
|
||||
minQuantity: 10,
|
||||
location: "Стеллаж A-1",
|
||||
supplier: "Поставщик",
|
||||
createdAt: "2024-01-15T10:00:00Z",
|
||||
updatedAt: "2024-01-15T10:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
### Операция
|
||||
```javascript
|
||||
{
|
||||
id: 1,
|
||||
type: "incoming", // или "outgoing"
|
||||
itemId: 1,
|
||||
itemName: "Название товара",
|
||||
quantity: 10,
|
||||
employeeId: 1,
|
||||
employeeName: "Имя сотрудника",
|
||||
date: "2024-01-15T10:00:00Z",
|
||||
status: "completed",
|
||||
supplier: "Поставщик",
|
||||
recipient: "Получатель",
|
||||
notes: "Примечания"
|
||||
}
|
||||
```
|
||||
|
||||
### Пользователь
|
||||
```javascript
|
||||
{
|
||||
id: 1,
|
||||
username: "admin",
|
||||
name: "Администратор",
|
||||
email: "admin@company.com",
|
||||
roles: ["admin"],
|
||||
permissions: ["read", "write", "delete", "admin"],
|
||||
department: "IT",
|
||||
position: "Системный администратор"
|
||||
}
|
||||
```
|
||||
|
||||
## 🎨 Кастомизация
|
||||
|
||||
### Изменение цветовой схемы
|
||||
Отредактируйте CSS переменные в `css/style.css`:
|
||||
```css
|
||||
:root {
|
||||
--primary-color: #0d6efd;
|
||||
--secondary-color: #6c757d;
|
||||
--success-color: #198754;
|
||||
--warning-color: #ffc107;
|
||||
--danger-color: #dc3545;
|
||||
--info-color: #0dcaf0;
|
||||
}
|
||||
```
|
||||
|
||||
### Добавление новых категорий
|
||||
В файле `js/warehouse.js` найдите функцию `loadCategories()` и добавьте новые категории:
|
||||
```javascript
|
||||
{
|
||||
id: 'new-category',
|
||||
name: 'Новая категория',
|
||||
icon: 'fas fa-icon-name'
|
||||
}
|
||||
```
|
||||
|
||||
### Настройка прав доступа
|
||||
В файле `js/auth.js` измените массив пользователей или добавьте новые роли и разрешения.
|
||||
|
||||
## 🔒 Безопасность
|
||||
|
||||
### Рекомендации по безопасности
|
||||
1. **Измените пароли по умолчанию** при первом входе
|
||||
2. **Используйте HTTPS** в продакшене
|
||||
3. **Регулярно обновляйте** права доступа
|
||||
4. **Ведите логи** всех операций
|
||||
5. **Делайте резервные копии** данных
|
||||
|
||||
### Настройка HTTPS
|
||||
Для продакшена обязательно используйте SSL-сертификат:
|
||||
```bash
|
||||
# Пример с Let's Encrypt
|
||||
sudo certbot --nginx -d your-domain.com
|
||||
```
|
||||
|
||||
## 📈 Производительность
|
||||
|
||||
### Оптимизация
|
||||
- Используйте современный браузер
|
||||
- Включите кэширование
|
||||
- Минимизируйте количество одновременных операций
|
||||
- Регулярно очищайте старые данные
|
||||
|
||||
### Масштабирование
|
||||
- Для больших объемов данных используйте базу данных
|
||||
- Добавьте серверную часть (PHP, Node.js, Python)
|
||||
- Используйте CDN для статических файлов
|
||||
- Настройте кэширование на сервере
|
||||
|
||||
## 🐛 Устранение неполадок
|
||||
|
||||
### Частые проблемы
|
||||
|
||||
#### Не работает авторизация
|
||||
- Проверьте правильность логина/пароля
|
||||
- Очистите кэш браузера
|
||||
- Проверьте консоль на ошибки JavaScript
|
||||
|
||||
#### Не сохраняются данные
|
||||
- Проверьте доступ к LocalStorage
|
||||
- Убедитесь, что JavaScript включен
|
||||
- Проверьте права доступа пользователя
|
||||
|
||||
#### Медленная работа
|
||||
- Закройте лишние вкладки
|
||||
- Очистите кэш браузера
|
||||
- Проверьте количество товаров/операций
|
||||
|
||||
### Логи и отладка
|
||||
Откройте консоль разработчика (F12) для просмотра ошибок и логов.
|
||||
|
||||
## 🤝 Поддержка
|
||||
|
||||
### Сообщение об ошибках
|
||||
При обнаружении ошибок:
|
||||
1. Опишите проблему подробно
|
||||
2. Укажите версию браузера
|
||||
3. Приложите скриншот ошибки
|
||||
4. Опишите шаги для воспроизведения
|
||||
|
||||
### Запросы функций
|
||||
Для добавления новых функций:
|
||||
1. Опишите требуемую функциональность
|
||||
2. Укажите приоритет
|
||||
3. Приведите примеры использования
|
||||
|
||||
## 📄 Лицензия
|
||||
|
||||
Этот проект распространяется под лицензией MIT. См. файл LICENSE для подробностей.
|
||||
|
||||
## 👥 Авторы
|
||||
|
||||
- Разработка: [Ваше имя]
|
||||
- Дизайн: [Имя дизайнера]
|
||||
- Тестирование: [Имя тестировщика]
|
||||
|
||||
## 📞 Контакты
|
||||
|
||||
- Email: support@warehouse-system.com
|
||||
- Телефон: +7 (XXX) XXX-XX-XX
|
||||
- Веб-сайт: https://warehouse-system.com
|
||||
|
||||
---
|
||||
|
||||
**Версия**: 1.0.0
|
||||
**Дата**: Январь 2024
|
||||
**Последнее обновление**: 15.01.2024
|
||||
Reference in New Issue
Block a user