public CompetitionPostApiModel Map(Mannschaftskampf mannschaftskampf, List <Einzelkampf> einzelkaempfe) { CompetitionPostApiModel apiModel = new CompetitionPostApiModel { SaisonId = mannschaftskampf.SaisonId, CompetitionId = mannschaftskampf.WettkampfId, HomePoints = mannschaftskampf.HeimPunkte.ToString(), OpponentPoints = mannschaftskampf.GastPunkte.ToString(), Audience = mannschaftskampf.AnzahlZuschauer.ToString(), EditorComment = mannschaftskampf.Kommentar, RefereeName = mannschaftskampf.Schiedsrichter_Nachname, RefereeGivenname = mannschaftskampf.Schiedsrichter_Vorname, StartTime = mannschaftskampf.EchterKampfbeginn.ToString(@"hh\:mm\:ss"), EndTime = mannschaftskampf.EchtesKampfende.ToString(@"hh\:mm\:ss"), BoutList = MapEinzelkaempfe(einzelkaempfe) }; return(apiModel); }
public async Task <JObject> Sende_Ergebnis_Async(CompetitionPostApiModel apiModel) { string jsonString = JsonConvert.SerializeObject(apiModel); //TODO: Url angeben, sobald bekannt string url = _settings.BaseUrl; //.SetQueryParam(_settings.JsonReaderService.Key, _settings.JsonReaderService.Value) //.SetQueryParam(_settings.TaskOrganisationsmanager.Key, _settings.TaskOrganisationsmanager.Value) //tk = task | jr:cs = Json-Reader Service | OM = Organisationsmanager //.SetQueryParam("op", operation); //op ~ operation _logger.Debug($"RdbService: GET {url}"); HttpResponse httpResponse = await _httpService.Post_Json_Async(new Uri(url), jsonString); _logger.Debug($"RdbService: Response = {httpResponse.Result}"); JObject parsedJson = JObject.Parse(httpResponse.Result); return(parsedJson); }
public async Task Uebermittle_Ergebnis_Async(Mannschaftskampf mannschaftskampf, List <Einzelkampf> einzelkaempfe) { CompetitionPostApiModel apiModel = _mapper.Map(mannschaftskampf, einzelkaempfe); List <ValidationResult> validationResults = new List <ValidationResult>(); bool isValid = ValidationHelper.IsValidate(apiModel, fehlerListe => validationResults = fehlerListe); if (!isValid) { List <KeyValuePair <string, string> > validierungsFehler = new List <KeyValuePair <string, string> >(); foreach (var validationResult in validationResults) { validierungsFehler.AddRange(validationResult.MemberNames.Select(member => new KeyValuePair <string, string>(member, validationResult.ErrorMessage))); } throw new ApiValidierungException(validierungsFehler); } //TODO: Impl. finalisieren var httpResponse = await _rdbService.Sende_Ergebnis_Async(apiModel : apiModel); }