private void LoadTable(List <int> thisUnitProductsID) { List <UnitProductConnection> unitConnections = new List <UnitProductConnection>(); try { unitConnections = ButtonsClient.GetUnitPorductConnections(); } catch (Exception) { MessageBox.Show("Failed to get product for unit from database"); } //Go through all products and add those that belong in this unit foreach (Product product in ProductsHolder.products) { if (thisUnitProductsID.Contains(product.id)) { unitProducts.Add(new ProductDisplay(product, unitConnections.Where(conn => conn.ProductId == product.id && conn.ButtonId == btnId).FirstOrDefault().amount)); } } if (unitProducts.Count > 0) { //dipslay unit products dgvUnitProducts.DataSource = null; dgvUnitProducts.DataSource = unitProducts; } }
public StartingForm() { InitializeComponent(); try { //Get all Products DataHolders.ProductsHolder.products = ProductClient.GetProducts(); //Get all connections DataHolders.ButtonConnectionHolder.connections = ButtonsClient.GetButtonConnections(); DataHolders.UnitProductConnectionHolder.Connections = ButtonsClient .GetUnitPorductConnections(); //Documents DataHolders.DocumentConnectionHolder.documentProductConnections = DocumentClient .GetAllDocumnetProductConnections(); //Warehouse DataHolders.WarehouseHolder.warehouses = DatabaseManagers.WarehouseClient.GetWarehouses(); //DatabaseManagers.WarehouseManager.GetWarehouses(); DataHolders.WarehouseHolder.warehouseProductConnections = DatabaseManagers.WarehouseClient .GetWarehouseProductConnection(); //workers DataHolders.WorkerHolder.workers = WorkerClient.GetWorkers(); DataHolders.WorkerHolder.avaliableWorkers = WorkerClient.GetAavalibleWorkers(); //Delivery DataHolders.DeliveryHolder.partners = DeliveryClient.GetPartners(); DataHolders.DeliveryHolder.locations = DeliveryClient.GetLocations(); DataHolders.DeliveryHolder.vehicles = DeliveryClient.GetVehicles(); DataHolders.DeliveryHolder.routes = DeliveryClient.GetRoutes(); DataHolders.DeliveryHolder.avaliableVehicles = DeliveryClient.GetAvalibleVehicles(); //properties if (PropertiesClient.GetProperties().Exists((e) => e.name == Enums.PropertyName.distance)) { DataHolders.PropertiesHolder.distanceUnit = PropertiesClient.GetProperties() .Find((e) => e.name == Enums.PropertyName.distance).value; } if (PropertiesClient.GetProperties().Exists((e) => e.name == Enums.PropertyName.weight)) { DataHolders.PropertiesHolder.weightUnit = PropertiesClient.GetProperties() .Find((e) => e.name == Enums.PropertyName.weight).value; } } catch (Exception) { MessageBox.Show("Error connecting to database, initial data couldn't be load"); Environment.Exit(1); } }
private static List <int> GetUnitButtonsContaining(List <Product> products) { UnitProductConnectionHolder.Connections = ButtonsClient.GetUnitPorductConnections(); List <int> buttonsIDs = new List <int>(); foreach (UnitProductConnection connection in UnitProductConnectionHolder.Connections) { if (products.Select(elem => elem.id).Contains(connection.ProductId)) { buttonsIDs.Add(connection.ButtonId); } } return(buttonsIDs); }