public override void UpdateContent() { fRootItem.Items.Clear(); var unkTax = fDataMap.Model.CreateItem(fRootItem, "Unknown Taxonomy", 0.0d); Dictionary <string, SpeciesItem> species = new Dictionary <string, SpeciesItem>(); IList <Inhabitant> records = fModel.QueryInhabitants(); foreach (Inhabitant rec in records) { Species spc = fModel.GetRecord <Species>(rec.SpeciesId); if (spc == null) { continue; } SpeciesType speciesType = fModel.GetSpeciesType(rec.SpeciesId); ItemType itemType = ALCore.GetItemType(speciesType); int quantity = fModel.QueryInhabitantsCount(rec.Id, itemType); if (quantity != 0) { string name = string.Format("{0} ({1})", spc.ScientificName, spc.Name); SpeciesItem item; if (!species.TryGetValue(name, out item)) { item = new SpeciesItem(name, spc.BioFamily, quantity); species.Add(name, item); } else { item.Quantity += quantity; } } } foreach (var pair in species) { var item = pair.Value; var row = SearchFamily(item.Family); if (row == null) { fDataMap.Model.CreateItem(unkTax, item.Name, item.Quantity); } else { var taxItem = GetTaxonomyItem(row); fDataMap.Model.CreateItem(taxItem, item.Name, item.Quantity); } } fDataMap.UpdateView(); }
private void AddSpecies(int id, MigrationBuilder migrationBuilder, GetRequest <SpeciesItem> client) { Console.WriteLine(id); SpeciesItem species = client.GetById(id).GetAwaiter().GetResult(); migrationBuilder.InsertData( table: "Species", columns: new string[] { "id", "name", "classification", "designation", "average_height", "hair_colors", "average_lifespan", "eye_colors", "skin_colors", "homeworld", "language" }, values: new object[] { id, species.name, species.classification, species.designation, species.average_height, species.hair_colors, species.average_lifespan, species.eye_colors, species.skin_colors, species.homeworld, species.language } ); }
private void AddItemInList(Bee bee, List <SpeciesItem> list) { //тут посылать проверку в биистеарий var beeList = new List <BeeItem>(); var beeItem = new BeeItem(bee); beeList.Add(beeItem); var speciesItem = new SpeciesItem(beeList); list.Add(speciesItem); }