Ejemplo n.º 1
0
        public IActionResult getDogDetails(int dogId)
        {
            var claimsIdentity = this.User.Identity as ClaimsIdentity;

            try
            {
                userService.CanUserAccessDog(claimsIdentity, dogId);
                DogDetailsDTO response = dogService.getDogDetailsById(dogId);
                if (response == null)
                {
                    throw new AppException("Nie odnaleziono psa o podanym ID");
                }
                return(Ok(response));
            }
            catch (Exception e)
            {
                return(BadRequest(new { message = e.Message }));
            }
        }
Ejemplo n.º 2
0
        public DogDetailsDTO getDogDetailsById(int dogId)
        {
            Dog dog = context.Dog.Where(d => d.DogId == dogId).FirstOrDefault();

            if (dog == null)
            {
                throw new AppException("Nie odnaleziono psa");
            }
            DogBreed breed = context.DogBreed.Where(db => db.BreedId == dog.BreedId).FirstOrDefault();

            if (breed == null)
            {
                throw new AppException("Nie odnaleziono rasy");
            }
            DogClass classD = context.DogClass.Where(c => c.ClassId == dog.ClassId).FirstOrDefault();

            if (classD == null)
            {
                throw new AppException("Nie odnaleziono klasy");
            }
            string        sex        = dog.Sex == "M" ? "Pies" : "Suka";
            DogDetailsDTO dogDetails = new DogDetailsDTO
            {
                dogId              = dog.DogId,
                name               = dog.Name,
                lineageNumber      = dog.LineageNumber,
                registrationNumber = dog.RegistrationNumber,
                titles             = dog.Titles,
                chipNumber         = dog.ChipNumber,
                breedName          = breed.NamePolish,
                sex            = sex,
                birthday       = dog.Birthday,
                fatherName     = dog.FatherName,
                motherName     = dog.MotherName,
                breederName    = dog.BreederName,
                breederAddress = dog.BreederAddress,
                className      = classD.NamePolish
            };

            return(dogDetails);
        }