public override async Task Execute(OrganismData model, OrganismDbContext _context) { SpeciesT oldSpecies = _context.Kingdoms .Include(i => i.Phylums).ThenInclude(i => i.Classes).ThenInclude(i => i.Orders) .ThenInclude(i => i.Families).ThenInclude(i => i.Genusses).ThenInclude(i => i.Species) .Single(i => i.KingdomTID == model.KingdomID).Phylums .Single(i => i.PhylumTID == model.PhylumID).Classes .Single(i => i.ClassTID == model.ClassID).Orders .Single(i => i.OrderTID == model.OrderID).Families .Single(i => i.FamilyTID == model.FamilyID).Genusses .Single(i => i.GenusTID == model.GenusID).Species .Single(i => i.SpeciesTID == model.SpeciesID); oldSpecies.Name = model.Name; oldSpecies.Description = model.Description; oldSpecies.Class = model.Class; oldSpecies.Size = model.Size; oldSpecies.Use = model.Use; oldSpecies.OccurenceCR = model.OccurenceCR; oldSpecies.Protection = model.Protection; oldSpecies.EcoFunction = model.EcoFunction; oldSpecies.Ecosystems = string.Join(", ", model.Ecosystems.Select(a => a.ToString())); oldSpecies.OccurencesWorld = string.Join(", ", model.OccurencesWorld.Select(a => a.ToString())); await _context.SaveChangesAsync(); }
public override async Task <int> Execute(OrganismData model, OrganismDbContext _context) { SpeciesT newSpecies = new SpeciesT() { Name = model.Name, Description = model.Description, Class = model.Class, Classification = GetClassification(model, _context).Result, Size = model.Size, Use = model.Use, OccurenceCR = model.OccurenceCR, Protection = model.Protection, EcoFunction = model.EcoFunction, Ecosystems = string.Join(", ", model.Ecosystems.Select(a => a.ToString())), OccurencesWorld = string.Join(", ", model.OccurencesWorld.Select(a => a.ToString())) }; _context.Kingdoms .Include(i => i.Phylums).ThenInclude(i => i.Classes).ThenInclude(i => i.Orders) .ThenInclude(i => i.Families).ThenInclude(i => i.Genusses).ThenInclude(i => i.Species) .Single(i => i.KingdomTID == model.KingdomID).Phylums .Single(i => i.PhylumTID == model.PhylumID).Classes .Single(i => i.ClassTID == model.ClassID).Orders .Single(i => i.OrderTID == model.OrderID).Families .Single(i => i.FamilyTID == model.FamilyID).Genusses .Single(i => i.GenusTID == model.GenusID).Species .Add(newSpecies); await _context.SaveChangesAsync(); return(newSpecies.SpeciesTID); }
public override async Task Execute(OrganismData model, OrganismDbContext _context) { KingdomT oldKingdom = _context.Kingdoms .Single(i => i.KingdomTID == model.KingdomID); oldKingdom.Name = model.Name; await _context.SaveChangesAsync(); }
private async Task <string> GetClassification(OrganismData model, OrganismDbContext _context) { ChosenTaxons cht = await ChosenTaxonsFiller.Fill(_context, model); return(cht.ChosenKingdom.Name + ", " + cht.ChosenPhylum.Name + ", " + cht.ChosenClass.Name + ", " + cht.ChosenOrder.Name + ", " + cht.ChosenFamily.Name + ", " + cht.ChosenGenus.Name); }
public override async Task Execute(OrganismData model, OrganismDbContext _context) { OrderT oldOrder = _context.Kingdoms .Include(i => i.Phylums).ThenInclude(i => i.Classes).ThenInclude(i => i.Orders) .Single(i => i.KingdomTID == model.KingdomID).Phylums .Single(i => i.PhylumTID == model.PhylumID).Classes .Single(i => i.ClassTID == model.ClassID).Orders .Single(i => i.OrderTID == model.OrderID); oldOrder.Name = model.Name; await _context.SaveChangesAsync(); }
public static async Task <OrganismData> Fill(OrganismDbContext _context, OrganismData viewModel) { ChosenTaxons taxons = await ChosenTaxonsFiller.Fill(_context, viewModel); if (viewModel.KingdomID != null) { viewModel.Name = taxons.ChosenKingdom.Name; } if (viewModel.PhylumID != null) { viewModel.Name = taxons.ChosenPhylum.Name; } if (viewModel.ClassID != null) { viewModel.Name = taxons.ChosenClass.Name; } if (viewModel.OrderID != null) { viewModel.Name = taxons.ChosenOrder.Name; } if (viewModel.FamilyID != null) { viewModel.Name = taxons.ChosenFamily.Name; } if (viewModel.GenusID != null) { viewModel.Name = taxons.ChosenGenus.Name; } if (viewModel.SpeciesID != null) { viewModel.Name = taxons.ChosenSpecies.Name; viewModel.Description = taxons.ChosenSpecies.Description; viewModel.Class = taxons.ChosenSpecies.Class; viewModel.Classification = taxons.ChosenSpecies.Classification; viewModel.Size = taxons.ChosenSpecies.Size; viewModel.Use = taxons.ChosenSpecies.Use; viewModel.OccurenceCR = taxons.ChosenSpecies.OccurenceCR; viewModel.Protection = taxons.ChosenSpecies.Protection; viewModel.EcoFunction = taxons.ChosenSpecies.EcoFunction; viewModel.Ecosystems = taxons.ChosenSpecies.Ecosystems.Split(", ") .Select(x => (EcosystemEnum)Enum.Parse(typeof(EcosystemEnum), x)).ToArray(); viewModel.OccurencesWorld = taxons.ChosenSpecies.OccurencesWorld.Split(", ") .Select(x => (OccurenceWorldEnum)Enum.Parse(typeof(OccurenceWorldEnum), x)).ToArray(); viewModel.Imgs = taxons.ChosenSpecies.Imgs; } return(viewModel); }
public override async Task <int> Execute(OrganismData model, OrganismDbContext _context) { KingdomT newKingdom = new KingdomT { Name = model.Name }; _context.Kingdoms.Add(newKingdom); await _context.SaveChangesAsync(); return(newKingdom.KingdomTID); }
public override async Task <int> Execute(OrganismData model, OrganismDbContext _context) { PhylumT newPhylum = new PhylumT() { Name = model.Name }; _context.Kingdoms.Include(i => i.Phylums) .Single(i => i.KingdomTID == model.KingdomID).Phylums .Add(newPhylum); await _context.SaveChangesAsync(); return(newPhylum.PhylumTID); }
public OrganismsController(OrganismDbContext context) { _context = context; }
public SetSourceController(OrganismDbContext context) { _context = context; }
public abstract Task Execute(OrganismClassification organism, OrganismDbContext _context);
public static async Task <ChosenTaxons> Fill(OrganismDbContext _context, OrganismClassification OIDs) { ChosenTaxons viewModel = new ChosenTaxons { Kingdoms = await _context.Kingdoms .Include(i => i.Phylums) .ThenInclude(i => i.Classes) .ThenInclude(i => i.Orders) .ThenInclude(i => i.Families) .ThenInclude(i => i.Genusses) .ThenInclude(i => i.Species) .OrderBy(i => i.Name) .ToListAsync() }; if (OIDs.KingdomID != null) { viewModel.ChosenKingdom = viewModel.Kingdoms .Single(x => x.KingdomTID == OIDs.KingdomID); } if (OIDs.PhylumID != null) { viewModel.ChosenPhylum = viewModel.ChosenKingdom.Phylums .Single(x => x.PhylumTID == OIDs.PhylumID); } if (OIDs.ClassID != null) { viewModel.ChosenClass = viewModel.ChosenPhylum.Classes .Single(x => x.ClassTID == OIDs.ClassID); } if (OIDs.OrderID != null) { viewModel.ChosenOrder = viewModel.ChosenClass.Orders .Single(x => x.OrderTID == OIDs.OrderID); } if (OIDs.FamilyID != null) { viewModel.ChosenFamily = viewModel.ChosenOrder.Families .Single(x => x.FamilyTID == OIDs.FamilyID); } if (OIDs.GenusID != null) { viewModel.ChosenGenus = viewModel.ChosenFamily.Genusses .Single(x => x.GenusTID == OIDs.GenusID); } if (OIDs.SpeciesID != null) { viewModel.ChosenSpecies = viewModel.ChosenGenus.Species .Single(x => x.SpeciesTID == OIDs.SpeciesID); await _context.Entry(viewModel.ChosenSpecies) .Collection(x => x.Imgs).LoadAsync(); } return(viewModel); }