// ReSharper disable once UnusedMember.Global public async Task HandleFetchBaseTermAction(TranslationsFetchBaseTermAction action, IDispatcher dispatcher) { var url = $"{Const.BaseTerms}{action.BaseTermId}/"; var returnCode = HttpStatusCode.OK; var resBaseTransl = new ResultBaseTranslation(); try { resBaseTransl = await _httpClient.GetFromJsonAsync <ResultBaseTranslation>(url, Const.HttpClientOptions); } catch (Exception e) { dispatcher.Dispatch( new NotificationAction(e.Message, SnackbarColor.Danger)); returnCode = HttpStatusCode.BadRequest; } resBaseTransl ??= new ResultBaseTranslation(); resBaseTransl.BaseTerm ??= new BaseTerm { LanguageId = Const.PlLangId, Id = action.BaseTermId }; resBaseTransl.Translation ??= new Translation { LanguageId = resBaseTransl.BaseTerm.LanguageId, BaseTermId = resBaseTransl.BaseTerm.Id }; resBaseTransl.Translation.CheckNulls(); resBaseTransl.Translations ??= new System.Collections.Generic.List <Translation> { resBaseTransl.Translation }; dispatcher.Dispatch( new TranslationsFetchBaseTermResultAction( baseTranslation: resBaseTransl, httpStatusCode: returnCode)); if (returnCode != HttpStatusCode.BadRequest) { dispatcher.Dispatch( new NotificationAction(action.FetchBaseSuccessMessage, SnackbarColor.Success)); } }
public async Task HandleFetchOneSlugAction(BaseTermsFetchOneSlugAction action, IDispatcher dispatcher) { var returnCode = HttpStatusCode.OK; var url = $"{Const.BaseTerms}{action.Slug}/by_slug/"; var returnData = new ResultBaseTranslation(); try { returnData = await _httpClient.GetFromJsonAsync <ResultBaseTranslation>(url, Const.HttpClientOptions); } catch (Exception e1) { dispatcher.Dispatch(new NotificationAction(e1.Message, SnackbarColor.Danger)); returnCode = HttpStatusCode.BadRequest; } RootObject <OriinLink>?userResult = null; if (returnData?.BaseTerm is not null) { url = $"{Const.Links}?base_term_id={returnData.BaseTerm.Id}"; } try { userResult = await _httpClient.GetFromJsonAsync <RootObject <OriinLink> >( requestUri : url, Const.HttpClientOptions); } catch (Exception e) { dispatcher.Dispatch(new NotificationAction(e.Message, SnackbarColor.Danger)); returnCode = HttpStatusCode.BadRequest; } dispatcher.Dispatch( new BaseTermsFetchOneResultAction( returnData ?? new ResultBaseTranslation(), links: userResult?.Results ?? new System.Collections.Generic.List <OriinLink>(), httpStatusCode: returnCode)); if (returnCode != HttpStatusCode.BadRequest) { dispatcher.Dispatch( new NotificationAction(action.BaseTermFetchedMessage, SnackbarColor.Success)); } }