예제 #1
0
        public async Task <PhotoCreateResponse> AddUserPhoto(int userId, UserPhotoRequest userPhotoRequest)
        {
            var photoUploadResult = _photoAccessor.AddPhoto(userPhotoRequest.File);
            var user = await _usersRepo.Get(userId);

            var photo = new Photo();

            _mapper.Map(userPhotoRequest, photo);

            photo.Url      = photoUploadResult.Url;
            photo.PublicId = photoUploadResult.PublicId;
            photo.IsMain   = !user.Photos.Any(p => p.IsMain);
            photo.User     = user;


            await _repo.Create(photo);

            return(_mapper.Map <PhotoCreateResponse>(photo));
        }