public static void MapToBasketOrderAndUpdate(BasketOrder basketOrder) { BasketModel model = GlobalConfig.Connection.GetBasketById(basketOrder.Id); foreach (BasketDetailOrder bDetO in basketOrder.BasketDeatils) { if (model.BasketDetails.Where(x => x.Product.ProductID == bDetO.ProductId).ToList().Count > 0) { BasketDetailModel bDM = model.BasketDetails.Where(x => x.Product.ProductID == bDetO.ProductId).ToList().FirstOrDefault(); bDM.Quantity = bDetO.quantity; bDM.Price = bDetO.quantity * bDM.Product.Price; GlobalConfig.Connection.UpdateQuantityBasketDetail(bDM); // update BasketModel file List <BasketDetailModel> listBasketDetail = model.BasketDetails; listBasketDetail.Remove(model.BasketDetails.Where(x => x.Product.ProductID == bDetO.ProductId).ToList().FirstOrDefault()); listBasketDetail.Add(bDM); model.BasketDetails = listBasketDetail; GlobalConfig.Connection.UpdateBasket(model.UpdateTotalAmountBasket()); } else { BasketDetailModel newBasketDe = new BasketDetailModel(); newBasketDe.Quantity = bDetO.quantity; newBasketDe.Product = bDetO.ProductId.ToString().LookupProductById(); newBasketDe.Price = bDetO.quantity * newBasketDe.Product.Price; newBasketDe.Time = DateTime.Now; GlobalConfig.Connection.CreateBasketDetail(newBasketDe); // TODO: update BasketModel file List <BasketDetailModel> listBasketDetail = model.BasketDetails; listBasketDetail.Add(newBasketDe); model.BasketDetails = listBasketDetail; GlobalConfig.Connection.UpdateBasket(model.UpdateTotalAmountBasket()); } } }
public IActionResult Buy() { // létrehozunk egy foglalást csak az alapadatokkal (apartman, dátumok) BasketOrder order = _service.NewOrder(); return(View("Buy", order)); }
public void SaveOrder(string userName, BasketOrder bOrder) { context.Orders.Add(new Order { UserName = bOrder.Name, Email = bOrder.Email, Address = bOrder.Address, PhoneNumber = bOrder.PhoneNumber }); context.SaveChanges(); }
public void SaveOrder(string userName, BasketOrder bOrder) { Basket basket = GetBasketForUser(userName); context.Orders.Add(new Order { UserName = bOrder.Name, Email = bOrder.Email, Address = bOrder.Address, PhoneNumber = bOrder.PhoneNumber, Delivered = false, OrderedProducts = basket.elems.ToList() }); context.SaveChanges(); }
[ValidateAntiForgeryToken] // védelem XSRF támadás ellen public IActionResult Buy(BasketOrder order) { if (!ModelState.IsValid) { return(View("Buy", order)); } String userName = _accountService.CurrentUserName; _service.SaveOrder(userName, order); // kiszámoljuk a teljes árat order.TotalPrice = _service.GetPrice(userName); _service.EmptyBasket(userName); return(View("Result", order)); }
public void Post(BasketOrder value) { MapData.MapToBasketOrderAndUpdate(value); }
public BasketOrder NewOrder() { var order = new BasketOrder(); return(order); }
public ActionResult Verify(Guid cusId, Guid orderid) { Order order = db.Order.Find(orderid); if (Request.QueryString["Status"] != "" && Request.QueryString["Status"] != null && Request.QueryString["Authority"] != "" && Request.QueryString["Authority"] != null) { if (Request.QueryString["Status"].ToString().Equals("OK")) { int Amount = Convert.ToInt32(order.CurrentPrice); System.Net.ServicePointManager.Expect100Continue = false; ZarinPal.PaymentGatewayImplementationServicePortTypeClient zp = new ZarinPal.PaymentGatewayImplementationServicePortTypeClient(); int Status = zp.PaymentVerification("a3078700-d5bd-11e8-81b7-005056a205be", Request.QueryString["Authority"].ToString(), Amount, out long RefID); if (Status == 100) { order.IsFinaly = true; db.SaveChanges(); ViewBag.IsSuccess = true; ViewBag.RefId = RefID; List <Basket> baskets = db.Basket.Where(c => c.CustomerId == SessionParameters.Customer.CustomerId && c.IsArchive == false).ToList(); ViewBag.Status = "پرداخت شما با موفقیت انجام شد"; var customerOffer = new CustomerOffer() { CustomerId = cusId, OfferCardId = order.OfferCardId }; db.CustomerOffers.Add(customerOffer); db.SaveChanges(); foreach (Basket item in baskets) { BasketOrder basketOrder = new BasketOrder() { BasketId = item.BasketId, OrderId = orderid }; db.BasketOrder.Add(basketOrder); db.SaveChanges(); item.LangId = CultureInfo.CurrentCulture.Name; item.IsArchive = true; db.Entry(item).State = EntityState.Modified; db.SaveChanges(); Product product = item.Product; product.IsBlocked = false; product.Count--; db.Entry(product).State = EntityState.Modified; db.SaveChanges(); } } else { ViewBag.IsSuccess = false; ViewBag.Status = "خطا در انجام تراکنش"; } } else { return(Redirect("/Baskets/FinalApproval")); //Response.Write("Error! Authority: " + Request.QueryString["Authority"].ToString() + " Status: " + Request.QueryString["Status"].ToString()); } } else { Response.Write("Invalid Input"); } return(View()); }