public BSEntityFramework_ResultType InsertShopOffer(AddShopOffersViewModel newShopOffer) { try { using (BSDBEntities EF = new BSDBEntities()) { var shopId = newShopOffer.ShopOffer.ShopID; var totalOffers = EF.TBL_ShopOffers.Count(x => x.ShopID == shopId) + 1; newShopOffer.ShopOffer.OfferID = CommonSafeConvert.ToInt(Convert.ToString(shopId) + Convert.ToString(totalOffers)); foreach (var prod in newShopOffer.OfferonProducts) { prod.CreatedBy = newShopOffer.ShopOffer.CreatedBy; prod.CreateDate = DateTime.Now; prod.IsActive = true; } newShopOffer.ShopOffer.TBL_OfferOnProducts = (newShopOffer.OfferonProducts); EF.TBL_ShopOffers.Add(newShopOffer.ShopOffer); EF.SaveChanges(); } var result = new BSEntityFramework_ResultType(BSResult.Success, newShopOffer.ShopOffer, null, "Created Sucessfully"); return(result); } catch (DbEntityValidationException dbValidationEx) { return(FormatException(dbValidationEx, newShopOffer)); } catch (Exception ex) { var logact = new LoggerActivity(); var result = new BSEntityFramework_ResultType(BSResult.Fail, newShopOffer, null, "Technical issue"); logact.ErrorSetup("WebApp", "InsertShopOffer Failed", "", "", "", ex.Message); return(result); } }
public async Task <ActionResult> AddShopOffer(AddShopOffersViewModel model) { try { if (ModelState.IsValid) { using (var client = new HttpClient()) { var currentUserId = CommonSafeConvert.ToInt(Session["CurrentUserID"]); model.ShopOffer.ShopID = GetCurrentShopId(); model.ShopOffer.CreatedBy = currentUserId; var selectedProductList = new JavaScriptSerializer().Deserialize <List <SelectedProductList> >(model.SelectedProductJson); model.OfferonProducts = new List <TBL_OfferOnProducts>(); selectedProductList.ForEach(x => model.OfferonProducts.Add(new TBL_OfferOnProducts() { ProductID = x.ProductID, OfferID = model.ShopOffer.OfferID })); client.BaseAddress = new Uri(WebAppConfig.GetConfigValue("WebAPIUrl")); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); var response = await client.PostAsJsonAsync("/api/shopoffers/PostNewShopOffers", model); // var response = new CommonAjaxCallToWebAPI().AjaxPost(@"/api/shopoffers/PostNewShopOffers", model); if (response.StatusCode == System.Net.HttpStatusCode.OK) { var rslt = await response.Content.ReadAsStringAsync(); var reslt = new JavaScriptSerializer().Deserialize <BSEntityFramework_ResultType>(rslt); if (reslt.Result == BSResult.FailForValidation) { foreach (var valerr in reslt.EntityValidationException) { ModelState.AddModelError("BS Errors", valerr); } } else { ModelState.AddModelError("BS Errors", reslt.ResultMsg); } //return reslt; FillViewDatasForAddShopOffers(); return(View()); } else { FillViewDatasForAddShopOffers(); return(View()); } } } FillViewDatasForAddShopOffers(); return(View("AddShopOffer", model)); } catch (Exception ex) { FillViewDatasForAddShopOffers(); return(View()); } }
public JsonResult <BSEntityFramework_ResultType> PostNewShopOffers(AddShopOffersViewModel newShopOffers) { var BSResult = ShopOffersActivity.InsertShopOffer(newShopOffers); return(Json <BSEntityFramework_ResultType>(BSResult)); }