コード例 #1
0
        public async Task HandleScheduleCompletedEvent(ScheduleCompletedEvent e)
        {
            var schedule = await _repository.FindByUUID <Schedule>(e.ScheduleUuid).FirstOrDefaultAsync();

            if (schedule == null)
            {
                return;
            }

            var user = await _uCenter.GetUser(x => x.UserId, schedule.UserId);

            if (user == null)
            {
                return;
            }

            await _feedSvc.PublishAsync(new FeedInputModel
            {
                AppId     = AppConst.AppGuid,
                FeedType  = FeedType.ScheduleCompleted,
                ContentId = schedule.Id.ToString(),
                UserId    = schedule.UserId,
                FeedTitle = schedule.Title,
                IsPrivate = schedule.IsPrivate,
                Link      = $"{AppConst.DomainAddress}/schedules/u/{user.Alias}/{schedule.Id}"
            });

            await _cache.RemoveAsync(CacheKeyStore.HomeFeeds());
        }
コード例 #2
0
        public async Task HandleScheduleCompletedEvent(ScheduleCompletedEvent e)
        {
            await Task.CompletedTask;
            // var schedule = await _repository.FindByUUID<Schedule>(e.ScheduleUuid).FirstOrDefaultAsync();
            // if (schedule == null) return;

            // if (schedule.ParentId > 0)
            // {
            //     var parent = await _repository.Schedules.Where(x => x.Id == schedule.ParentId).FirstOrDefaultAsync();
            //     if (parent == null) return;

            //     var user = await _uCenter.GetUser(x => x.UserId, schedule.UserId);
            //     if (user == null) return;

            //     var recipient = await _uCenter.GetUser(x => x.UserId, parent.UserId);
            //     if (recipient == null) return;

            //     await _msgSvc.NotifyAsync(new Notification
            //     {
            //         RecipientId = recipient.SpaceUserId,
            //         Title = $"有同学完成了您制定的学习计划",
            //         Content = $@"<p>亲爱的 {recipient.DisplayName} 同学:</p>
            //             <p><a href='{AppConst.DomainAddress}/schedules/u/{user.Alias}/{schedule.Id}'>
            //                 {user.DisplayName}</a>完成了您制定的学习计划: </p>
            //             <p>
            //             <a href='{AppConst.DomainAddress}/schedules/u/{user.Alias}/{schedule.Id}'>
            //                     <b>{parent.Title}</b>
            //             </a>
            //             </p>"
            //     });
            // }
        }