/// <summary> /// 利用訂單Id取訂單 /// </summary> /// <param name="httpContext"></param> /// <param name="orderId"></param> /// <returns></returns> public List <OrderViewModel> GetOrder(HttpContextBase httpContext, string orderId) { using (var dbContext = new XbooxLibraryDBContext()) { var orderRepo = new GeneralRepository <Order>(dbContext); var userRepo = new GeneralRepository <AspNetUsers>(dbContext); var userId = httpContext.User.Identity.GetUserId(); var orderList = (from o in orderRepo.GetAll().AsEnumerable() where o.UserId == userId && o.OrderId.ToString() == orderId join user in userRepo.GetAll().AsEnumerable() on o.UserId equals user.Id select new OrderViewModel { OrderId = o.OrderId, EcpayOrderNumber = o.EcpayOrderNumber, OrderDate = (DateTime)TimeCheckerService.GetTaipeiTime(o.OrderDate), UserName = user.UserName, PurchaserName = o.PurchaserName, PurchaserEmail = o.PurchaserEmail, City = o.City, District = o.District, Road = o.Road, PurchaserPhone = o.PurchaserPhone, Payment = o.Payment, PayDate = TimeCheckerService.GetTaipeiTime(o.PayDate), Paid = o.Paid, Build = o.Build }).OrderBy(item => item.OrderDate).ToList(); return(orderList); } }
/// <summary> /// 取得所有訂單 /// </summary> /// <returns></returns> public List <OrderViewModel> GetOrder() { using (var dbContext = new XbooxLibraryDBContext()) { var orderRepo = new GeneralRepository <Order>(dbContext); var userRepo = new GeneralRepository <AspNetUsers>(dbContext); var orderList = (from o in orderRepo.GetAll().AsEnumerable() join user in userRepo.GetAll().AsEnumerable() on o.UserId equals user.Id select new OrderViewModel { OrderId = o.OrderId, OrderDate = (DateTime)TimeCheckerService.GetTaipeiTime(o.OrderDate), UserName = user.UserName, PurchaserName = o.PurchaserName, PurchaserEmail = o.PurchaserEmail, PurchaserAddress = $"{o.City}{o.District}{o.Road}", PurchaserPhone = o.PurchaserPhone, Payment = o.Payment, Paid = o.Paid, PayDate = TimeCheckerService.GetTaipeiTime(o.PayDate), Build = o.Build }).OrderBy(item => item.OrderDate).ToList(); return(orderList); } }