public async Task<OrderDetailViewModel> GetViewModelForOrderDetail(OrderItemViewModel selectedOrderItemViewModel) { return await Task.Run(async () => { var selectedOrder = Orders.Find((order => selectedOrderItemViewModel.OrderId == order.Id)); var orderDetails = await OrderDetailManager?.GetAsync(selectedOrder); var orderDetailViewModel = new OrderDetailViewModel { SelectedOrderItemViewModel = selectedOrderItemViewModel, SelectedOrder = selectedOrder, SelectedOrderDetails = orderDetails, }; return orderDetailViewModel; }); }
public async void LoadOrders() { IsBusy = true; Orders = await OrderManager?.GetAsync(); var orderVmList = new ObservableCollection <OrderItemViewModel>(); foreach (var orderItem in Orders) { var orderVm = new OrderItemViewModel { OrderName = $"Order: {orderItem.Number}", DeliveryAddress = orderItem.Address, CreatedDateTime = orderItem.CreatedDateTime, OrderStatus = orderItem.Status }; var orderDetails = await OrderDetailManager?.GetAsync(orderItem); string formatter = "{0} ({1}), "; var strBuilder = new StringBuilder(); foreach (var orderDetail in orderDetails) { strBuilder.Append(string.Format(formatter, orderDetail.FoodName, orderDetail.Quantity)); } orderVm.OrderDetails = strBuilder.ToString(); orderVm.Discount = orderItem.Discount.ToString() + " %"; orderVm.TotalAmount = orderItem.TotalAmount; orderVm.UserEmail = orderItem.UserEmail; orderVm.UserPhone = orderItem.UserPhone; orderVm.UserName = orderItem.UserName; orderVm.OrderId = orderItem.Id; orderVm.Payment = orderItem.Payment; orderVmList.Add(orderVm); } OrderItems = orderVmList; IsBusy = false; }
public async void LoadOrders() { IsBusy = true; Orders = await OrderManager?.GetAsync(); var orderVmList = new ObservableCollection<OrderItemViewModel>(); foreach (var orderItem in Orders) { var orderVm = new OrderItemViewModel { OrderName = $"Order: {orderItem.Number}", DeliveryAddress = orderItem.Address, CreatedDateTime = orderItem.CreatedDateTime, OrderStatus = orderItem.Status }; var orderDetails = await OrderDetailManager?.GetAsync(orderItem); string formatter = "{0} ({1}), "; var strBuilder = new StringBuilder(); foreach (var orderDetail in orderDetails) { strBuilder.Append(string.Format(formatter, orderDetail.FoodName, orderDetail.Quantity)); } orderVm.OrderDetails = strBuilder.ToString(); orderVm.Discount = orderItem.Discount.ToString() + " %"; orderVm.TotalAmount = orderItem.TotalAmount; orderVm.UserEmail = orderItem.UserEmail; orderVm.UserPhone = orderItem.UserPhone; orderVm.UserName = orderItem.UserName; orderVm.OrderId = orderItem.Id; orderVm.Payment = orderItem.Payment; orderVmList.Add(orderVm); } OrderItems = orderVmList; IsBusy = false; }