/// <summary> /// Creates the language translation. /// </summary> /// <param name="translationDetails">The translation details.</param> /// <returns></returns> public async Task <CSSResponse> CreateLanguageTranslation(CreateLanguageTranslation translationDetails) { var languageIdDetails = new LanguageIdDetails { LanguageId = translationDetails.LanguageId }; var menuIdDetails = new MenuIdDetails { MenuId = translationDetails.MenuId }; var variableIdDetails = new VariableIdDetails { VariableId = translationDetails.VariableId }; var languageTranslations = await _repository.LanguageTranslation.GetLanguageTranslationByOtherIds(languageIdDetails, menuIdDetails, variableIdDetails); if (languageTranslations?.Count > 0) { return(new CSSResponse($"Translation with language id '{translationDetails.LanguageId}' and " + $"menu id '{translationDetails.MenuId}' and variable id '{translationDetails.VariableId}' already exists.", HttpStatusCode.Conflict)); } var languageTranslationRequest = _mapper.Map <LanguageTranslation>(translationDetails); _repository.LanguageTranslation.CreateLanguageTranslation(languageTranslationRequest); await _repository.SaveAsync(); return(new CSSResponse(new LanguageTranslationIdDetails { TranslationId = languageTranslationRequest.Id }, HttpStatusCode.Created)); }
public async Task <IActionResult> CreateLanguageTranslation([FromBody] CreateLanguageTranslation translationDetails) { var result = await _languageTranslationService.CreateLanguageTranslation(translationDetails); return(StatusCode((int)result.Code, result.Value)); }