private ObservableCollection <CutItem> GetProductsList(int?customerLocationId, int coldWeightDetailId, OmsSideType sideNumber) { if (!customerLocationId.HasValue) { return(null); } var animalNumbersWithOrderDetail = _animalOrderDetailRepository.GetByColdWeghtDetailId(coldWeightDetailId); var productslabels = new List <CutItem>(); foreach (var item in animalNumbersWithOrderDetail.Where(x => x.OrderDetail.SideTypeId == sideNumber)) { if (item.OrderDetail.CustomerLocationId != customerLocationId.Value) { continue; } var label = GetLabels(item.OrderDetail.Id).LastOrDefault(); if (label != null) { productslabels.Add(new CutItem { ProductId = item.OrderDetail.ProductId, ProductName = ProductService.GetFormattedProductName(item.OrderDetail.Product), Id = Guid.NewGuid().ToString("D"), OrderDetailId = item.OrderDetail.Id, Weight = string.Format("{0} lbs", LabelCreateService.GetGrossPoundWeight(label.PoundWeight, label.TypeId, item.OrderDetail)) }); } } var products = new ObservableCollection <CutItem>(productslabels.OrderByDescending(x => x.OrderDetailId)); return(products); }
private OrdersConstructorViewModel GetOffalsSource(Order order) { var offalLabels = new BindingList <OrderConstructorViewModel>(); var countId = 0; foreach (var x in order.OrderDetail.Where(x => x.Product.IsOffal)) { var label = _labelService.GetLabels(x.Id).LastOrDefault(); if (label != null) { offalLabels.Add(new OrderConstructorViewModel { OrderDetailId = x.Id, ProductId = x.ProductId, ProductName = x.Product.EnglishDescription, LocationId = x.CustomerLocationId, ShipTo = x.CustomerLocation.Name, Weight = (decimal)LabelCreateService.GetGrossPoundWeight(label.PoundWeight, _activeLabelType, _orderDetailRepository.Get(x.Id)), Id = countId++ }); } } var offals = _productRepository.GetOffalProducts() .Select(x => new OrderConstructorViewModel { ProductId = x.Id, ProductName = x.Upc }) .ToList(); var locations = order.Customer .CustomerLocation .Select(x => new SelectListItemModel { Id = x.Id, Name = x.Name }) .ToList(); var model = new OrdersConstructorViewModel { ProductNameHeader = "Product Name", WeightHeader = "Box Weight", ShipToHeader = "Ship To", QtyHeader = "Qty", Orders = new BindingList <OrderConstructorViewModel>(offalLabels), Constructor = new BindingList <OrderConstructorViewModel>(offals), Locations = new BindingList <SelectListItemModel>(locations) }; return(model); }
public void UpdateLabel(int labelId, double poundWeight, OmsLabelType labelType) { Label label = _labelRepository.Get(labelId); var od = _orderDetailRepository.Get(label.OrderDetailId); label.IsPrinted = false; label.PoundWeight = LabelCreateService.GetNetPoundWeight(poundWeight, labelType, od); label.KilogramWeight = LabelCreateService.GetCorrectKilogramWeight(label.PoundWeight); label.CreatedDate = DateTime.Now; label.ProcessDate = od.Order.ProcessDate.GetValueOrDefault().ToString("d"); _labelRepository.Update(label); _labelRepository.Save(); }
private void CustomCustomerEditBox(object sender, EventArgs e) { var coldWeightDetail = _coldWeightEntryRepository.GetByOrderId(_viewModel.SelectedCustomerLocation.OrderId) .ColdWeightEntryDetails.Single(c => c.Id == _viewModel.SelectedCustomerLocation.ColdWeightDetailId); IList <LabelEditItem> labelsToEdit = new List <LabelEditItem>(); var sides = _coldWeightEntryDetailRepository.GetSideWeigths(coldWeightDetail.Id); foreach (var side in sides) { if (!side.Value.HasValue) { continue; } var orderDetailsForSide = coldWeightDetail.AnimalOrderDetails.Where(a => a.ColdWeightDetailId == coldWeightDetail.Id) .Select(a => a.OrderDetail) .ToList().FindAll(x => x.SideTypeId == side.Key).ToList(); if (!orderDetailsForSide.Any()) { continue; } var items = orderDetailsForSide.SelectMany(s => s.Label) .Where(s => s.TypeId == OmsLabelType.Box); foreach (var label in items) { labelsToEdit.Add(new LabelEditItem() { LabelId = label.Id, LabelType = label.TypeId, LocationName = label.OrderDetail.CustomerLocation.Name, PoundWeight = LabelCreateService.GetGrossPoundWeight(label.PoundWeight, label.TypeId, label.OrderDetail), PrintedDate = label.CreatedDate, ProductName = ProductService.GetFormattedProductName(label.OrderDetail.Product) }); } } var selectedOrderId = (int)ComboOrder.SelectedValue; var form = DIService.Resolve <EditLabelsWindow>(new ConstructorArgument("orderId", selectedOrderId, false), new ConstructorArgument("labels", labelsToEdit, false)); form.Owner = this; form.ShowDialog(); Refresh(); }
private void Offals_Add(object sender, OrderEventArgs e) { var newOrderDetails = AddOffallabel((double)e.Weight, OmsScaleWeighStatus.Success, e, quantity: e.Quantity); foreach (var ordDet in newOrderDetails) { int count = _viewModel.OffalsSource.Orders.Count(); var label = _labelService.GetLabels(ordDet.Id).LastOrDefault(); _viewModel.OffalsSource.Orders.Add(new OrderConstructorViewModel { OrderDetailId = ordDet.Id, LocationId = ordDet.CustomerLocationId, ProductId = ordDet.ProductId, ProductName = ordDet.Product.Upc, ShipTo = _customerLocationRepository.Get(e.LocationId).Name, Weight = (decimal)LabelCreateService.GetGrossPoundWeight(label.PoundWeight, label.TypeId, ordDet), Id = ++count }); } }
public IEnumerable <LabelEditItem> GetPrintedLabels(int orderId) { var orderDetails = _orderDetailRepository .GetAllByOrder(orderId) .ToArray(); var result = orderDetails .SelectMany(x => x.Label) .Select(x => new LabelEditItem { LabelId = x.Id, LabelType = x.TypeId, LocationName = x.OrderDetail.CustomerLocation.Name, PoundWeight = LabelCreateService.GetNetPoundWeight(x.PoundWeight, x.TypeId, x.OrderDetail), PrintedDate = x.CreatedDate, ProductName = ProductService.GetFormattedProductName(x.OrderDetail.Product) }) .ToArray(); return(result); }
private static double LbsToKg(double weight) { return(LabelCreateService.GetCorrectKilogramWeight(weight)); }
private static double GetNetWeight(Label label) { return(LabelCreateService.GetNetPoundWeight(label.PoundWeight, OmsLabelType.Box, label.OrderDetail)); }