public static IEnumerable <VisitManufacturersGroup> GetManufacturersGroups(NewVisitStep3 data, ref int percentSum) { var groups = new List <VisitManufacturersGroup>(); if (data.ManufacturersGroups == null) { return(groups); } foreach (var g in data.ManufacturersGroups.Where(group => group.Checked)) { if (!data.Manufacturers.Any(m => m.GroupId == g.Id && m.Checked && m.Percent > 0)) { percentSum += g.Percent; g.SelectedManufacturers = false; } else { g.Percent = data.Manufacturers.Where(m => m.GroupId == g.Id && m.Checked && m.Percent > 0).Sum(m => m.Percent); g.SelectedManufacturers = true; } var group = CreateManufacturersGroup(g); groups.Add(group); } return(groups); }
public static IEnumerable <VisitSupplier> GetSuppliers(NewVisitStep3 data) { var suppliers = new List <VisitSupplier>(); if (data.Suppliers == null) { return(suppliers); } suppliers.AddRange(data.Suppliers.Select(CreateSupplier)); return(suppliers); }
public static IEnumerable <VisitManufacturers> GetManufacturers(NewVisitStep3 data, ref int percentSum) { var manufacturers = new List <VisitManufacturers>(); if (data.Manufacturers == null) { return(manufacturers); } foreach (var m in data.Manufacturers.Where(manufacturer => manufacturer.Checked)) { percentSum += m.Percent; var manufacturer = CreateManufacturer(m); manufacturers.Add(manufacturer); } return(manufacturers); }