public IActionResult actionResult1(int page, int pageSize, string DOY) { var skipData = pageSize * (page - 1); var orderList = new List <OrderDeatils>(); var data = new List <Models.Checkout>(); try { if (DOY != null) { var first = DateTime.Now; if (DOY == "day") { data = db.Checkouts.Where(x => x.IsActive == true && x.CheckoutDate.Date.Day == first.Day) .Include(x => x.CheckoutItems) .Include(x => x.User) .ToList(); } else if (DOY == "year") { data = db.Checkouts.Where(x => x.IsActive == true && x.CheckoutDate.Date.Year == first.Year) .Include(x => x.CheckoutItems) .Include(x => x.User) .ToList(); } else if (DOY == "month") { data = db.Checkouts.Where(x => x.IsActive == true && x.CheckoutDate.Date.Month == first.Month) .Include(x => x.CheckoutItems) .Include(x => x.User) .OrderByDescending(x => x.Id) .ToList(); } var billingaddress = db.BillingAddress.Where(x => x.IsActive == true).ToList(); var shippingaddress = db.Shipping.Where(x => x.IsActive == true).ToList(); var users = db.Users.Where(x => x.IsActive == true && x.RoleId == 2).ToList(); var trackorders = db.TrackOrders.Where(x => x.IsActive == true).ToList(); var paymentMode = db.PaymentModes.Where(x => x.IsActive == true).ToList(); foreach (var item in data) { var order = new OrderDeatils(); order.OrederNo = item.InvoiceNumber; order.PurchasedOn = item.CheckoutDate.ToShortDateString(); if (item.BillingAddressId > 0) { order.billtoName = billingaddress.Where(x => x.Id == item.BillingAddressId).FirstOrDefault()?.Name; } if (order.billtoName == null) { order.billtoName = ""; } if (item.ShippingId > 0) { order.ShiptoName = shippingaddress.Where(x => x.Id == item.ShippingId).FirstOrDefault()?.Name; } if (order.ShiptoName == null) { order.ShiptoName = ""; } order.PurchasePrice = item.TotalAmount; order.BasePrice = item.TotalAmount - item.ShippingPrice; order.Quantity = item.CheckoutItems.Count(); var venderId = item.CheckoutItems.Select(x => x.VendorId).FirstOrDefault(); if (venderId > 0) { order.VenderName = users.Where(x => x.Id == venderId).FirstOrDefault()?.FirstName; if (order.VenderName == null) { order.VenderName = ""; } if (order.VenderName != null) { order.VenderId = venderId; } } order.TrackingNumber = trackorders.Where(x => x.OrderId == item.Id).FirstOrDefault()?.TrackId; if (order.TrackingNumber == null) { order.TrackingNumber = ""; } //if (TrackId !=null) // order.TrackingNumber = TrackId; order.OrderStatus = trackorders.Where(x => x.OrderId == item.Id).FirstOrDefault()?.Status; if (order.OrderStatus == null) { order.OrderStatus = ""; } order.ShippedBy = item.ShippingType; if (order.ShippedBy == null) { order.ShippedBy = ""; } order.PaymentMethod = paymentMode.Where(x => x.Id == item.PaymentModeId).FirstOrDefault()?.Name; if (order.PaymentMethod == null) { order.PaymentMethod = ""; } order.UserEmailId = item.User?.FirstName; orderList.Add(order); } //var data1 = from orders in db.Checkouts // join items in db.CheckoutItems on orders.Id equals items.CheckoutId // join Users in db.Users on orders.UserId equals Users.Id // join track in db.TrackOrders on orders.Id equals track.OrderId // select orders; } } catch (Exception ex) { throw ex; } var response = new { data = orderList.Skip(page).Take(pageSize).ToList(), cout = orderList.Count }; return(Ok(response)); }
public IActionResult actionResult(string First, string scnd, int page, int pageSize) { var orderList = new List <OrderDeatils>(); var skipData = pageSize * (page - 1); try { var data = new List <PaymentTransaction>(); if (First != null && scnd != null) { var first = Convert.ToDateTime(First); var Seconed = Convert.ToDateTime(scnd); data = db.PaymentTransaction.Where(x => x.Date.Value.Year >= first.Year && x.Date.Value.Month >= first.Month && x.Date.Value.Day >= first.Day && x.Date.Value.Year <= Seconed.Year && x.Date.Value.Month <= Seconed.Month && x.Date.Value.Day <= Seconed.Day) .Include(x => x.Checkout.User) .Include(x => x.Checkout.CheckoutItems) .OrderByDescending(x => x.Id) .ToList(); } else { data = db.PaymentTransaction .Include(x => x.Checkout) .Include(x => x.Checkout.User) .Include(x => x.Checkout.CheckoutItems) .OrderByDescending(x => x.Id) .ToList(); } var billingaddress = db.BillingAddress.Where(x => x.IsActive == true).ToList(); var shippingaddress = db.Shipping.Where(x => x.IsActive == true).ToList(); var users = db.Users.Where(x => x.IsActive == true && x.RoleId == 2).ToList(); var trackorders = db.TrackOrders.Where(x => x.IsActive == true).ToList(); // var paymentMode = db.PaymentModes.Where(x => x.IsActive == true).ToList(); var varinatDetails = db.ProductVariantDetails.Where(v => v.IsActive == true).Include(v => v.Product).ToList(); foreach (var item in data) { if (item.Checkout != null) { var order = new OrderDeatils(); order.PaymentTransactionId = item.Id; order.OrederNo = item.Checkout.InvoiceNumber; order.PurchasedOn = item.Date?.ToShortDateString(); if (item.Checkout.BillingAddressId > 0) { order.billtoName = billingaddress.Where(x => x.Id == item.Checkout?.BillingAddressId).FirstOrDefault()?.Name; } if (order.billtoName == null) { order.billtoName = ""; } if (item.Checkout.ShippingId > 0) { order.ShiptoName = shippingaddress.Where(x => x.Id == item.Checkout?.ShippingId).FirstOrDefault()?.Name; } if (order.ShiptoName == null) { order.ShiptoName = ""; } order.PurchasePrice = item.Checkout?.TotalAmount + item.Checkout?.ShippingPrice; order.BasePrice = item.Checkout?.TotalAmount; order.Quantity = item.Checkout?.CheckoutItems.Count(); var variant = varinatDetails.Where(v => v.Id == item.Checkout?.CheckoutItems.Select(x => x.ProductVariantDetailId).FirstOrDefault()).FirstOrDefault(); var venderId = variant?.Product?.VendorId; if (venderId > 0) { order.VenderName = users.Where(x => x.Id == variant?.Product?.VendorId).FirstOrDefault()?.FirstName; if (order.VenderName == null) { order.VenderName = ""; } if (order.VenderName != null) { order.VenderId = venderId; } } order.TrackingNumber = trackorders.Where(x => x.OrderId == item.Id).FirstOrDefault()?.TrackId; if (order.TrackingNumber == null) { order.TrackingNumber = ""; } order.OrderStatus = trackorders.Where(x => x.OrderId == item.CheckoutId).FirstOrDefault()?.Status; if (order.OrderStatus == null) { order.OrderStatus = ""; } order.ShippedBy = item.Checkout.ShippingType; if (order.ShippedBy == null) { order.ShippedBy = ""; } order.PaymentMethod = item.PaymentMethod; order.UserEmailId = item.Checkout?.User?.FirstName; orderList.Add(order); } } } catch (Exception ex) { throw ex; } var response = new { data = orderList.OrderByDescending(x => x.OrederNo).Skip(skipData).Take(pageSize).ToList(), count = orderList.Count }; return(Ok(response)); }