public async Task <IActionResult> SavePriceCriteria(IFormCollection formdata) { try { var priceCriteriaJson = formdata.ToDictionary(x => x.Key, x => x.Value) .Where(element => element.Key.Equals("priceCriteria")).Select(key => key.Value).ToList()[0]; var criterias = JsonConvert.DeserializeObject <ListCriteriasModels>(priceCriteriaJson); var priceCriteria = new PriceCriteria <ListCriteriasModels>(); await priceCriteria.SavedAsync(criterias); return(new JsonResult(new { message = "Сохранено" }) { StatusCode = 200 }); } catch { } return(new JsonResult(new { message = "Ошибка сохранения" }) { StatusCode = 500 }); }
private void CompareEbayArticlesOnly() { if (Articles.Count == 0 || newOriginalArticles.Count == 0) { MessageBox.Show("Es kann kein Update gemacht werden, da entweder die Basis oder die Vergleichsdatei fehlt."); return; } var ebayArticles = Articles.Where(x => x.EbayIds.Count > 0); var criteria = new PriceCriteria(); var resultList = new List <IArticle>(); foreach (var ebayArticle in ebayArticles) { var key = ArticleKeyGenerator.GetKeyFromArticle(ebayArticle); try { var newArticle = newOriginalArticles[key]; if (!criteria.IsCriteriaSatisfied(ebayArticle, newArticle)) { newArticle.EbayIds = ebayArticle.EbayIds; if (newArticle.Availability < EbayArticleConstants.MinimumCountOfArticles) { newArticle.Availability = 0; } resultList.Add(newArticle); } } catch (KeyNotFoundException) { ebayArticle.Availability = 0; resultList.Add(ebayArticle); } } NavigateToWheelDetailListPage(resultList); }