beeoclock / client-panel-app

2 stars 0 forks source link

Додати налаштування сповіщень для бізнесу в розділ "Налаштування компанії" #498

Closed dokerwin closed 1 week ago

dokerwin commented 3 weeks ago

Description: Необхідно додати налаштування для бізнесу в розділі "Налаштування компанії" з назвою "Налаштування сповіщень". Це налаштування дозволить бізнесам керувати різними типами сповіщень через BusinessProfileDto, додавши конфігурацію наступних параметрів:

Структура NotificationSettingsDto:

export class NotificationSettingsDto {
  object?: 'NotificationSettingsDto';
  reminderSettings: ReminderSettingsDto;
  smsNotificationSettings: SmsNotificationSettingsDto;
  pushNotificationSettings: PushNotificationSettingsDto;
  emailNotificationSettings: EmailNotificationSettingsDto;
}

Основна задача: На цьому етапі необхідно контролювати тільки наступні параметри:

Конфігурація EmailNotificationSettingsDto:

export class EmailNotificationSettingsDto {
  emailLanguage: LanguageCodeEnum;
  sendNotificationConditionType: SendNotificationConditionTypeEnum;
  allowedEmailTypes?: AllowedNotificationTypesDto; // За замовчуванням allowAll: true.
}

Конфігурація SmsNotificationSettingsDto:

export class SmsNotificationSettingsDto {

  sendNotificationConditionType: SendNotificationConditionTypeEnum;
  activeProviderName?: string;
  allowedSmsTypes?: AllowedNotificationTypesDto;
}

Конфігурація AllowedNotificationTypesDto:

export class AllowedNotificationTypesDto {
  allowAll: boolean; //  має бути встановлено на true
  specificTypes?: NotificationAnchorTypeEnum[];   // наразі має бути як null 
}

Конфігурація sendNotificationConditionType:

export enum SendNotificationConditionTypeEnum {
    allow = 'allow',
    allowButAsk = 'allowButAsk',
    deny = 'deny',
}

Поля:

Acceptance Criteria: