Система учета мебели и управления производством
Веб-приложение для учета заявок с REST API бэкенд и React фронтенд
Service Center Management System — это система для автоматизации работы сервисного центра по ремонту кондиционеров, вентиляции и другого климатического оборудования.
- 📝 Учет заявок: Полный цикл от создания до закрытия (Create, Assign, Complete).
- 👥 Ролевая модель: Админ, Менеджер, Мастер, Менеджер по качеству.
- 📊 Аналитика: Отчеты по выполненным работам, типам неисправностей и KPI мастеров.
- 🔔 Уведомления: Система оповещений о смене статусов и новых задачах.
Furniture Accounting System
│
├── Frontend (React + TypeScript)
│ ├── Фреймворк: React 18
│ ├── Язык: TypeScript
│ ├── Управление состоянием: React Query
│ ├── UI библиотека: Ant Design
│ ├── Валидация: Zod + React Hook Form
│ ├── Маршрутизация: React Router
│ ├── Стили: CSS Modules
│ └── Архитектура: Feature-Sliced Design
│
└── Backend (NestJS + Prisma)
├── Фреймворк: NestJS
├── Язык: TypeScript
├── ORM: Prisma
├── База данных: PostgreSQL
├── Валидация: class-validator
└── Документация: Swagger
Убедитесь, что у вас установлено:
| Инструмент | Версия | Проверка |
|---|---|---|
| Node.js | 18+ | node --version |
| npm | 9+ | npm --version |
| Git | Latest | git --version |
| Docker Desktop | Latest | docker --version |
git clone https://github.com/max4-dev/climate-service
cd climate-serviceСтруктура проекта:
climate-service/
├── backend/ # REST API (NestJS + Prisma)
├── frontend/ # Web UI (React + TypeScript)
└── README.md # Этот файл
Откройте первый терминал и выполните:
cd backend
# Установка зависимостей
npm install
# Запуск PostgreSQL в Docker (первый раз)
docker-compose up -d
# Генерация Prisma Client
npm run prisma:generate
# Применение миграций
npm run prisma:migrate
# Запуск сервера в режиме разработки
npm run start:dev✅ Сервер запущен на: http://localhost:3000
📚 Swagger документация: http://localhost:3000/api
Откройте второй терминал (не закрывайте первый!) и выполните:
cd frontend
# Установка зависимостей
npm install
# Запуск сервера разработки
npm run dev✅ Приложение доступно на: http://localhost:5173
После запуска обеих частей проверьте:
-
Фронтенд: Откройте
http://localhost:5173- Должен загрузиться интерфейс приложения
- Меню с разделами (Товары, Типы продукта, Материалы)
-
Бэкенд: Откройте
http://localhost:3000/api- Должна загрузиться Swagger документация
- Все API эндпоинты должны быть доступны
-
База данных: Проверьте контейнер
docker ps # Должен быть контейнер 'climate-service-api-postgres'
climate-service/
│
├── backend/ # REST API
│ ├── src/
│ │ ├── modules/ # Модули CRUD операций
│ │ ├── common/ # Общие конфиги и утилиты
│ │ └── main.ts # Точка входа
│ ├── prisma/
│ │ ├── schema.prisma # Схема БД
│ │ ├── migrations/ # Истории миграций
│ │ └── seed.ts # Тестовые данные
│ ├── docker-compose.yml # PostgreSQL контейнер
│ ├── .env # Переменные окружения
│ └── package.json
│
├── frontend/ # React приложение
│ ├── src/
│ │ ├── app/ # Корневая конфигурация
│ │ ├── pages/ # Страницы приложения
│ │ ├── entities/ # Бизнес-сущности
│ │ ├── features/ # Функциональные модули
│ │ ├── widgets/ # Сложные компоненты
│ │ ├── shared/ # Переиспользуемый код
│ │ └── main.tsx # Точка входа
│ ├── index.html
│ ├── vite.config.ts # Конфигурация Vite
│ └── package.json
│
└── README.md # Этот файл
cd backend
# Запуск в режиме разработки
npm run start:dev
# Запуск в режиме отладки
npm run start:debug
# Сборка приложения
npm run build
# Production запуск
npm run start:prod
# Линтинг кода
npm run lint
# Просмотр данных в Prisma Studio
npm run prisma:studiocd frontend
# Запуск сервера разработки
npm run dev
# Сборка приложения
npm run build
# Preview production сборки
npm run preview
# Линтинг кода
npm run lintcd backend
# Запустить PostgreSQL контейнер
docker-compose up -d
# Остановить контейнер
docker-compose down
# Просмотр логов БД
docker-compose logs -f postgres
# Перезапустить контейнер
docker-compose restart