73 lines
3.8 KiB
Markdown
73 lines
3.8 KiB
Markdown
# School CRM - Система управления задачами для образовательных учреждений
|
||
|
||
## Описание проекта
|
||
|
||
School CRM - это веб-приложение для управления задачами и проектами в образовательных учреждениях. Система позволяет эффективно организовывать работу между администрацией, учителями и сотрудниками школы.
|
||
|
||
## Основные возможности
|
||
|
||
### 🔐 Многоуровневая аутентификация
|
||
- **Локальная авторизация** - встроенная система пользователей
|
||
- **LDAP-интеграция** - поддержка доменной аутентификации
|
||
- **Ролевая модель**:
|
||
- Администратор - полный доступ ко всем функциям
|
||
- Учитель - создание и управление своими задачами
|
||
|
||
### 📋 Управление задачами
|
||
- **Создание задач** с детальным описанием и сроками
|
||
- **Назначение исполнителей** - несколько пользователей на одну задачу
|
||
- **Индивидуальные сроки** для каждого исполнителя
|
||
- **Копирование задач** - быстрая репликация существующих шаблонов
|
||
- **Мягкое удаление** с возможностью восстановления
|
||
|
||
### 📊 Система статусов
|
||
- ⏳ Назначена
|
||
- 🔄 В работе
|
||
- ✅ Выполнена
|
||
- ❗ Просрочена (автоматическое определение)
|
||
|
||
### 📎 Работа с файлами
|
||
- **Загрузка документов** - до 15 файлов, максимум 300MB
|
||
- **Организованное хранение** - структура папок по задачам и пользователям
|
||
- **Безопасное скачивание** - проверка прав доступа
|
||
|
||
### 📝 Логирование и аналитика
|
||
- **Детальная история действий** - кто, что и когда сделал
|
||
- **Отслеживание изменений** статусов и назначений
|
||
- **Мониторинг загрузки файлов**
|
||
|
||
## Технологический стек
|
||
|
||
### Backend
|
||
- **Node.js** - серверная платформа
|
||
- **Express.js** - веб-фреймворк
|
||
- **SQLite** - база данных
|
||
- **Multer** - обработка загрузки файлов
|
||
- **Bcryptjs** - хэширование паролей
|
||
|
||
### Frontend
|
||
- **Чистый JavaScript** - без зависимостей от фреймворков
|
||
- **HTML5/CSS3** - адаптивный интерфейс
|
||
- **AJAX** - асинхронные запросы к API
|
||
|
||
### Безопасность
|
||
- **Сессии** - управление аутентификацией
|
||
- **Проверка прав доступа** - на всех уровнях
|
||
- **Валидация данных** - клиентская и серверная
|
||
|
||
## Установка и запуск
|
||
|
||
### Предварительные требования
|
||
- Node.js 14+
|
||
- npm или yarn
|
||
|
||
### Шаги установки
|
||
1. Клонировать репозиторий
|
||
2. Установить зависимости: `npm install`
|
||
3. Настроить переменные окружения в `.env`
|
||
4. Запустить сервер: `npm start`
|
||
5. Открыть в браузере: `http://localhost:3000`
|
||
|
||
### Конфигурация
|
||
Создайте файл `.env` со следующими параметрами:
|