Example #1
0
            public async Task <CommentDto> Handle(Command request, CancellationToken cancellationToken)
            {
                var activity = await _unitOfWork.ActivityRepo.FindFirstAsync(request.ActivityId, cancellationToken);

                if (activity == null)
                {
                    throw new CustomException(System.Net.HttpStatusCode.BadRequest, new { Activity = "Not Found" });
                }

                var user = await _unitOfWork.IdentityUserRepo.FindFirstAsync(request.UserName, cancellationToken);

                if (user == null)
                {
                    throw new CustomException(System.Net.HttpStatusCode.BadRequest, new { User = "******" });
                }

                DataModel.Comment comment = _mapperHelper.Map <Command, DataModel.Comment>(request);
                comment.AuthorId = user.AppUser.Id;

                _unitOfWork.CommentRepo.Add(comment);

                int insertCnt = await _unitOfWork.SaveAsync(cancellationToken);

                if (insertCnt > 0)
                {
                    comment.Activity = activity;
                    comment.Author   = user.AppUser;

                    CommentDto commentDto = _mapperHelper.Map <DataModel.Comment, CommentDto>(comment);
                    commentDto.UserImage = _photoAccessor.PreparePhotoUrl(commentDto.MainPhotoCloudFileName);
                    return(commentDto);
                }

                throw new Exception("Problem saving changes to database");
            }
 public string Resolve(UserActivity source, AttendeeDto destination, string destMember, ResolutionContext context)
 {
     return(_photoAccessor.PreparePhotoUrl(source?.AppUser?.MainPhoto?.CloudFileName));
 }
Example #3
0
 public string Resolve(IdentityUser src, UserDto dest, string destMember, ResolutionContext context)
 {
     return(_photoAccessor.PreparePhotoUrl(src.AppUser.MainPhoto?.CloudFileName));
 }
Example #4
0
 public string Resolve(DataModel.Comment source, CommentDto dest, string destMember, ResolutionContext context)
 {
     return(_photoAccessor.PreparePhotoUrl(source.Author.MainPhoto.CloudFileName));
 }
Example #5
0
 public string Resolve(DataModel.Photo source, PhotoDto destination, string destMember, ResolutionContext context)
 {
     return(_photoAccessor.PreparePhotoUrl(source?.CloudFileName));
 }