Example #1
0
        public List <ShowPet> GetPets()
        {
            var db = new s19562Context();

            var listPets = db.Pet.ToList();

            List <ShowPet> listShowPets = new List <ShowPet>();



            foreach (Pet p in listPets)
            {
                var id = db.VolunteerPet.Where(id => id.PetIdPet == p.IdPet).Select(a => a.VolunteerIdVolunteer).FirstOrDefault();

                var volunteerss = db.Volunteer.Where(v => v.IdVolunteer == id).ToList();

                var show = new ShowPet
                {
                    pet        = p,
                    volunteers = volunteerss
                };

                listShowPets.Add(show);
            }
            var goodListShowPets = listShowPets.OrderBy(d => d.pet.DateRegistered).ToList();

            return(goodListShowPets);
        }
Example #2
0
        public List <ShowPet> GetPets(DateTime DateRegistered)
        {
            try
            {
                var db = new s19562Context();

                var listPets = db.Pet.ToList();

                List <ShowPet> listShowPets = new List <ShowPet>();


                foreach (Pet p in listPets)
                {
                    var id = db.VolunteerPet.Where(id => id.PetIdPet == p.IdPet).Select(a => a.VolunteerIdVolunteer).FirstOrDefault();

                    var volunteerss = db.Volunteer.Where(v => v.IdVolunteer == id).ToList();

                    var show = new ShowPet
                    {
                        pet        = p,
                        volunteers = volunteerss
                    };

                    listShowPets.Add(show);
                }

                var showWithDatePets = listShowPets.Where(d => d.pet.DateRegistered.Year == DateRegistered.Year).OrderBy(d => d.pet.DateRegistered).ToList();
                return(showWithDatePets);
            }
            catch
            {
                throw new Exception("zla data");
            }
        }
        // GET: Pet/Details/5
        public ActionResult Show(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            // Pet pet = db.Pets.Find(id); //EF 6 technique
            Pet Pet = db.Pets.SqlQuery("select * from pets where petid=@PetID", new SqlParameter("@PetID", id)).FirstOrDefault();

            if (Pet == null)
            {
                return(HttpNotFound());
            }

            //check to see if this pet is owned by the logged in user
            Debug.WriteLine("User Owns pet? " + UserManager.IsUserPetOwner(Pet));
            //the user does not own a pet
            if (!UserManager.IsUserPetOwner(Pet))
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden));
            }

            //need information about the list of owners associated with that pet
            string       query     = "select * from owners inner join PetOwners on Owners.OwnerID = PetOwners.Owner_OwnerID where Pet_PetID = @id";
            SqlParameter param     = new SqlParameter("@id", id);
            List <Owner> PetOwners = db.Owners.SqlQuery(query, param).ToList();

            //need information about the grooms booked for this pet
            //note: would do a standard join to get the owner of this booking
            //however, cannot force this information into the model
            //must use linq in this situation
            List <GroomBooking> BookedGrooms = db.GroomBookings.Include(b => b.Owner).ToList();



            ShowPet viewmodel = new ShowPet();

            viewmodel.pet          = Pet;
            viewmodel.owners       = PetOwners;
            viewmodel.bookedgrooms = BookedGrooms;


            return(View(viewmodel));
        }
        // GET: Pet/Details/2
        public ActionResult Details(int id)
        {
            ShowPet             ViewModel = new ShowPet();
            string              url       = "petdata/findpet/" + id;
            HttpResponseMessage response  = client.GetAsync(url).Result;

            //Can catch the status code (200 OK, 301 REDIRECT), etc.

            if (response.IsSuccessStatusCode)
            {
                //Put data into pet data transfer object
                PetDto SelectedPet = response.Content.ReadAsAsync <PetDto>().Result;
                ViewModel.Pet = SelectedPet;

                return(View(ViewModel));
            }
            else
            {
                return(RedirectToAction("Error"));
            }
        }