Ejemplo n.º 1
0
        public PetDTO SavePet(PetDTO pet, PetAccomodation accomodation)
        {
            try
            {
                if (accomodation.Available == true)
                {
                    accomodation.Available           = false;
                    accomodation.AccommodationStatus = AccommodationStatus.Busy;

                    Pet petCreate = new Pet()
                    {
                        AccomodationId  = pet.AccomodationId,
                        Name            = pet.Name,
                        PetAccomodation = accomodation,
                        PetHealth       = pet.PetHealth,
                        PetOwner        = pet.PetOwner,
                        PetPhotograph   = pet.PetPhotograph
                    };

                    var newPet = _context.Add(petCreate).Entity;
                    _context.SaveChanges();
                    return(pet);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Ejemplo n.º 2
0
 public PetAccomodation GetAccomodationById(int id)
 {
     try
     {
         PetAccomodation getAccomodation = _context.PetAccomodations.FirstOrDefault(p => p.PetAccomodationId == id);
         return(getAccomodation);
     }catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
        public IActionResult SaveAccomodation([FromBody] PetAccomodation accomodation)
        {
            PetAccomodation createAccomodation = _accomodationService.SavePetAccomodation(accomodation);

            if (createAccomodation == null)
            {
                return(NotFound(new { Status = HttpStatusCode.BadRequest,
                                      Error = "não foi possivel salvar" }));
            }
            return(new JsonResult(createAccomodation));
        }
Ejemplo n.º 4
0
        public IActionResult SavePet([FromBody] PetDTO pet)
        {
            PetAccomodation accomodation = _accomodationServices.GetAccomodationById(pet.AccomodationId);
            PetDTO          petCreate    = _petServices.SavePet(pet, accomodation);

            if (petCreate == null)
            {
                return(NotFound());
            }
            return(Created($"/api/Pet/{petCreate}", petCreate));
        }
Ejemplo n.º 5
0
 public PetAccomodation SavePetAccomodation(PetAccomodation accomodation)
 {
     try
     {
         PetAccomodation accomodationCreate = _context.Add(accomodation).Entity;
         _context.SaveChanges();
         return(accomodationCreate);
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Ejemplo n.º 6
0
        public async Task UpdatePet(PetDTO pet)
        {
            try
            {
                PetAccomodation actuallyAccomodation = _context.PetAccomodations.FirstOrDefault(p => p.PetAccomodationId == pet.AccomodationId);

                PetAccomodation accomodation = _context.PetAccomodations.FirstOrDefault(p => p.PetAccomodationId == pet.AccomodationId);

                if (accomodation.Available || pet.AccomodationId == actuallyAccomodation.PetAccomodationId)
                {
                    actuallyAccomodation.Available = true;
                    _context.PetAccomodations.Update(actuallyAccomodation);
                    _context.SaveChanges();


                    _context.PetsOwner.Update(pet.PetOwner);
                    _context.SaveChanges();

                    Pet newPet = new Pet()
                    {
                        AccomodationId = pet.AccomodationId == 0 ? accomodation.PetAccomodationId : actuallyAccomodation.PetAccomodationId,
                        Id             = pet.Id,
                        Name           = pet.Name,
                        PetHealth      = pet.PetHealth,
                        PetPhotograph  = pet.PetPhotograph
                    };
                    accomodation.Available = false;
                    if (pet == null)
                    {
                        throw new Exception("Pet não encontrado");
                    }

                    _context.Entry <Pet>(newPet).State = EntityState.Modified;
                    _context.Entry <PetAccomodation>(accomodation).State = EntityState.Modified;
                    await _context.SaveChangesAsync();
                }
                else
                {
                    throw new Exception("Alojamento ocupado, favor escolher outro");
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Ocorreu um erro ao tentar deletar");
            }
        }
 public PetDTO SavePet(PetDTO pet, PetAccomodation accomodation)
 {
     throw new NotImplementedException();
 }