public async Task<ActionResult> Edit() { if (User.Identity.IsAuthenticated) { ApplicationDbContext mycontext = new ApplicationDbContext(); UserStore<ApplicationUser> myStore = new UserStore<ApplicationUser>(mycontext); ApplicationUserManager mgr = new ApplicationUserManager(myStore); var user = await mgr.FindByNameAsync(User.Identity.Name); WishlistActions grantMyWish = new WishlistActions(); CartActions cart = new CartActions(); ProductViewModel bridge = new ProductViewModel(); List<Book> bookList = new List<Book>(); List<Technology> deviceList = new List<Technology>(); myHandler = new BusinessLogicHandler(); bridge.allWishlistItems = new List<WishlistItem>(); bridge.allWishlistItems = grantMyWish.GetWishlistItems(user.Wishlists.WishlistID); if(bridge.allWishlistItems != null) { bridge.allBook = new List<Book>(); foreach(var item in bridge.allWishlistItems) { if(myHandler.CheckProductType(item.ProductID)) { Book myBook = new Book(); myBook = myHandler.GetBook(item.ProductID); bookList.Add(myBook); } else { Technology myDevice = new Technology(); myDevice = myHandler.GetTechnologyDetails(item.ProductID); deviceList.Add(myDevice); } } //bridge.allBook = myHandler.GetBooks(); bridge.allTechnology = new List<Technology>(); //bridge.allTechnology = myHandler.GetTechnology(); bridge.allBook = bookList; bridge.allTechnology = deviceList; } Session["wishlistTotal"] = grantMyWish.GetWishlistTotal(user.Wishlists.WishlistID); Session["cartTotal"] = cart.GetTotalAsync(user.Carts.CartID); return View(bridge); } else return RedirectToAction("Login", "Account", null); }
public ActionResult Details(int OrderNumber) { #region Prep Utilities myHandler = new BusinessLogicHandler(); OrderLineModel model = new OrderLineModel(); #endregion #region Get Order Details model.OrderLineDetails = myHandler.GetOrderItemsList(OrderNumber); model.OrderDetails = myHandler.GetOrder(OrderNumber); model.SupplierDetails = myHandler.GetSupplier(model.OrderDetails.SupplierID); #endregion #region Get Order Total model.totally = 0; foreach(var item in model.OrderLineDetails) { if(myHandler.CheckProductType(item.ProductID)) { Book myBook = new Book(); myBook = myHandler.GetBook(item.ProductID); model.totally += (myBook.SellingPrice*item.Quantity); } else { Technology device = new Technology(); device = myHandler.GetTechnologyDetails(item.ProductID); model.totally += (device.SellingPrice * item.Quantity); } } #endregion return PartialView(model); }
public ActionResult Restore(int ProductID) { { AddNewBookViewModel model = new AddNewBookViewModel(); model.books = new Book(); model.books = book; myHandler = new BusinessLogicHandler(); model.books = myHandler.GetBook(ProductID); return View(model); } }
public ActionResult Edit(int productId) { #region Prep Utilities AddNewBookViewModel model = new AddNewBookViewModel(); model.model_ID = new Guid("11111111-1111-1111-1111-111111111111").ToString(); #endregion myHandler = new BusinessLogicHandler(); Book book = myHandler.GetBook(productId); IEnumerable<BookAuthor> bookAuthorList = myHandler.GetBookAuthors(book.BookID); model.books = new Book(); model.books = book; #region Create SupplierHandler supHandler = new SupplierHandler(); /*TEMP LIST*/ //List<Supplier> nameList = new List<Supplier>(); IEnumerable<Supplier> nameList = (IEnumerable<Supplier>)supHandler.GetBookSupplierList(); var disp = from nameAndId in nameList select new { Value = nameAndId.SupplierID, Text = nameAndId.Name }; ViewBag.SupplierList = new SelectList(disp.ToList()); BookCategoryHandler typeHandler = new BookCategoryHandler(); IEnumerable<BookCategory> typeList = (IEnumerable<BookCategory>)typeHandler.GetBookCategoryList(); var dispBC = from name in typeList select new { Value = name.BookCategoryID, Text = name.CategoryName }; ViewBag.BookCategoryList = new SelectList(dispBC.ToList()); AuthorHandler authHandler = new AuthorHandler(); IEnumerable<Author> authList = (IEnumerable<Author>)authHandler.GetAuthorList(); var dispAuth = from nameAndSurname in authList select new { Value = nameAndSurname.AuthorID, Text = nameAndSurname.Name, nameAndSurname.Surname }; ViewBag.authList = new SelectList(dispAuth.ToList()); PublisherHandler publHandler = new PublisherHandler(); IEnumerable<Publisher> pubList = (IEnumerable<Publisher>)publHandler.GetPublisherList(); var dispPublisher = from pubName in pubList select new { Value = pubName.PublisherID, Text = pubName.Name }; ViewBag.pubList = new SelectList(dispPublisher.ToList()); #endregion Supplier sp = new Supplier(); Author ath = new Author(); BookCategory bkc = new BookCategory(); Publisher pb = new Publisher(); foreach (var item in nameList) { if (item.SupplierID == model.books.SupplierID) { sp.SupplierID = item.SupplierID; sp.Name = item.Name; } } int[] authors = new int[bookAuthorList.Count()]; int x = 0; foreach (var item in bookAuthorList) { if (item.BookID == model.books.BookID) { authors[x] = item.AuthorID; x++; } } foreach (var item in pubList) { if (item.PublisherID == model.books.PublisherID) { pb.PublisherID = item.PublisherID; pb.Name = item.Name; } } foreach (var item in typeList) { if (item.BookCategoryID == model.books.BookCategoryID) { bkc.BookCategoryID = item.BookCategoryID; bkc.CategoryName = item.CategoryName; } } #region Display List<SelectListItem> publisher = new List<SelectListItem>(); publisher.Add(new SelectListItem { Value = pb.PublisherID.ToString(), Text = pb.Name, Selected = true }); foreach (var item in pubList) { if (item.PublisherID != pb.PublisherID) publisher.Add(new SelectListItem { Text = item.Name, Value = item.PublisherID.ToString() }); } model.publishers = new List<SelectListItem>(); model.publishers = publisher; ViewData["publishers"] = publisher; List<SelectListItem> bookCategory = new List<SelectListItem>(); bookCategory.Add(new SelectListItem { Value = bkc.BookCategoryID.ToString(), Text = bkc.CategoryName, Selected = true }); foreach (var item in typeList) { if (item.BookCategoryID != bkc.BookCategoryID) bookCategory.Add(new SelectListItem { Text = item.CategoryName, Value = item.BookCategoryID.ToString() }); } model.bookCategories = new List<SelectListItem>(); model.bookCategories = bookCategory; ViewData["bookCategories"] = bookCategory; List<SelectListItem> supplier = new List<SelectListItem>(); supplier.Add(new SelectListItem { Value = sp.SupplierID.ToString(), Text = sp.Name, Selected = true }); foreach (var item in nameList) { if (item.SupplierID != sp.SupplierID) supplier.Add(new SelectListItem { Text = item.Name, Value = item.SupplierID.ToString() }); } model.suppliers = new List<SelectListItem>(); model.suppliers = supplier; ViewData["suppliers"] = supplier; List<SelectListItem> author = new List<SelectListItem>(); foreach (var item in authList) { if (authors.Contains(item.AuthorID)) { author.Add(new SelectListItem { Text = item.Name, Value = item.AuthorID.ToString(), Selected = true }); } else { author.Add(new SelectListItem { Text = item.Name, Value = item.AuthorID.ToString() }); } } model.authors = new List<SelectListItem>(); model.authors = author; ViewData["authors"] = author; #endregion return View(model); }
public ActionResult Details(int ProductID) { myHandler = new BusinessLogicHandler(); Book book = myHandler.GetBook(ProductID); return View(book); }
public async Task<ActionResult> Receipt(int? IID) { List<CartItem> myItems = new List<CartItem>(); myItems = (List<CartItem>)Session["myItems"]; ProductViewModel model = new ProductViewModel(); myHandler = new BusinessLogicHandler(); model = (ProductViewModel)Session["deliverData"]; #region Get Cart Items List<Book> ifBooks = new List<Book>(); List<Technology> ifGadget = new List<Technology>(); foreach (var item in myItems) { if (myHandler.CheckProductType(item.ProductID)) { Book book = new Book(); book = myHandler.GetBook(item.ProductID); ifBooks.Add(book); } else { Technology gadget = new Technology(); gadget = myHandler.GetTechnologyDetails(item.ProductID); ifGadget.Add(gadget); } //try //{ // Book book = new Book(); // book = myHandler.GetBook(item.ProductID); // ifBooks.Add(book); //} //catch //{ // Technology gadget = new Technology(); // gadget = myHandler.GetTechnologyDetails(item.ProductID); // ifGadget.Add(gadget); //} } model.allTechnology = ifGadget; model.allBook = ifBooks; model.allCartItem = myItems; #endregion #region Push User Details string userName = User.Identity.GetUserName(); ApplicationDbContext dataSocket = new ApplicationDbContext(); UserStore<ApplicationUser> myStore = new UserStore<ApplicationUser>(dataSocket); userMgr = new ApplicationUserManager(myStore); var user = userMgr.FindByEmail(userName); model.UserDetails = new ProvideUser(); model.UserDetails.Address = user.Address; model.UserDetails.email = user.Email; model.UserDetails.PhoneNumber = user.PhoneNumber; CustomerContext customer = new CustomerContext(); Customer thisCust = new Customer(); thisCust = customer.Customers.FirstOrDefault(cust => cust.User_Id == user.Id); model.UserDetails.LName = thisCust.LastName; model.UserDetails.Name = thisCust.FirstName; #endregion #region Push Invoice nfo model.recieptData = new Invoice(); model.recieptData = myHandler.GetInvoice(IID.GetValueOrDefault()); #endregion #region Push Company nfo myHandler = new BusinessLogicHandler(); model.company = new Company(); model.company = myHandler.GetCompanyDetail(); #endregion #region Push Delivery nfo Delivery shipping = new Delivery(); myHandler = new BusinessLogicHandler(); shipping = myHandler.GetDeliveryDetails(model.recieptData.DeliveryServiceID); model.deliveryHelper.DeliveryServiceName = shipping.ServiceName; model.deliveryHelper.DeliveryServicePrice = shipping.Price; model.deliveryHelper.DeliveryServiceType = shipping.ServiceType; #endregion #region Calculate List<ProductViewModel.CartHelper> itemList = new List<ProductViewModel.CartHelper>(); ProductViewModel.CartHelper cartHelp; if (myItems != null) { if (ifBooks != null) { var revised = from rev in ifBooks join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity, item.CartItemID }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.CartItemID = ite.CartItemID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } } if (myItems != null) { if (ifGadget != null) { var revised = from rev in ifGadget join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity, item.CartItemID }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.CartItemID = ite.CartItemID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } } double cartTotal = Convert.ToDouble(Session["cartTotal"].ToString()); cartTotal = cartTotal / 100; myHandler = new BusinessLogicHandler(); List<Company> company = myHandler.GetCompanyDetails(); double vat = 0; cartTotal += Convert.ToDouble(model.deliveryHelper.DeliveryServicePrice); foreach (var item in company) { vat = item.VATPercentage; } vat = vat + 1; double subTotal = cartTotal / vat; double vatAmount = cartTotal - subTotal; ProductViewModel.CartConclude finishing = new ProductViewModel.CartConclude(); finishing.CartTotal = cartTotal; finishing.VatAddedTotal = vatAmount; finishing.SubTotal = subTotal; model.ItsA_wrap = new List<ProductViewModel.CartConclude>(); model.ItsA_wrap.Add(finishing); model.secureCart = itemList; #endregion #region Clear the cart foreach (var item in itemList) { myHandler = new BusinessLogicHandler(); myHandler.DeleteCartItem(item.CartItemID); } #endregion #region Clear SESSION Session["myItems"] = null; Session["cartTotal"] = (double) await GetCartTotal(user.Carts.CartID); #endregion #region Prep for exporting to PDF Session["pdf"] = model; #endregion return View(model); }
public ActionResult Checkout(FormCollection collection, ProductViewModel model) { Delivery shipping = new Delivery(); IEnumerable<Book> ifBooks = (IEnumerable<Book>)Session["myBooks"]; IEnumerable<Technology> ifGadget = (IEnumerable<Technology>)Session["myGadget"]; List<CartItem> myItems = (List<CartItem>)Session["myItems"]; myHandler = new BusinessLogicHandler(); #region Get Shipping Data try { shipping = myHandler.GetDeliveryDetails(Convert.ToInt32(collection[1].ToString())); if (ModelState.ContainsKey("I_DeliveryList")) ModelState["I_DeliveryList"].Errors.Clear(); } catch { ModelState.AddModelError("deliveryHelper.DeliveryServicePrice", "Please select a delivery service from dropdown !"); } #endregion #region Cathing model errors var error = ModelState.Values.SelectMany(e => e.Errors); var errors = ModelState .Where(x => x.Value.Errors.Count > 0) .Select(x => new { x.Key, x.Value.Errors }) .ToArray(); #endregion int? IID = 0; if (ModelState.IsValid) { #region Get User string userName = User.Identity.GetUserName(); ApplicationDbContext dataSocket = new ApplicationDbContext(); UserStore<ApplicationUser> myStore = new UserStore<ApplicationUser>(dataSocket); userMgr = new ApplicationUserManager(myStore); var user = userMgr.FindByEmail(userName); #endregion try { #region Creating the reciept/invoice Invoice reciept = new Invoice { User_Id = user.Id, DateCreated = DateTime.Now, DeliveryAddress = model.deliveryHelper.DeliveryAddress, DeliveryServiceID = Convert.ToInt32(collection[1].ToString()), Status = false }; try { InvoiceItem invoiceLine = new InvoiceItem(); invoiceLine = myHandler.GetInvoiceLastNumber(reciept); foreach (var item in myItems) { invoiceLine.CartItemID = item.CartItemID; invoiceLine.ProductID = item.ProductID; invoiceLine.Quantity = item.Quantity; #region Get Product Price bool chk = false; chk = myHandler.CheckProductType(item.ProductID); if (chk) { Book book = new Book(); book = myHandler.GetBook(item.ProductID); invoiceLine.Price = book.SellingPrice; myHandler.AddinvoiceItem(invoiceLine); } else { Technology device = new Technology(); device = myHandler.GetTechnologyDetails(item.ProductID); invoiceLine.Price = device.SellingPrice; myHandler.AddinvoiceItem(invoiceLine); } #endregion } IID = invoiceLine.InvoiceID; } catch { } #endregion #region Placing the order try { #region Prep Utilities Order ord; Book book = new Book(); Technology gadget = new Technology(); int supplierId = 0; OrderItem orderLine = new OrderItem(); myHandler = new BusinessLogicHandler(); List<int> orders = new List<int>(); List<int> suppliers = new List<int>(); #endregion foreach (var item in myItems) { if (myHandler.CheckProductType(item.ProductID)) { book = myHandler.GetBook(item.ProductID); supplierId = book.SupplierID; if (suppliers.Contains(book.SupplierID)) { int x = suppliers.IndexOf(supplierId); orderLine.OrderNo = orders.ElementAt(x); orderLine.ProductID = item.ProductID; orderLine.Quantity = item.Quantity; myHandler.AddOrderItem(orderLine); } else { suppliers.Add(supplierId); ord = new Order { DateCreated = DateTime.Now.Date, SupplierID = supplierId, InvoiceID = IID.GetValueOrDefault(), DateLastModified = DateTime.Now.Date, Status = false }; orderLine = myHandler.AddOrder(ord); orders.Add(orderLine.OrderNo); orderLine.ProductID = item.ProductID; orderLine.Quantity = item.Quantity; myHandler.AddOrderItem(orderLine); } } else { supplierId = ifGadget.SingleOrDefault(m => m.ProductID == item.ProductID).SupplierID; if (suppliers.Contains(supplierId)) { int y = suppliers.IndexOf(supplierId); orderLine.OrderNo = orders.ElementAt(y); orderLine.ProductID = item.ProductID; orderLine.Quantity = item.Quantity; myHandler.AddOrderItem(orderLine); } else { suppliers.Add(supplierId); ord = new Order { DateCreated = DateTime.Now.Date, SupplierID = supplierId, InvoiceID = IID.GetValueOrDefault(), DateLastModified = DateTime.Now.Date, Status = false }; orderLine = myHandler.AddOrder(ord); orders.Add(orderLine.OrderNo); orderLine.ProductID = item.ProductID; orderLine.Quantity = item.Quantity; myHandler.AddOrderItem(orderLine); } } } } catch { } #endregion } catch {/*Navigate to custom error page*/ } Session["deliverData"] = model; return RedirectToAction("Receipt", new { IID = IID }); } else { #region Feed The Model CartItem thishereItem = new CartItem(); try { ProductViewModel.CartHelper cartHelp; List<ProductViewModel.CartHelper> itemList = new List<ProductViewModel.CartHelper>(); double cartTotal = 0; if (myItems != null) { if (ifBooks != null) { var revised = from rev in ifBooks join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); cartTotal += (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } if (ifGadget != null) { var revised = from rev in ifGadget join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); cartTotal += (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } } List<Company> company = new List<Company>(); myHandler = new BusinessLogicHandler(); company = myHandler.GetCompanyDetails(); double vat = 0; foreach (var item in company) { vat = item.VATPercentage; } //calc double vatAmount = (cartTotal * vat); double subTotal = (cartTotal - vatAmount); ProductViewModel.CartConclude finishing = new ProductViewModel.CartConclude(); finishing.CartTotal = cartTotal; finishing.VatAddedTotal = vatAmount; finishing.SubTotal = subTotal; model.ItsA_wrap = new List<ProductViewModel.CartConclude>(); model.ItsA_wrap.Add(finishing); model.deliveryHelper.DeliveryServiceName = shipping.ServiceName; model.deliveryHelper.DeliveryServicePrice = shipping.Price; model.deliveryHelper.DeliveryServiceType = shipping.ServiceType; model.secureCart = itemList; model.allBook = new List<Book>(); model.allBook = ifBooks.ToList() ; model.allCartItem = new List<CartItem>(); model.allCartItem = myItems; model.allTechnology = new List<Technology>(); model.allTechnology = ifGadget.ToList(); } catch { } #endregion #region Drop down data DeliveryHandler deliver = new DeliveryHandler(); IEnumerable<Delivery> delivery = (IEnumerable<Delivery>)deliver.GetDeliveryList(); var dataStore = from name in delivery select new { Value = name.DeliveryServiceID, Text = name.ServiceName }; ViewBag.DeliveryList = new SelectList(dataStore.ToList()); List<SelectListItem> deliveryI = new List<SelectListItem>(); deliveryI.Add(new SelectListItem { Text = "Delivery Service", Value = "", Selected = true }); foreach (var item in delivery) { deliveryI.Add(new SelectListItem { Text = item.ServiceName, Value = item.DeliveryServiceID.ToString() }); } model.I_DeliveryList = new List<SelectListItem>(); model.I_DeliveryList = deliveryI; ViewData["I_Delivery"] = deliveryI; #endregion return View(model); } }
public async Task<ActionResult> Checkout() { #region Data to Display CartActions act = new CartActions(); WishlistActions wishAct = new WishlistActions(); ApplicationDbContext dataSocket = new ApplicationDbContext(); UserStore<ApplicationUser> myStore = new UserStore<ApplicationUser>(dataSocket); userMgr = new ApplicationUserManager(myStore); var thisUser = await userMgr.FindByNameAsync(User.Identity.Name); int Id = (int)thisUser.Carts.CartID; try { double nm = await GetCartTotal(Id); string[] xn = nm.ToString().Split('.'); Session["cartTotal"] = xn[0] + "," + xn[1]; } catch { Session["cartTotal"] = act.GetTotalAsync(Id); } Session["wishlistTotal"] = wishAct.GetWishlistTotal(thisUser.Wishlists.WishlistID); //List<CartItem> myItems = new List<CartItem>(); ProductViewModel myNewModel = new ProductViewModel(); IEnumerable<CartItem> myItems = act.GetCartItemsAsync(Id); if (myItems != null) { myHandler = new BusinessLogicHandler(); List<Book> ifBooks = new List<Book>(); List<Technology> ifGadget = new List<Technology>(); foreach (var item in myItems) { if (myHandler.CheckProductType(item.ProductID)) { Book book = new Book(); book = myHandler.GetBook(item.ProductID); ifBooks.Add(book); } else { Technology device = new Technology(); device = myHandler.GetTechnologyDetails(item.ProductID); ifGadget.Add(device); } } myNewModel.allBook = ifBooks; myNewModel.allCartItem = myItems.ToList(); myNewModel.allTechnology = ifGadget; List<ProductViewModel.CartHelper> itemList = new List<ProductViewModel.CartHelper>(); ProductViewModel.CartHelper cartHelp; if (myItems != null) { var revised = from rev in ifBooks join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } if (myItems != null) { if (ifGadget != null) { var revised = from rev in ifGadget join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } } double cartTotal = Convert.ToDouble(Session["cartTotal"].ToString()); cartTotal = cartTotal / 100; List<Company> company = myHandler.GetCompanyDetails(); double vat = 0; foreach (var item in company) { vat = item.VATPercentage; } vat = vat + 1; double subTotal = cartTotal / vat; double vatAmount = cartTotal - subTotal; ProductViewModel.CartConclude finishing = new ProductViewModel.CartConclude(); finishing.CartTotal = cartTotal; finishing.VatAddedTotal = vatAmount; finishing.SubTotal = subTotal; myNewModel.ItsA_wrap = new List<ProductViewModel.CartConclude>(); myNewModel.ItsA_wrap.Add(finishing); myNewModel.secureCart = itemList; } else { return RedirectToAction("Edit"); } #endregion #region Drop down data DeliveryHandler deliver = new DeliveryHandler(); IEnumerable<Delivery> delivery = (IEnumerable<Delivery>)deliver.GetDeliveryList(); var dataStore = from name in delivery select new { Value = name.DeliveryServiceID, Text = name.ServiceName }; ViewBag.DeliveryList = new SelectList(dataStore.ToList()); List<SelectListItem> deliveryI = new List<SelectListItem>(); deliveryI.Add(new SelectListItem { Text = "Delivery Service", Value = "", Selected = true }); foreach (var item in delivery) { deliveryI.Add(new SelectListItem { Text = item.ServiceName, Value = item.DeliveryServiceID.ToString() }); } myNewModel.I_DeliveryList = new List<SelectListItem>(); myNewModel.I_DeliveryList = deliveryI; ViewData["I_Delivery"] = deliveryI; #endregion #region Default Address if (thisUser.Address != null) { myNewModel.deliveryHelper = new DeliveryHelper(); myNewModel.deliveryHelper.DeliveryAddress = thisUser.Address; } #endregion return View(myNewModel); }
public async Task<ActionResult> Edit() { CartActions act = new CartActions(); WishlistActions wishAct = new WishlistActions(); ApplicationDbContext dataSocket = new ApplicationDbContext(); UserStore<ApplicationUser> myStore = new UserStore<ApplicationUser>(dataSocket); userMgr = new ApplicationUserManager(myStore); var thisUser = await userMgr.FindByNameAsync(User.Identity.Name); int Id = (int)thisUser.Carts.CartID; try { double nm = await GetCartTotal(Id); string[] xn = nm.ToString().Split('.'); Session["cartTotal"] = xn[0] + "," + xn[1]; } catch { Session["cartTotal"] = act.GetTotalAsync(Id); } Session["wishlistTotal"] = wishAct.GetWishlistTotal(thisUser.Wishlists.WishlistID); List<CartItem> myItems = new List<CartItem>(); try { myItems = act.GetCartItemsAsync(Id).ToList();} catch(ArgumentNullException) { myItems = null; } myHandler = new BusinessLogicHandler(); List<Book> ifBooks = new List<Book>(); ProductViewModel myNewModel = new ProductViewModel(); List<Technology> ifGadget = new List<Technology>(); if (myItems != null) { foreach (var item in myItems) { if (myHandler.CheckProductType(item.ProductID)) { Book book = new Book(); book = myHandler.GetBook(item.ProductID); ifBooks.Add(book); } else { Technology device = new Technology(); device = myHandler.GetTechnologyDetails(item.ProductID); ifGadget.Add(device); } } myNewModel.allCartItem = new List<CartItem>(); myNewModel.allBook = new List<Book>(); myNewModel.allTechnology = new List<Technology>(); List<ProductViewModel.CartHelper> itemList = new List<ProductViewModel.CartHelper>(); ProductViewModel.CartHelper cartHelp; if (myItems != null) { if (ifBooks != null) { var revised = from rev in ifBooks join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } } if (myItems != null) { if (ifGadget != null) { var revised = from rev in ifGadget join item in myItems on rev.ProductID equals item.ProductID where rev.ProductID == item.ProductID select new { rev.ProductID, rev.SellingPrice, item.Quantity }; foreach (var ite in revised) { cartHelp = new ProductViewModel.CartHelper(); cartHelp.ProductID = ite.ProductID; cartHelp.TotalPerItem = (ite.SellingPrice * ite.Quantity); itemList.Add(cartHelp); } } } double cartTotal = Convert.ToDouble(Session["cartTotal"].ToString()); cartTotal = cartTotal / 100; List<Company> company = myHandler.GetCompanyDetails(); double vat = 0; foreach (var item in company) { vat = item.VATPercentage; } vat = vat + 1; double subTotal = cartTotal / vat; double vatAmount = cartTotal - subTotal; ProductViewModel.CartConclude finishing = new ProductViewModel.CartConclude(); finishing.CartTotal = cartTotal; finishing.VatAddedTotal = vatAmount; finishing.SubTotal = subTotal; myNewModel.allBook = ifBooks; myNewModel.allCartItem = myItems; myNewModel.allTechnology = ifGadget; myNewModel.ItsA_wrap = new List<ProductViewModel.CartConclude>(); myNewModel.ItsA_wrap.Add(finishing); myNewModel.secureCart = itemList; return View(myNewModel); } else { myNewModel.ItsA_wrap = new List<ProductViewModel.CartConclude>(); return View(myNewModel); } }
public ActionResult Product(int ProductID) { #region Prep Utilities myHandler = new BusinessLogicHandler(); UnifiedViewModel model = new UnifiedViewModel(); Author Author = new Author(); #endregion #region Config Roles if(User.IsInRole("supplier")) { model.iSupplier = true; } #endregion #region Get the Data if (myHandler.CheckProductType(ProductID)) { model.Book = new Book(); model.Book = myHandler.GetBook(ProductID); model.BookCategory = new BookCategory(); model.BookCategory = myHandler.GetBookCategory(model.Book.BookCategoryID); model.Publisher = new Publisher(); model.Publisher = myHandler.GetPublisher(model.Book.PublisherID); IEnumerable<BookAuthor> authorsINbook = myHandler.GetBookAuthors(model.Book.BookID); model.Authors = new List<Author>(); foreach(var item in authorsINbook) { Author = myHandler.GetAuthorDetails(item.AuthorID); model.Authors.Add(Author); } } else { model.Device = new Technology(); model.Device = myHandler.GetTechnologyDetails(ProductID); model.Manufacturer = new Manufacturer(); model.Manufacturer = myHandler.GetManufacturer(model.Device.ManufacturerID); model.Category = new TechCategory(); model.Category = myHandler.GetTechnologyType(model.Device.TechCategoryID); } #endregion return View(model); }