public Shop_Order_Details GetOrderDetailByOrderId(Shop_Order_Details model) { int orderid = model.order_id; var GetOrderDetails = unitOfWork.Shop_Order_DetailsRepository.SearchBy(x => x.order_id == orderid).FirstOrDefault(); return(GetOrderDetails); }
public bool UpdateOrderDetails(Shop_Order_Details model) { try { unitOfWork.Shop_Order_DetailsRepository.Update(model); unitOfWork.SaveChanges(); return(true); } catch (Exception ex) { throw ex; } }
public Shop_Order_Details AddOrderDetail(Shop_Order_Details model) { try { unitOfWork.Shop_Order_DetailsRepository.Insert(model); unitOfWork.SaveChanges(); return(model); } catch (Exception ex) { return(null); throw; } }
public string AddOrderDetails(string mobileNumber = "", double totalPrice = 0, string addressId = "") { try { Shop_Order_Details objShop_Order_Details = new Shop_Order_Details(); objShop_Order_Details.retailer_id = mobileNumber; objShop_Order_Details.retailer_mobile = mobileNumber; objShop_Order_Details.Totalprice = totalPrice.ToString(); objShop_Order_Details.payment_mode = "Online"; objShop_Order_Details.orderDate = DateTime.Now; objShop_Order_Details.order_status = "Pending"; objShop_Order_Details.shipping_address_id = addressId; var addorder = objIUser.AddOrderDetail(objShop_Order_Details); string orderId = addorder.order_id.ToString(); var getCartDetailForMobileNumber = GetCartDetailByMobileNumber(mobileNumber); if (addorder != null) { Shop_OrderProductDetails objShop_OrderProductDetails = new Shop_OrderProductDetails(); foreach (var product in getCartDetailForMobileNumber) { objShop_OrderProductDetails.order_id = orderId; objShop_OrderProductDetails.qty = product.Quantity.ToString(); objShop_OrderProductDetails.price = product.Price; objShop_OrderProductDetails.product_id = product.ProductId.ToString(); objShop_OrderProductDetails.tr_date = DateTime.Now; var addProductorder = objIUser.AddProductOrderDetail(objShop_OrderProductDetails); } return(orderId); } else { return(null); } } catch (Exception ex) { throw ex; } }
public ActionResult Actions() { var msg = new JsonMessage(); var order = new Shop_Orders(); switch (DoAction) { case ActionType.Add: var dateCreated = DateTime.Now.TotalSeconds(); var keyorder = Request["KeyOrder"]; var lstOrder = (List <ModelWholeSaleItem>)Session["WholeSale"] ?? new List <ModelWholeSaleItem>(); var temp = _freightWarehouseDa.GetByKey(Guid.Parse(keyorder)); if (temp.IsOrder == true) { msg = new JsonMessage { Erros = true, Message = "Đơn Yêu cầu này đã được tạo đơn hàng" }; return(Json(msg)); } else { if (lstOrder.Any()) { var model = lstOrder.FirstOrDefault(c => c.Key == Guid.Parse(keyorder)); if (model != null) { var lstM = model.WholeSaleItems; var lstDetail = new List <Shop_Order_Details>(); foreach (var saleItem in lstM) { var shopOrderDetails = new Shop_Order_Details { ProductID = saleItem.ProductID, Quantity = saleItem.Quantity, Status = (int)FDI.CORE.OrderStatus.Complete, QuantityOld = 0, IsPromotion = false, Price = saleItem.Price ?? 0, Barcode = saleItem.Barcode, //DateCreated = dateCreated, Percent = saleItem.PercentSale, Value = saleItem.Value, ImportProductGID = saleItem.Idimport, PriceSale = saleItem.PriceSale, Discount = saleItem.Discount, TotalPrice = saleItem.TotalPrice * saleItem.Quantity, Total = saleItem.TotalPrice - saleItem.Discount, }; lstDetail.Add(shopOrderDetails); if (saleItem.PromotionPs != null) { lstDetail.AddRange(from shopOrderDetailse in saleItem.PromotionPs from orderDetailse in shopOrderDetailse.PromotionSPItems select new Shop_Order_Details { ProductID = orderDetailse.ProductID, Quantity = orderDetailse.Quantity, Status = (int)FDI.CORE.OrderStatus.Complete, QuantityOld = 0, Price = orderDetailse.PriceSp ?? 0, Percent = orderDetailse.Percent, PriceSale = orderDetailse.Price, //DateCreated = dateCreated, IsPromotion = true, PromotionProductID = orderDetailse.ID, Discount = orderDetailse.Percent * orderDetailse.Quantity * orderDetailse.PriceSp / 100 + orderDetailse.Price, TotalPrice = orderDetailse.TotalPrice * orderDetailse.Quantity, Total = orderDetailse.TotalPrice * orderDetailse.Quantity - (orderDetailse.Percent * orderDetailse.Quantity * orderDetailse.PriceSp + orderDetailse.Price), ContentPromotion = orderDetailse.Name }); } } var lstO = model.PromotionOrder; if (lstO != null) { lstDetail.AddRange(from itemP in lstO from items in itemP.PromotionSPItems select new Shop_Order_Details { ProductID = items.ProductID, Quantity = items.Quantity, Status = (int)FDI.CORE.OrderStatus.Complete, QuantityOld = 0, Price = items.PriceSp ?? 0, //DateCreated = dateCreated, IsPromotion = true, PromotionProductID = items.ID, Percent = items.Percent, PriceSale = items.Price, Discount = items.PriceSp + (items.PriceSp * items.Percent / 100), TotalPrice = items.TotalPrice * items.Quantity, ContentPromotion = items.Title, Total = (items.TotalPrice - items.PriceSp - (items.PriceSp * items.Percent / 100)) * items.Quantity, }); } if (lstDetail.Any()) { UpdateModel(order); var dateOfSale = Request["DateOfSale_"]; order.StartDate = dateOfSale.StringToDate().TotalSeconds(); order.DateCreated = DateTime.Now.TotalSeconds(); order.TotalPrice = model.Total; order.Total = model.Total; order.Status = (int)FDI.CORE.OrderStatus.Complete; order.IsDelete = false; order.UserId = UserItem.UserId; order.UserCreate = UserItem.UserId; order.AgencyId = UserItem.AgencyID; order.SalePercent = model.SalePercent; order.SalePrice = model.SalePrice; order.Shop_Order_Details = lstDetail; order.Discount = model.Discount ?? 0; var payment = model.Total - (order.PrizeMoney ?? 0) - order.Discount - model.DiscountSale; order.Payments = payment; order.PriceReceipt = order.Payments; if (!string.IsNullOrEmpty(order.Company) && !string.IsNullOrEmpty(order.CodeCompany)) { order.Isinvoice = true; } order.Type = (int)TypeOrder.Banbuon; _ordersDa.Add(order); _ordersDa.Save(); // set trạng thái đơn yêu cầu đã đc đặt hàng temp.IsOrder = true; _freightWarehouseDa.Save(); // xóa key tại session lstOrder.Remove(model); Session["WholeSale"] = lstOrder; } else { msg.Erros = true; msg.Message = "Bạn chưa chọn sản phẩm nào."; } } else { msg.Erros = true; msg.Message = "Không thể tạo đơn hàng."; } } else { msg.Erros = true; msg.Message = "Bạn chưa chọn sản phẩm nào."; } } break; default: msg.Message = "Bạn không được phần quyển cho chức năng này."; msg.Erros = true; break; } return(Json(msg)); }
public ActionResult Actions() { var msg = new JsonMessage(); var order = new Shop_Orders(); switch (DoAction) { case ActionType.Add: var dateCreated = DateTime.Now.TotalSeconds(); var keyorder = Request["KeyOrder"]; var lstOrder = (List <ModelSaleItem>)Session["AddSale"] ?? new List <ModelSaleItem>(); var model = lstOrder.FirstOrDefault(c => c.Key == Guid.Parse(keyorder)); if (model != null) { var lstM = model.SaleItems; var lstDetail = new List <Shop_Order_Details>(); foreach (var saleItem in lstM) { var shopOrderDetails = new Shop_Order_Details { ProductID = saleItem.ProductID, Quantity = saleItem.Quantity, Status = (int)FDI.CORE.OrderStatus.Complete, QuantityOld = 0, IsPromotion = false, Value = saleItem.Value, Price = saleItem.Price, Barcode = saleItem.Barcode, ImportProductGID = saleItem.Idimport, //DateCreated = dateCreated, Percent = saleItem.PercentSale, PriceSale = saleItem.PriceSale, Discount = saleItem.Discount, TotalPrice = saleItem.TotalPrice * saleItem.Quantity, Total = saleItem.TotalPrice - saleItem.Discount, }; lstDetail.Add(shopOrderDetails); if (saleItem.PromotionPs.Any()) { lstDetail.AddRange(from shopOrderDetailse in saleItem.PromotionPs from orderDetailse in shopOrderDetailse.PromotionSPItems select new Shop_Order_Details { ProductID = orderDetailse.ProductID, Quantity = orderDetailse.Quantity, Status = (int)FDI.CORE.OrderStatus.Complete, QuantityOld = 0, Price = orderDetailse.PriceSp ?? 0, Percent = orderDetailse.Percent, PriceSale = orderDetailse.Price, //DateCreated = dateCreated, IsPromotion = true, PromotionProductID = orderDetailse.ID, Discount = orderDetailse.Percent * orderDetailse.Quantity * orderDetailse.PriceSp / 100 + orderDetailse.Price, TotalPrice = orderDetailse.TotalPrice * orderDetailse.Quantity, Total = orderDetailse.TotalPrice * orderDetailse.Quantity - (orderDetailse.Percent * orderDetailse.Quantity * orderDetailse.PriceSp + orderDetailse.Price), ContentPromotion = orderDetailse.Name }); } } var lstO = model.PromotionOrder; lstDetail.AddRange(from itemP in lstO from items in itemP.PromotionSPItems select new Shop_Order_Details { ProductID = items.ProductID, Quantity = items.Quantity, Status = (int)FDI.CORE.OrderStatus.Complete, QuantityOld = 0, Price = items.PriceSp ?? 0, //DateCreated = dateCreated, IsPromotion = true, PromotionProductID = items.ID, Percent = items.Percent, PriceSale = items.Price, Discount = items.PriceSp + (items.PriceSp * items.Percent / 100), TotalPrice = items.TotalPrice * items.Quantity, ContentPromotion = items.Title, Total = (items.TotalPrice - items.PriceSp - (items.PriceSp * items.Percent / 100)) * items.Quantity, }); if (lstDetail.Any()) { UpdateModel(order); var dateOfSale = Request["DateOfSale_"]; order.StartDate = dateOfSale.StringToDate().TotalSeconds(); order.DateCreated = DateTime.Now.TotalSeconds(); order.TotalPrice = model.TotalPrice; order.Total = model.Total; order.Status = (int)FDI.CORE.OrderStatus.Complete; order.IsDelete = false; order.UserId = UserItem.UserId; order.UserCreate = UserItem.UserId; order.AgencyId = UserItem.AgencyID; order.SalePercent = model.SalePercent; order.SalePrice = model.SalePrice; order.Shop_Order_Details = lstDetail; decimal?price = 0; if (!string.IsNullOrEmpty(order.SaleCode)) { var temp = _dnSalesDa.GetSaleCodebyCode(order.SaleCode); temp.IsUse = true; temp.DateUse = DateTime.Now.TotalSeconds(); price = (temp.DN_Sale.Price ?? 0) + ((temp.DN_Sale.Percent ?? 0) * order.TotalPrice / 100); _dnSalesDa.Save(); } order.Discount = model.Discount; var payment = model.Total - (order.PrizeMoney ?? 0) - order.Discount - price ?? 0; order.Payments = payment; order.PriceReceipt = order.Payments; if (!string.IsNullOrEmpty(order.Company) && !string.IsNullOrEmpty(order.CodeCompany)) { order.Isinvoice = true; } _ordersDa.Add(order); _ordersDa.Save(); } else { msg.Erros = true; msg.Message = "Bạn chưa chọn sản phẩm nào."; } } else { msg.Erros = true; msg.Message = "Bạn chưa chọn sản phẩm nào."; } break; default: msg.Message = "Bạn không được phần quyển cho chức năng này."; msg.Erros = true; break; } return(Json(msg)); }
public async Task <ActionResult> Booking(List <OrderAppIG4Item> datas) { try { decimal?totalall = 0; var listOrder = new List <Shop_Orders>(); foreach (var data in datas) { if (data.LisOrderDetailItems == null || !data.LisOrderDetailItems.Any()) { return(Json(new JsonMessage(1000, "Không có sản phẩm trong giỏ hàng"), JsonRequestBehavior.AllowGet)); } SaleCode coupon = null; if (!string.IsNullOrEmpty(data.Coupon)) { coupon = _productDa.GetSaleCodeUseByCode(data.Coupon); if (coupon != null) { coupon.IsUse = true; } //if (coupon == null) //{ // return Json(new JsonMessage(1000, "Coupon không tồn tại")); //} } var order = new Shop_Orders() { Address = data.Address, CustomerID = CustomerId, Longitude = data.Longitude, Latitude = data.Latitude, Mobile = data.Mobile, CustomerName = data.CustomerName, DateCreated = DateTime.Now.TotalSeconds(), Code = FDIUtils.RandomCode(12), FeeShip = data.FeeShip ?? 0, StatusPayment = (int)PaymentOrder.Process, Coupon = data.Coupon, ShopID = data.ShopID, //Discount = data.Discount, CouponPrice = coupon?.DN_Sale.Price ?? 0, PaymentMethodId = data.PaymentmethodId, Status = (int)StatusOrder.Create, Note = data.Note, CustomerAddressID = data.CustomerAddressID, }; order.CouponPrice = !string.IsNullOrEmpty(data.Coupon) ? coupon.DN_Sale.Price ?? 0 : order.CouponPrice = 0; foreach (var product in data.LisOrderDetailItems) { var productData = _productDa.GetProductItem(product.ProductId ?? 0); if (productData == null) { return(Json(new JsonMessage(1000, "Sản phẩm không tồn tại"), JsonRequestBehavior.AllowGet)); } var item = new Shop_Order_Details() { ProductID = product.ProductId, Price = productData.PriceNew ?? 0, Quantity = product.Quantity ?? 1, Status = (int)StatusOrder.Create, TotalPrice = productData.PriceNew * (product.Quantity ?? 1), StatusPayment = (int)PaymentOrder.Process, IsPrestige = product.IsPrestige, }; order.Shop_Order_Details.Add(item); } var total = order.Shop_Order_Details.Sum(m => m.Price * m.Quantity); order.Total = total; order.TotalPrice = total; order.Payments = total - order.CouponPrice + data.FeeShip; totalall += total - order.CouponPrice + data.FeeShip; listOrder.Add(order); //orderDA.Add(order); } //kiểm tra ví và trừ tiền khách hàng sau đó lưu đơn hàng var check = CheckWallets(totalall, CustomerId); if (check) { foreach (var order in listOrder) { orderDA.Add(order); await orderDA.SaveAsync(); var cashout = new CashOutWallet { CustomerID = CustomerId, TotalPrice = order.Payments, DateCreate = DateTime.Now.TotalSeconds(), OrderID = order.ID, Type = 1, Code = order.Code, }; _cashOutWalletDa.Add(cashout); _cashOutWalletDa.Save(); } await _productDa.SaveAsync(); } else { return(Json(new JsonMessage(1001, "Tài khoản của bạn không đủ tiền."), JsonRequestBehavior.AllowGet)); } } catch (Exception e) { return(Json(new JsonMessage(404, e.ToString()), JsonRequestBehavior.AllowGet)); } return(Json(new JsonMessage(200, ""), JsonRequestBehavior.AllowGet)); }
public void Add(Shop_Order_Details obj) { FDIDB.Shop_Order_Details.Add(obj); }
public bool UpdateOrderDeatils(OrderViewModel model, string type = "") { EmailFunction objEmailFunction = new EmailFunction(); EmailViewModel objEmailViewModel = new EmailViewModel(); if (type == "online") { // EmailFunction objEmailFunction = new EmailFunction(); Shop_Order_Details objShop_Order_Details = new Shop_Order_Details(); objShop_Order_Details.order_id = model.Order_Id; var getOrderIndo = objIUser.GetOrderDetailByOrderId(objShop_Order_Details); if (getOrderIndo != null) { getOrderIndo.rzp_order_id = model.rzp_order_id; getOrderIndo.rzp_payment_id = model.rzp_payment_id; getOrderIndo.rzp_payment_status = model.rzp_payment_status; getOrderIndo.order_status = model.order_status; getOrderIndo.rzp_payment_status = model.rzp_payment_status; var result = objIUser.UpdateOrderDetails(getOrderIndo); //for Email if (result) { #region to get shipping address // ToString get shipping address long shippingId = Convert.ToInt64(getOrderIndo.shipping_address_id); var getShippingAddress = objIUser.GetShippingAddress(shippingId); #endregion #region to get userdetails //to get ratialer detail string mobileNumnber = getOrderIndo.retailer_mobile; var getRetailerDetails = objIUser.GetRetailerDetails(mobileNumnber); #endregion //#region to get product details //string orderId= model.Order_Id.ToString(); //var getOrderProducts= objIUser.GetOrderProducts(orderId); //Shop_Product_Master objShop_Product_Master = new Shop_Product_Master(); //foreach (var productId in getOrderProducts) //{ // objShop_Product_Master.pkSkuId =Convert.ToInt32( productId.product_id); //} //var getProductDetail = objIUser.GetProductDetail(objShop_Product_Master); //#endregion objEmailViewModel.OrderId = model.Order_Id; objEmailViewModel.FirmName = getRetailerDetails.firm_name; objEmailViewModel.RetailerName = getRetailerDetails.firm_name; //objEmailViewModel.Product = ""; objEmailViewModel.ShippingAddress = getShippingAddress.ship_address + " " + getShippingAddress.city + " " + getShippingAddress.pincode; objEmailViewModel.MobileNumber = getOrderIndo.retailer_mobile; objEmailViewModel.Amount = getOrderIndo.Totalprice; objEmailViewModel.PaymentMode = type; objEmailViewModel.OrderDate = getOrderIndo.orderDate; objEmailFunction.SendEmailAfterOrderPlaced(objEmailViewModel, type); } else { } return(result); } else { return(false); } } else { Shop_Order_Details objShop_Order_Details = new Shop_Order_Details(); objShop_Order_Details.order_id = model.Order_Id; var getOrderIndo = objIUser.GetOrderDetailByOrderId(objShop_Order_Details); if (getOrderIndo != null) { if (type == "DAP") { getOrderIndo.payment_mode = "Delivery Against Payment"; getOrderIndo.order_status = "Submitted"; getOrderIndo.rzp_payment_status = "success"; } else { getOrderIndo.payment_mode = "Cash On Delivery"; getOrderIndo.order_status = "Submitted"; getOrderIndo.rzp_payment_status = "success"; } var result = objIUser.UpdateOrderDetails(getOrderIndo); #region to get shipping address // ToString get shipping address long shippingId = Convert.ToInt64(getOrderIndo.shipping_address_id); var getShippingAddress = objIUser.GetShippingAddress(shippingId); #endregion #region to get userdetails //to get ratialer detail string mobileNumnber = getOrderIndo.retailer_mobile; var getRetailerDetails = objIUser.GetRetailerDetails(mobileNumnber); #endregion #region to get product details string orderId = model.Order_Id.ToString(); var productIds = objIUser.GetOrderProducts(orderId); var getProductDetail = objIUser.GetProductDetail(productIds); #endregion objEmailViewModel.OrderId = model.Order_Id; objEmailViewModel.FirmName = getRetailerDetails.firm_name; objEmailViewModel.RetailerName = getRetailerDetails.firm_name; objEmailViewModel.Product = getProductDetail; objEmailViewModel.ShippingAddress = getShippingAddress.ship_address + " " + getShippingAddress.city + " " + getShippingAddress.pincode; objEmailViewModel.MobileNumber = getOrderIndo.retailer_mobile; objEmailViewModel.Amount = getOrderIndo.Totalprice; objEmailViewModel.PaymentMode = type; objEmailViewModel.OrderDate = getOrderIndo.orderDate; objEmailFunction.SendEmailAfterOrderPlaced(objEmailViewModel, type); return(result); } else { return(false); } } }