Ejemplo n.º 1
0
        public JsonResult SearchWarehouseInventory(string customerId)
        {
            var inventory = new List <WarehouseInventoryViewModel>();

            var tempParts = _partDynamicsRepository.GetPartQuantityMasters().Where(x => x.QTYONHND > 0.00m).ToList();

            if (tempParts != null && tempParts.Count > 0)
            {
                foreach (var tempPart in tempParts)
                {
                    var parts = _partRepository.GetParts().Where(x => x.Number == tempPart.ITEMNMBR).ToList();

                    foreach (var part in parts)
                    {
                        var foundryOrderParts = _foundryOrderRepository.GetFoundryOrderParts().Where(x => x.PartId == part.PartId).ToList();

                        foreach (var foundryOrderPart in foundryOrderParts)
                        {
                            var containerParts = _containerRepository.GetContainerParts().Where(x => x.FoundryOrderPartId == foundryOrderPart.FoundryOrderPartId).ToList();

                            foreach (var containerPart in containerParts)
                            {
                                WarehouseInventoryViewModel convertedModel = new WarehouseInventoryConverter().ConvertToListView(containerPart);

                                inventory.Add(convertedModel);
                            }
                        }
                    }
                }
            }

            if (customerId != "--Select Customer--")
            {
                inventory = inventory.Where(x => x.CustomerId.Replace(" ", string.Empty).ToLower() == customerId.Replace(" ", string.Empty).ToLower()).ToList();
            }

            inventory = inventory.OrderBy(x => x.ShipCode).ThenBy(y => y.PartNumber).ThenBy(z => z.PalletNumber).ToList();

            var jsonResult = Json(inventory, JsonRequestBehavior.AllowGet);

            jsonResult.MaxJsonLength = int.MaxValue;
            return(jsonResult);
        }