Exemplo n.º 1
0
        public PhenotypeEntryViewModel GetPhenotypeSummary(int genotypeId)
        {
            Genotype                genotype      = u_repo.GetGenotype(genotypeId);
            List <Fate>             possibleFates = u_repo.GetFates().OrderBy(t => t.Order).ToList();
            PhenotypeEntryViewModel vm            = GenotypePhenotypeEntry(genotype, possibleFates);

            return(vm);
        }
        public SelectionSummaryViewModel GetSelectionSummary(int id)
        {
            Genotype                         genotype = u_repo.GetGenotype(id);
            IEnumerable <Family>             families = u_repo.GetQueryableFamilies(t => t.MaleParent == genotype.Id || t.FemaleParent == genotype.Id).ToList();
            IEnumerable <FamilyUseViewModel> fuvms    = families.ToFamilyUseViewModel(genotype);
            PhenotypeEntryViewModel          pdvm     = GetPhenotypeEntry(id);
            SelectionSummaryViewModel        ssvm     = genotype.ToSelectionSummaryViewModel(pdvm, fuvms);

            return(ssvm);
        }
Exemplo n.º 3
0
        public PhenotypeEntryViewModel GetPhenotypeEntryVM(int id, string year)
        {
            Map         map           = u_repo.GetMap(id);
            List <Fate> possibleFates = u_repo.GetFates().OrderBy(t => t.Order).ToList();
            Years       mapYear;

            if (year.IsNullOrWhiteSpace())
            {
                mapYear = map.Years.OrderByDescending(t => t.Year).FirstOrDefault();
            }
            else
            {
                mapYear = map.Years.SingleOrDefault(t => t.Year == year);
            }
            if (mapYear == null || mapYear.Id <= 0)
            {
                throw new PhenotypeException(Properties.Settings.Default.ExceptionPhenotypeInvalidYear);
            }

            PhenotypeEntryViewModel vm = GetPhenotypeEntryVM(map, possibleFates, mapYear.Id);

            return(vm);
        }
        /// <summary>
        /// Creates a SelectionSummaryViewModel from a targeted genotype
        /// </summary>
        /// <param name="genotype">The target Genotype</param>
        /// <returns>Loaded SelectionSummaryViewModel</returns>
        public static SelectionSummaryViewModel ToSelectionSummaryViewModel(this Genotype genotype, PhenotypeEntryViewModel phenotypeSummary, IEnumerable <FamilyUseViewModel> familyUseList)
        {
            genotype.ThrowIfNull("genotype");
            phenotypeSummary.ThrowIfNull("phenotypeSummary");
            familyUseList.ThrowIfNull("familyUseList");

            return(new SelectionSummaryViewModel()
            {
                GenotypeNote = genotype.Note,
                GenotypeId = genotype.Id,
                GenotypeName = genotype.Name,
                PloidyName = genotype.PloidyName,
                MaleParentName = genotype.Family.MaleGenotype == null ? "Unknown" : genotype.Family.MaleGenotype.IfNotNull(g => g.Name),
                FemaleParentName = genotype.Family.FemaleGenotype == null ? "Unknown" : genotype.Family.FemaleGenotype.IfNotNull(g => g.Name),
                FamilyUseList = familyUseList,
                Notes = genotype.ToNotesViewModel(),
                FlatNotes = genotype.ToFlatNotesViewModel(),
                PhenotypeSummaryVM = phenotypeSummary,
                ObservationList = null
            });
        }