Skip to content

Модуль карты Зачет#346

Open
Dmatrushka19 wants to merge 7 commits intomainfrom
FilipenkovDA/issue-345/Zechet-module
Open

Модуль карты Зачет#346
Dmatrushka19 wants to merge 7 commits intomainfrom
FilipenkovDA/issue-345/Zechet-module

Conversation

@Dmatrushka19
Copy link
Copy Markdown
Contributor

@Dmatrushka19 Dmatrushka19 commented Apr 23, 2026

Изменения

  • Добавлен отдельный модуль ZachetCard для отображения карты Zachёt.
  • Вся логика получения и подготовки данных убрана из компонента в отдельные файлы модуля.
  • Данные пользователя запрашиваются через ручку GET /userdata/user/{id}.
  • Полученные данные кешируются в стор, чтобы не дергать ручку каждый раз.
  • Добавлена временная тестовая страница и роутинг для дебага.
  • Реализовано временное логирование для дебага.

Детали реализации

  • Создан модуль src/modules/ZachetCard с публичным API через index.ts.
  • Добавлен компонент ZachetCard.vue, который отвечает только за отображение UI карты.
  • Добавлен types.ts с типами:

элемента ответа userdata,
полного ответа ручки,
итоговой модели карты.

  • Добавлен mapper.ts, который преобразует массив items из userdata в объект ZachetCardData.
  • Добавлен store.ts на Pinia для:

хранения карты по userId,
хранения статуса загрузки,
хранения ошибок,
кеширования результата.

  • Добавлен useZachetCardController.ts, который берёт userId из profileStore или из пропсов, запускает загрузку данных и отдаёт компоненту card, loading, error, reload.
  • В маппинге используются поля:

Личная информация / Полное имя,
Личная информация / Дата рождения,
Личная информация / Фото,
Учёба / Факультет,
Учёба / Ступень обучения,
Учёба / Номер профсоюзного билета,

  • Английские поля карты пока заполняются fallback-значением —, так как они не приходят из доступной ручки.
  • Добавлена тестовая страница src/views/debug/ZachetCardDebugView.vue и маршрут /debug/zachet-card для нее.

Check-List

  • Вы проверили свой код перед отправкой запроса?
  • Вы написали тесты к реализованным функциям?
  • Вы не забыли применить форматирование black и isort для Back-End или Prettier для Front-End?

@Dmatrushka19 Dmatrushka19 force-pushed the FilipenkovDA/issue-345/Zechet-module branch from af97fd5 to b4fa85c Compare April 23, 2026 17:24
@Dmatrushka19 Dmatrushka19 reopened this Apr 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant