Studio-Yandex-Practicum / ProCharity_back_2.0

bot ProCharity (НКО Фонд Друзья)
13 stars 13 forks source link

Добавление полей для настроек уведомлений в эндпоинты ExternalSiteUser #667

Closed Genek91 closed 2 days ago

Genek91 commented 2 weeks ago

Что сделано

Добавил:

  1. Новые поля в схему BaseExternalSiteUser.
  2. Alias для поля external_id.
  3. Методы get_role для определения роли.
  4. Изменение состояния поля user.has_mailing в зависимости от site_user.has_mailing_new_tasks.
  5. Немного изменил метод register в ExternalSiteUserService. Мне кажется этот метод можно разделить (для волонтёров и фондов отдельно).

Как тестировал

Проверил работоспособность эндпоинтов через документацию:

post "/api/auth/external_user_registration/volunteer"
post "/api/auth/external_user_registration/fund"
patch "/api/auth/external_user_registration/volunteer/{user_id}"
patch "/api/auth/external_user_registration/fund/{user_id}"

Если в новые поля передать Null, то это никак не повлияет на значения этих полей в БД.

gorskyolga commented 1 week ago

По поводу разделения методов register в ExternalSiteUserService (отдельно для волонтёров и фондов) не уверена. Это не приведет наоборот к дублированию кода?

Genek91 commented 1 week ago

По поводу разделения методов register в ExternalSiteUserService (отдельно для волонтёров и фондов) не уверена. Это не приведет наоборот к дублированию кода?

Хотел узнать экспертное мнение, да из-за дублирования, наверное, лучше всё в одном.