Продуктовая постановка Цифрового проката
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 15/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 領域
- full-stack
調査の方向性
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.
索引モデルが issue の本文から書いたものです。
説明
Бизнес-цели и ценность для пользователей
Цели:
- Упростить процесс аренды инвентаря в Профкоме Физфака МГУ.
- Автоматизировать учёт выдачи, возврата и отказов.
- Повысить прозрачность взаимодействия между студентами и профкомом, а также упростить управление инвентарём.
Ценность для пользователей:
- Для студентов: Быстрая аренда через удобный интерфейс, минимизация времени на оформление, возможность видеть доступный инвентарь в реальном времени.
- Для профкома: Снижение ручной работы, удобный учёт операций, возможность анализа данных для оптимизации работы.
Функциональные требования
Пользовательский интерфейс
- Авторизация:
- Только члены профсоюза по сверке с базой ОПК МГУ
- Через OAuth ЛК МГУ на базе auth-api
- Разлогинивание раз в год из oauth ЛК МГУ для подтверждения статуса студента.
- Просмотр доступных предметов:
- Список предметов с названием, фото, количеством в наличии и описанием.
- Указание времени возврата (например, до 16:00).
- Бронирование:
- Возможность бронировать несколько предметов одновременно.
- Предметы одного типа бронируются только по одному экземпляру.
- Заявка резервирует предметы на 5 минут; если пользователь не завершает процесс взятия, бронь автоматически снимается. При снятии брони по истечение 5 минут должен быть настраиваемый период, когда нельзя будет сделать новую бронь — 5 или 10 минут. Либо просто уменьшать максимальное время брони с 5 минут до 3, потом до 1 минуты, чтобы человек не мог блокировать доступность устройтсв
- Возврат предметов:
- Кнопка "Вернуть предмет" в интерфейсе пользователя.
- Каждый взятый предмет — это отдельная сессия.
- После подтверждения запроса администратором сессия закрывается.
- Дисклеймеры:
- Предмет может быть в наличии, но иметь дефекты (например, разряженный повербанк).
- Обновление данных о доступности:
- Данные о наличии предметов подтягиваются в реальном времени при каждом заходе пользователя на страницу проката.
- Если пользователь пытается взять предмет, который уже забрали, система выдаёт сообщение об ошибке — "К сожалению предмет уже забрали".
Административный интерфейс
- Авторизация администраторов:
- Разграничение ролей:
- Базовые администраторы (все члены структуры Профкома): выдача/приём предметов.
- Высокоуровневые администраторы: управление инвентарём (добавление предметов, редактирование их количества), настройка лимитов.
- Разграничение ролей:
- Управление заявками:
- Все предметы из одной заявки отображаются как отдельные сессии аренды.
- Администратор может отдельно подтверждать или завершать аренду каждого предмета.
- Журнал операций:
- История всех действий (выдача, возврат, отказы).
- Фиксация отказов с возможностью оставлять "страйки" пользователям и видеть кол-во страйков на профиле пользователя в момент Бронирования
- Управление инвентарём:
- Добавление новых позиций (название, фото, описание).
- Редактирование количества доступных предметов (учёт поломок или утерь).
- Фильтры и сортировка:
- Сортировка по фамилии студента (по умолчанию), по дате взятия, возврата.
- Фильтрация по типу предмета или статусу заявки (ожидает подтверждения, в процессе, сдан, отказано).
Аналитика
- Сбор данных:
- вся инфа о каждой сессии с таймкодами, предметами
- user_id студента.
- Время взятия/возврата предмета.
- Количество просрочек сдачи.
- Популярные предметы (ранжировка по частоте использования).
- Таймстемпы времени брони и времени взятия, чтобы контролить использование броней и их абьюз
- Дашборд для высокоуровневых администраторов:
- Среднее время аренды.
- Ошибки сервиса (например, сбои в работе системы).
- Пиковые часы использования.
- можно дополнять...
Технические ограничения
- Авторизация возможна только через OAuth ЛК МГУ.
- Уведомления внутри приложения невозможны; коммуникация в будущем через Telegram (пингование).
- Админский интерфейс должен быть адаптирован для десктопа на комп в профкоме.
- Для MVP все предметы идентичны (без сложных характеристик вроде заряда батареи).
Риски и зависимости
- Злоупотребление системой бронирования пользователями (например, создание множества броней без намерения взять предмет).
- Невозврат предмета проката (особенно в формате работы без студака)
- Доступ к API ЛК МГУ для авторизации студентов и к API ОПК МГУ для подтверждения членства в профсоюзе.
- Наличие стабильного a
Wi-Fi на ФФ и в кабинете Профкома.
- 主要言語
- 言語のデータがありません
- スター
- 9
- フォーク
- 1
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
profcomff/.github のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
epic :100:
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
-
new feature :new:
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
profcomff/.github の issue をすべて見る
似ている issue
-
Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
Automattic/safe-publish#594 ·
-
Flaky storybook test オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
hasadna/open-bus-map-search#1893 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
integra-team-red/meet-map#249 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
TanStack/tanstack.com#1293 ·