Ejemplo n.º 1
0
        public async Task <CatLitterViewModel> GetLitterData(CatLitter litter, bool displayPicture)
        {
            var LitterViewModel = new CatLitterViewModel();
            var parentsQuery    = from cats in _db.Cats
                                  join parents in _db.CatLitter_Parent on cats.Id equals parents.CatId
                                  where parents.CatLitterId == litter.Id
                                  select cats;

            var imageQuery = from images in _db.Images
                             join cli in _db.CatLitter_Image on images.Id equals cli.ImageId
                             where cli.CatLitterId == litter.Id
                             select images;

            if (displayPicture == true)
            {
                imageQuery = from images in _db.Images
                             join cli in _db.CatLitter_Image on images.Id equals cli.ImageId
                             where cli.CatLitterId == litter.Id && images.DisplayPicture == true
                             select images;
            }

            var kittensQuery = from cats in _db.Cats
                               where cats.CatLitter.Id == litter.Id
                               select cats;

            LitterViewModel.Kittens = await kittensQuery.ToListAsync();

            LitterViewModel.Parents = await parentsQuery.ToListAsync();

            LitterViewModel.Images = await imageQuery.ToListAsync();

            LitterViewModel.Id           = litter.Id;
            LitterViewModel.Notes        = litter.Notes;
            LitterViewModel.Pedigree     = litter.Pedigree;
            LitterViewModel.PedigreeName = litter.PedigreeName;
            LitterViewModel.ReadyDate    = litter.ReadyDate;
            LitterViewModel.Status       = litter.Status;
            LitterViewModel.SVERAK       = litter.SVERAK;
            LitterViewModel.Vaccinated   = litter.Vaccinated;
            LitterViewModel.Chipped      = litter.Chipped;
            LitterViewModel.BirthDate    = litter.BirthDate;
            LitterViewModel.AmountOfKids = litter.AmountOfKids;

            return(LitterViewModel);
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <IEnumerable <CatLitter> > > GetAllCatLitters()
        {
            var returnList = new List <CatLitterViewModel>();
            var litters    = await _db.CatLitters.ToListAsync();

            foreach (CatLitter litter in litters)
            {
                var LitterViewModel = new CatLitterViewModel();
                var parentsQuery    = from cats in _db.Cats
                                      join parents in _db.CatLitter_Parent on cats.Id equals parents.CatId
                                      where parents.CatLitterId == litter.Id
                                      select cats;

                var imageQuery = from images in _db.Images
                                 join cli in _db.CatLitter_Image on images.Id equals cli.ImageId
                                 where cli.CatLitterId == litter.Id && images.DisplayPicture == true
                                 select images;

                LitterViewModel.Parents = await parentsQuery.ToListAsync();

                LitterViewModel.Images = await imageQuery.Take(1).ToListAsync();

                LitterViewModel.Id           = litter.Id;
                LitterViewModel.Notes        = litter.Notes;
                LitterViewModel.Pedigree     = litter.Pedigree;
                LitterViewModel.PedigreeName = litter.PedigreeName;
                LitterViewModel.ReadyDate    = litter.ReadyDate;
                LitterViewModel.Status       = litter.Status;
                LitterViewModel.SVERAK       = litter.SVERAK;
                LitterViewModel.Vaccinated   = litter.Vaccinated;
                LitterViewModel.Chipped      = litter.Chipped;
                LitterViewModel.BirthDate    = litter.BirthDate;
                LitterViewModel.AmountOfKids = litter.AmountOfKids;
                returnList.Add(LitterViewModel);
            }

            if (returnList == null)
            {
                return(NotFound());
            }
            return(Ok(returnList));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult <CatLitter> > GetCatLitter(int id)
        {
            var fromDb = await _db.CatLitters.FindAsync(id);

            if (fromDb == null)
            {
                return(NotFound());
            }
            else
            {
                var litterViewModel = new CatLitterViewModel();
                litterViewModel = await GetLitterData(fromDb, false);

                if (litterViewModel == null)
                {
                    return(NotFound());
                }
                return(Ok(litterViewModel));
            }
        }