Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Продуктовая постановка Цифрового проката

Open
#160 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
15/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Domain
full-stack

Research direction

No files, tests, or implementation entry points are named. Start by reviewing the proposed MVP requirements and validating the OAuth and membership-API dependencies, then clarify the scope into actionable implementation tasks. Done should mean an agreed, bounded plan for the rental workflow, administration, reservations, returns, and analytics.

Written by the indexing model from the issue text.

Description

epic :100:

Бизнес-цели и ценность для пользователей

Цели:

  • Упростить процесс аренды инвентаря в Профкоме Физфака МГУ.
  • Автоматизировать учёт выдачи, возврата и отказов.
  • Повысить прозрачность взаимодействия между студентами и профкомом, а также упростить управление инвентарём.

Ценность для пользователей:

  • Для студентов: Быстрая аренда через удобный интерфейс, минимизация времени на оформление, возможность видеть доступный инвентарь в реальном времени.
  • Для профкома: Снижение ручной работы, удобный учёт операций, возможность анализа данных для оптимизации работы.

Функциональные требования

Пользовательский интерфейс
  1. Авторизация:
    • Только члены профсоюза по сверке с базой ОПК МГУ
    • Через OAuth ЛК МГУ на базе auth-api
    • Разлогинивание раз в год из oauth ЛК МГУ для подтверждения статуса студента.
  2. Просмотр доступных предметов:
    • Список предметов с названием, фото, количеством в наличии и описанием.
    • Указание времени возврата (например, до 16:00).
  3. Бронирование:
    • Возможность бронировать несколько предметов одновременно.
    • Предметы одного типа бронируются только по одному экземпляру.
    • Заявка резервирует предметы на 5 минут; если пользователь не завершает процесс взятия, бронь автоматически снимается. При снятии брони по истечение 5 минут должен быть настраиваемый период, когда нельзя будет сделать новую бронь — 5 или 10 минут. Либо просто уменьшать максимальное время брони с 5 минут до 3, потом до 1 минуты, чтобы человек не мог блокировать доступность устройтсв
  4. Возврат предметов:
    • Кнопка "Вернуть предмет" в интерфейсе пользователя.
    • Каждый взятый предмет — это отдельная сессия.
    • После подтверждения запроса администратором сессия закрывается.
  5. Дисклеймеры:
    • Предмет может быть в наличии, но иметь дефекты (например, разряженный повербанк).
  6. Обновление данных о доступности:
    • Данные о наличии предметов подтягиваются в реальном времени при каждом заходе пользователя на страницу проката.
    • Если пользователь пытается взять предмет, который уже забрали, система выдаёт сообщение об ошибке — "К сожалению предмет уже забрали".
Административный интерфейс
  1. Авторизация администраторов:
    • Разграничение ролей:
      • Базовые администраторы (все члены структуры Профкома): выдача/приём предметов.
      • Высокоуровневые администраторы: управление инвентарём (добавление предметов, редактирование их количества), настройка лимитов.
  2. Управление заявками:
    • Все предметы из одной заявки отображаются как отдельные сессии аренды.
    • Администратор может отдельно подтверждать или завершать аренду каждого предмета.
  3. Журнал операций:
    • История всех действий (выдача, возврат, отказы).
    • Фиксация отказов с возможностью оставлять "страйки" пользователям и видеть кол-во страйков на профиле пользователя в момент Бронирования
  4. Управление инвентарём:
    • Добавление новых позиций (название, фото, описание).
    • Редактирование количества доступных предметов (учёт поломок или утерь).
  5. Фильтры и сортировка:
    • Сортировка по фамилии студента (по умолчанию), по дате взятия, возврата.
    • Фильтрация по типу предмета или статусу заявки (ожидает подтверждения, в процессе, сдан, отказано).
Аналитика
  1. Сбор данных:
    • вся инфа о каждой сессии с таймкодами, предметами
    • user_id студента.
    • Время взятия/возврата предмета.
    • Количество просрочек сдачи.
    • Популярные предметы (ранжировка по частоте использования).
    • Таймстемпы времени брони и времени взятия, чтобы контролить использование броней и их абьюз
  2. Дашборд для высокоуровневых администраторов:
    • Среднее время аренды.
    • Ошибки сервиса (например, сбои в работе системы).
    • Пиковые часы использования.
    • можно дополнять...

Технические ограничения

  1. Авторизация возможна только через OAuth ЛК МГУ.
  2. Уведомления внутри приложения невозможны; коммуникация в будущем через Telegram (пингование).
  3. Админский интерфейс должен быть адаптирован для десктопа на комп в профкоме.
  4. Для MVP все предметы идентичны (без сложных характеристик вроде заряда батареи).

Риски и зависимости

  1. Злоупотребление системой бронирования пользователями (например, создание множества броней без намерения взять предмет).
  2. Невозврат предмета проката (особенно в формате работы без студака)
  3. Доступ к API ЛК МГУ для авторизации студентов и к API ОПК МГУ для подтверждения членства в профсоюзе.
  4. Наличие стабильного a
    Wi-Fi на ФФ и в кабинете Профкома.
Dominant language
No language data
Stars
9
Forks
1
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from profcomff/.github

All issues in profcomff/.github

Similar issues

More Web Dev issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.