8000 Модуль «Метрики здоровья» · Issue #12 · PolyZoj/rmp-app · GitHub < 8000 link rel="canonical" href="https://github.com/PolyZoj/rmp-app/issues/12" data-turbo-transient>
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Модуль «Метрики здоровья» #12
Open
@bassceo

Description

@bassceo
  • Изучить обьём задачи и разбить на под задачи

Figma: https://www.figma.com/design/3m9VZjoQvbQ7iAajIKpU5W/PolyZoj?node-id=0-1&p=f&t=MpgFgxz4LTXfYDQ3-0

Вспомогательная инфа от GPT:

Описание: Учёт шагов, калорий, воды, сна; интеграции с Google Fit/Fitbit.

  1. [METRICS-1] Локальное хранилище (Room)

    • Задачи:
      • Добавить зависимость на Room.
      • Создать Entity: StepsEntity, WaterIntakeEntity (пример), DAO, Database.
      • Подключить базу в Hilt-модуле.
    • Критерии приёмки:
      • Приложение создаёт локальную БД, можно выполнять простые CRUD-операции.
  2. [METRICS-2] Сбор шагов (Google Fit API)

    • Задачи:
      • Настроить доступ к Google Fit (OAuth), получить разрешения на чтение шагов.
      • Сохранение данных в локальную БД (Room).
      • Синхронизация с сервером (метод в MetricsRepository).
    • Критерии приёмки:
      • Приложение регулярно (или по нажатию) считывает шаги.
      • При наличии сети отправляет их на сервер, обновляет локально.
  3. [METRICS-3] Учёт воды/сна

    • Задачи:
      • Добавить экраны в Compose (WaterTrackerScreen, SleepTrackerScreen).
      • Позволить пользователю вручную вносить данные о воде, времени сна.
      • Сохранять в Room и отправлять на сервер.
    • Критерии приёмки:
      • Пользователь может нажать «+ стакан воды», обновляется локально и на сервере.
      • Статистика сна может быть либо ручной, либо из интеграций.
  4. [METRICS-4] Фоновая синхронизация (WorkManager)

    • Задачи:
      • Настроить WorkManager, который периодически отправляет несинхронизированные данные (шаги, вода и т.д.) на сервер.
      • Обрабатывать результат (успешно/ошибка).
    • Критерии приёмки:
      • При отсутствии сети данные копятся в Room, при появлении — автоматически уезжают на сервер.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0