/// <summary>
        /// Remove ActivityFileTranslation.
        /// </summary>
        /// <param name="request">The ActivityFileTranslation Request Pivot to remove.</param>
        public void DeleteActivityFileTranslation(ActivityFileTranslationRequestPivot request)
        {
            if (request?.ActivityFileTranslationPivot == null)
            {
                throw new ArgumentNullException(nameof(request));
            }
            ActivityFileTranslation activityFileTranslation = _unitOfWork.ActivityFileTranslationRepository.GetById(request.ActivityFileTranslationPivot.TranslationId);

            _unitOfWork.ActivityFileTranslationRepository.Delete(activityFileTranslation);
            _unitOfWork.Save();
        }
        /// <summary>
        /// Create new ActivityFileTranslation.
        /// </summary>
        /// <param name="request">The ActivityFileTranslation Request Pivot to add.</param>
        /// <returns>ActivityFileTranslation Response Pivot created.</returns>
        public ActivityFileTranslationResponsePivot CreateActivityFileTranslation(ActivityFileTranslationRequestPivot request)
        {
            if (request?.ActivityFileTranslationPivot == null)
            {
                throw new ArgumentNullException(nameof(request));
            }
            ActivityFileTranslation activityFileTranslation = request.ActivityFileTranslationPivot.ToEntity();

            _unitOfWork.ActivityFileTranslationRepository.Insert(activityFileTranslation);
            _unitOfWork.Save();
            return(new ActivityFileTranslationResponsePivot
            {
                ActivityFileTranslationPivot = activityFileTranslation.ToPivot()
            });
        }
        /// <summary>
        /// Change ActivityFileTranslation values.
        /// </summary>
        /// <param name="request">The ActivityFileTranslation Request Pivot to change.</param>
        public void UpdateActivityFileTranslation(ActivityFileTranslationRequestPivot request)
        {
            if (request?.ActivityFileTranslationPivot == null)
            {
                throw new ArgumentNullException(nameof(request));
            }

            ActivityFileTranslation activityFileTranslation = _unitOfWork.ActivityFileTranslationRepository.GetById(request.ActivityFileTranslationPivot.TranslationId);

            if (request.ActivityFileTranslationPivot.ActivityFileSource != null)
            {
                activityFileTranslation.ActivityFileSource = request.ActivityFileTranslationPivot.ActivityFileSource;
            }
            activityFileTranslation.ActivityFileText = request.ActivityFileTranslationPivot.ActivityFileText;
            _unitOfWork.Save();
        }
 /// <summary>
 /// From ActivityFileTranslation To ActivityFileTranslation Pivot.
 /// </summary>
 /// <param name="activityFileTranslation">activityFileTranslation TO ASSEMBLE</param>
 /// <returns>ActivityFileTranslationPivot result.</returns>
 public static ActivityFileTranslationPivot ToPivot(this ActivityFileTranslation activityFileTranslation)
 {
     if (activityFileTranslation == null)
     {
         return(null);
     }
     return(new ActivityFileTranslationPivot
     {
         ActivityFileSource = activityFileTranslation.ActivityFileSource,
         ActivityFile = activityFileTranslation.ActivityFile?.ToPivot(),
         ActivityFileText = activityFileTranslation.ActivityFileText,
         ActivityFileId = activityFileTranslation.ActivityFileId,
         Language = activityFileTranslation.Language?.ToPivot(),
         TranslationId = activityFileTranslation.TranslationId,
         LanguageId = activityFileTranslation.LanguageId
     });
 }
        /// <summary>
        /// Change ActivityFileTranslation values.
        /// </summary>
        /// <param name="request">The ActivityFileTranslation Request Pivot to change.</param>
        public void UpdateActivityFileTranslationRange(ActivityFileTranslationRequestPivot request)
        {
            if (request?.ActivityFileTranslationPivotList == null)
            {
                throw new ArgumentNullException(nameof(request));
            }

            foreach (var translation in request.ActivityFileTranslationPivotList)
            {
                ActivityFileTranslation activityFileTranslation = _unitOfWork.ActivityFileTranslationRepository.GetById(translation.TranslationId);
                if (translation.ActivityFileSource != null)
                {
                    activityFileTranslation.ActivityFileSource = translation.ActivityFileSource;
                }
                activityFileTranslation.ActivityFileText = translation.ActivityFileText;
                _unitOfWork.Save();
            }
        }