Общая информация
Предложение по доработке веб-платформы ppkgp.ru включает:
- Перенос сайта на более экономичный хостинг
- Обновление дизайна главного экрана
- Расширение системы управления новостями (каналы НПА и НИР) с интеграцией внешнего парсера
- Разработка HR-портала с панелью администратора и личными кабинетами сотрудников
Работа разбита на 4 этапа, каждый из которых является самостоятельным и может быть запущен независимо.
Зависимости от третьих сторон
Часть функционала зависит от API, предоставляемого разработчиком парсера (далее — «внешний сервис парсера»). Для начала работ по этапу 2 необходимо получить:
- Документацию API парсера (НПА и НИР)
- Эндпоинты для отправки одобренных новостей на публикацию в Telegram
- Формат данных (структура новостей, теги, метаданные)
Исполнитель разрабатывает платформу (фронтенд + бэкенд) и готовит API для приёма данных от парсера. Разработка самих парсеров — вне скоупа данного предложения.
1
| Задача | Описание | Часы |
| Перенос хостинга | Миграция фронтенда и бэкенда на экономичный VPS, настройка Docker, SSL, DNS | 6–8 |
| Фикс карты СПб | Исправление отображения Санкт-Петербурга (Ленобласть перекрывает) | 2–3 |
| Редизайн главного экрана | Обновление дизайна Hero-секции | 6–8 |
| Блок НИР на сайте | Добавление блока научно-исследовательских новостей, аналогичного существующему блоку НПА | 6–8 |
| Исправление опечатки Sudact | Исправление написания в интерфейсе | 1 |
| Тестирование и деплой | Проверка работоспособности после миграции | 3–4 |
2
2.1. Общая инфраструктура
| Задача | Описание | Часы |
| API для приёма данных от парсера | Эндпоинты для загрузки новостей от внешнего сервиса парсера (НПА и НИР) | 6–8 |
| Интерфейс управления Telegram-ботом | Вынос настроек существующего бота на веб-панель (управление публикациями) | 6–8 |
Итого: 12–16 ч
2.2. Канал «НПА ППК Градпроект»
| Задача | Описание | Часы |
| Вкл/выкл обработки новостей | Тогл для включения/отключения обработки ленты НПА | 3–4 |
| Редактор настроек парсера | CRUD поисковых фраз для Sudact, управление тегами для фильтрации | 8–10 |
| Модерация новостей | Интерфейс отбора: одобрить / отклонить, выбор канала публикации (Telegram / сайт) | 10–16 |
Итого: 21–30 ч
2.3. Канал «НИР ППК Градпроект»
| Задача | Описание | Часы |
| Редактор настроек парсера | CRUD поисковых фраз по разделам, управление тегами | 6–8 |
| Модерация новостей | Интерфейс отбора: одобрить / отклонить, выбор канала публикации (Telegram / сайт) | 8–10 |
Итого: 14–18 ч
Компоненты модерации НИР реализуются с переиспользованием компонентов НПА.
3
3.1. Управление учётными записями сотрудников
| Задача | Описание | Часы |
| CRUD сотрудников | Добавить сотрудника (логин = email, пароль, ФИО), редактировать, исключить (удаление ЛК) | 10–14 |
| Ролевая модель | Разграничение прав: администратор / редактор / сотрудник | 6–8 |
Итого: 16–22 ч
3.2. Документы сотрудников
| Задача | Описание | Часы |
| Карточки сотрудников | Загрузка и хранение карточек с привязкой к учётной записи | 8–10 |
| Расчётные листы | Загрузка расчётных листов с привязкой к логину сотрудника, хранение на сервере | 6–8 |
Итого: 14–18 ч
Варианты хранения файлов (на выбор заказчика)
S3-совместимое хранилище
Масштабируемо, надёжно, CDN
Доп. расходы (~300–500 руб./мес)
Локальное хранилище + БД
Без доп. расходов, всё в одном месте
Ограничено диском VPS
Интеграция с Яндекс.Диском
Привычно для сотрудников
Зависимость от внешнего сервиса
3.3. Отпуска и коммуникация
| Задача | Описание | Часы |
| Агрегированный список отпусков | Сводная таблица отпусков всех сотрудников в формате диаграммы Ганта, скачивание (Excel/CSV) | 6–8 |
| Вопросы сотрудников | Просмотр входящих вопросов, ответ сотруднику, пересылка на почту администрации | 8–10 |
Итого: 14–18 ч
4
4.1. Профиль и информация
| Задача | Описание | Часы |
| Авторизация сотрудника | Вход для сотрудников (email + пароль), сессия, ролевой доступ | 6–8 |
| Профиль и карточка | Просмотр персональной информации и карточки сотрудника | 6–8 |
Итого: 12–16 ч
4.2. Управление отпусками
| Задача | Описание | Часы |
| Календарь отпусков | Визуальный календарь с отображением отпусков | 10–16 |
| Управление отпусками | Мои отпуска / добавить отпуск / редактировать | 8–10 |
Итого: 18–26 ч
4.3. Обратная связь и документы
| Задача | Описание | Часы |
| Обратная связь / вопросы | Форма для вопросов администрации с возможностью прикрепления файлов | 8–10 |
| Шаблоны заявлений | Перечень шаблонов заявлений для скачивания (кроме заявлений на оплачиваемый отпуск) | 6–8 |
| Тестирование ЛК | Сквозное тестирование всех сценариев | 4–6 |
Итого: 18–24 ч
Сводная стоимость
01
Доработка сайта и перенос хостинга
65 000 ₽
02
Система управления новостями (НПА + НИР)
95 000 ₽
03
Панель администратора (HR)
100 000 ₽
04
Личный кабинет сотрудника
115 000 ₽
Входит в стоимость
- Проектирование и разработка фронтенда (Next.js)
- Проектирование и разработка бэкенда (NestJS, Prisma, PostgreSQL)
- Подготовка API для интеграции с внешним сервисом парсера
- Настройка и деплой на хостинг
- Тестирование
Не входит в стоимость
- Разработка парсеров НПА и НИР (выполняется специалистом заказчика)
- Разработка Telegram-бота (уже существует; исполнитель выносит настройки на веб-панель)
- Стоимость аренды VPS (ориентир: 500–1 500 руб./мес)
- Стоимость хранилища файлов (при выборе S3-решения)
- Разработка макетов дизайна (при необходимости оценивается отдельно)
Условия
- Оплата — поэтапная, по факту сдачи каждого этапа.
- Сроки — уточняются при согласовании очерёдности этапов. Ориентировочный общий срок: 2–3.5 месяца.
- Зависимости — начало этапа 2 требует документации API парсера.
- Приёмка — каждый этап завершается демонстрацией и подписанием акта.
Порядок работ
01
Сайт + хостинг
1–2 нед.
02
Новости НПА + НИР
2–3 нед.
04
Личный кабинет
3–5 нед.
Этапы 3 и 4 могут выполняться параллельно с этапом 2 после согласования приоритетов.