private PetAdoptionOrder GeneratePetAdoptionOrder(PetType type, PetAdoptionRequest request)
        {
            PetAdoptionOrder order = new PetAdoptionOrder();

            order.OrderDate = DateTime.Now;
            order.Type      = type;
            order.PetName   = request.PetName;
            order.Cpf       = request.Cpf;
            order.Adress    = request.Adress;
            order.Name      = request.Name;

            return(order);
        }
        public IHttpActionResult OrderCatAdoption(PetAdoptionRequest request)
        {
            try
            {
                if (request == null || "".Equals(request.Cpf) || "".Equals(request.Adress) || "".Equals(request.Name) ||
                    "".Equals(request.PetName) || "".Equals(request.PostalCode))
                {
                    return(BadRequest("Parâmetros inválidos!"));
                }


                PetAdoptionOrder order = GeneratePetAdoptionOrder(PetType.Cat, request);
                order = _petAdoptionOrderRepository.AddPetAdoptionOrder(order);
                return(Ok(order));
            }
            catch (Exception e)
            {
                return(InternalServerError(new CityServiceException(500, "Ocorreu um erro inesperado ao incluir solicitação de adoção de Gato! Entre em contato com o administrador do sistema.")));
            }
        }