Ejemplo n.º 1
0
        public async Task RemoveEventImage(RemoveEventImageModel request)
        {
            var eventEntity = await _eventRepository.GetEvent(request.EventUid);

            var imageEntity = eventEntity.EventImageContentEntities.Single(x => x.EventImageContentUid == request.ImageUid);
            await _eventRepository.RemoveEventImage(imageEntity);

            await _imageLogic.RemoveImage(request.ImageUid);
        }
Ejemplo n.º 2
0
        public async Task <PersonModel> UpdatePerson(UpdatePersonModel updatePersonModel, Guid personUid)
        {
            var entity = await _personRepository.GetPerson(personUid);

            if (!string.IsNullOrEmpty(updatePersonModel.Name))
            {
                entity.Name = updatePersonModel.Name;
            }
            if (!string.IsNullOrEmpty(updatePersonModel.Description))
            {
                entity.Description = updatePersonModel.Description;
            }
            if (updatePersonModel.Age.HasValue)
            {
                entity.Age = updatePersonModel.Age;
            }
            if (updatePersonModel.CityId.HasValue)
            {
                entity.CityId = updatePersonModel.CityId;
            }
            if (!string.IsNullOrEmpty(updatePersonModel.Login))
            {
                entity.Login = updatePersonModel.Login;
            }
            if (string.IsNullOrWhiteSpace(entity.Login) && string.IsNullOrWhiteSpace(updatePersonModel.Login))
            {
                entity.Login = await GenarateLogin(updatePersonModel.Name);
            }
            if (updatePersonModel.Token != null)
            {
                entity.Token = updatePersonModel.Token;
                await _personRepository.RemoveTokenForEveryPerson(updatePersonModel.Token);
            }
            var deleteOldImage = false;
            var imageToDelete  = entity.PersonImageContentEntity;

            if (updatePersonModel.Image != null)
            {
                deleteOldImage = entity.PersonImageContentEntity != null;
                var imageUid = await _imageLogic.SaveImage(updatePersonModel.Image);

                var miniImageUid = await _imageLogic.SaveImage(updatePersonModel.MiniImage);

                entity.PersonImageContentEntity = new PersonImageContentEntity {
                    PersonImageContentUid = imageUid, PersonMiniatureImageContentUid = miniImageUid
                };
            }
            else
            {
                entity.PersonImageContentEntity = null;
            }
            var model = _mapper.Map <PersonModel>(entity);

            entity.FriendList   = null;
            entity.City         = null;
            entity.SwipeHistory = null;
            await _personRepository.UpdatePerson(entity);

            if (deleteOldImage)
            {
                await _personRepository.RemovePersonImage(imageToDelete);

                await _imageLogic.RemoveImage(imageToDelete.PersonImageContentUid);

                if (imageToDelete.PersonMiniatureImageContentUid.HasValue)
                {
                    await _imageLogic.RemoveImage(imageToDelete.PersonMiniatureImageContentUid.Value);
                }
            }
            return(model);
        }