Ejemplo n.º 1
0
        public async void GenerateEventOfSubscription()
        {
            var dateOfLastCheckedEntry = await settingsRepository.GetLastSubscribeSettings();

            var entries = await entryRepository.GetAllAsync();

            foreach (var entry in entries)
            {
                if (dateOfLastCheckedEntry == null || entry.CreatedAt.CompareTo(dateOfLastCheckedEntry.CreatedAt) > 0)
                {
                    var userByEntry = await userRepository.GetByIdAsync(entry.UserId);

                    var activity = await activityRepository.GetByIdAsync(entry.ActivityId);

                    var maraphone = await maraphoneRepository.GetAsync(activity.MaraphoneId,
                                                                       cancellationToken : CancellationToken.None);

                    var subscribeEventInfo = new SubscribeEventInfo()
                    {
                        FirstName   = userByEntry.FirstName,
                        LastName    = userByEntry.LastName,
                        Email       = userByEntry.Email,
                        CreatedAt   = entry.CreatedAt,
                        Title       = maraphone.Title,
                        Description = maraphone.Description,
                        IsChecked   = false
                    };
                    await subscribeEventInfoRepository.CreateSubscribeEventInfoAsync(subscribeEventInfo);
                }
            }

            var settingOfEventSubscribe = new SettingsEventOfSubscribeToActivity()
            {
                CreatedAt = DateTime.Now
            };
            await settingsRepository.CreateSubscribeToActivitySettings(settingOfEventSubscribe);
        }
Ejemplo n.º 2
0
        public Task <SettingsEventOfSubscribeToActivity> CreateSubscribeToActivitySettings(SettingsEventOfSubscribeToActivity settingEvent)
        {
            if (settingEvent == null)
            {
                throw new ArgumentNullException();
            }

            settigsEventOfSubscribeToActivity.InsertOne(settingEvent);
            return(Task.FromResult <SettingsEventOfSubscribeToActivity>(settingEvent));
        }