public int Cadastrar(Piquete piquete, int PastoID)
        {
            try
            {
                //Limpa todos os parâmetros
                acessoDadosSqlServer.LimparParametros();

                //Adiciona os parâmetros para chamar a store procedure
                acessoDadosSqlServer.AdicionarParametros("@TipoProcedure", "Inserir");
                acessoDadosSqlServer.AdicionarParametros("@PiqueteID", 0);
                acessoDadosSqlServer.AdicionarParametros("@PiqueteDescricao", piquete.PiqueteDescricao);
                acessoDadosSqlServer.AdicionarParametros("@PiqueteAtivo", piquete.PiqueteAtivo);
                acessoDadosSqlServer.AdicionarParametros("@PastoID", PastoID);


                piquete.PiqueteID = int.Parse(acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspManterPiquete"));

                if (piquete.Animais != null)
                {
                    foreach (Animal animal in piquete.Animais)
                    {
                        AnimalNegocios animalNegocios = new AnimalNegocios();
                        animal.Piquete.PiqueteID = piquete.PiqueteID;
                        animalNegocios.Alterar(animal);
                    }
                }

                return(piquete.PiqueteID);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        public void Alterar(Venda venda, AnimalCollection animaisNovosVenda, ListaVendaCollection animaisVenda, ListaVendaCollection listaVendaRemocao)
        {
            try
            {
                //Limpa todos os parâmetros
                acessoDadosSqlServer.LimparParametros();

                //Adiciona os parâmetros para chamar a store procedure
                acessoDadosSqlServer.AdicionarParametros("@TipoProcedure", "Alterar");
                acessoDadosSqlServer.AdicionarParametros("@VendaID", venda.VendaID);
                acessoDadosSqlServer.AdicionarParametros("@VendaData", venda.VendaData);
                acessoDadosSqlServer.AdicionarParametros("@VendaDataEntrega", venda.VendaDataEntrega);
                acessoDadosSqlServer.AdicionarParametros("@VendaValorTotal", venda.VendaValorTotal);
                acessoDadosSqlServer.AdicionarParametros("@PessoaID", venda.Pessoa.PessoaID);
                acessoDadosSqlServer.AdicionarParametros("@UsuarioID", venda.Usuario.UsuarioID);

                acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspManterVenda");

                ListaVendaNegocios listaVendaNegocios = new ListaVendaNegocios();

                AnimalNegocios animalNegocios = new AnimalNegocios();

                foreach (ListaVenda listaVendaAlterar in animaisVenda)
                {
                    listaVendaNegocios.Alterar(listaVendaAlterar);
                }
                foreach (Animal animalNovo in animaisNovosVenda)
                {
                    animalNovo.AnimalAtivo = false;
                    animalNegocios.Alterar(animalNovo);

                    ListaVenda listaVendaNova = new ListaVenda();
                    listaVendaNova.ListaVendaValor = animalNovo.AnimalValor;
                    listaVendaNova.Animal          = animalNovo;
                    listaVendaNova.VendaID         = venda.VendaID;

                    listaVendaNegocios.Cadastrar(listaVendaNova);
                }
                foreach (ListaVenda listaVendaRem in listaVendaRemocao)
                {
                    listaVendaRem.Animal.AnimalAtivo = true;
                    animalNegocios.Alterar(listaVendaRem.Animal);

                    listaVendaNegocios.Excluir(listaVendaRem);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        public int Cadastrar(Venda venda)
        {
            try
            {
                //Limpa todos os parâmetros
                acessoDadosSqlServer.LimparParametros();

                //Adiciona os parâmetros para chamar a store procedure
                acessoDadosSqlServer.AdicionarParametros("@TipoProcedure", "Inserir");
                acessoDadosSqlServer.AdicionarParametros("@VendaID", 0);
                acessoDadosSqlServer.AdicionarParametros("@VendaData", venda.VendaData);
                acessoDadosSqlServer.AdicionarParametros("@VendaDataEntrega", venda.VendaDataEntrega);
                acessoDadosSqlServer.AdicionarParametros("@VendaValorTotal", venda.VendaValorTotal);
                acessoDadosSqlServer.AdicionarParametros("@PessoaID", venda.Pessoa.PessoaID);
                acessoDadosSqlServer.AdicionarParametros("@UsuarioID", venda.Usuario.UsuarioID);

                venda.VendaID = int.Parse(acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspManterVenda"));

                ListaVendaNegocios listaVendaNegocios = new ListaVendaNegocios();
                AnimalNegocios     animalNegocios     = new AnimalNegocios();

                for (int i = 0; i < venda.Animais.Count; i++)
                {
                    ListaVenda listaVenda = new ListaVenda();
                    listaVenda.Animal  = venda.Animais[i];
                    listaVenda.VendaID = venda.VendaID;
                    listaVendaNegocios.Cadastrar(listaVenda);
                    Animal animal = new Animal();
                    animal             = venda.Animais[i];
                    animal.AnimalAtivo = false;

                    animalNegocios.Alterar(animal);
                }
                return(venda.VendaID);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        public int Alterar(Piquete piquete, AnimalCollection animaisTransferencia)
        {
            try
            {
                //Limpa todos os parâmetros
                acessoDadosSqlServer.LimparParametros();

                //Adiciona os parâmetros para chamar a store procedure
                acessoDadosSqlServer.AdicionarParametros("@TipoProcedure", "Alterar");
                acessoDadosSqlServer.AdicionarParametros("@PiqueteID", piquete.PiqueteID);
                acessoDadosSqlServer.AdicionarParametros("@PiqueteDescricao", piquete.PiqueteDescricao);
                acessoDadosSqlServer.AdicionarParametros("@PiqueteAtivo", piquete.PiqueteAtivo);
                acessoDadosSqlServer.AdicionarParametros("@PastoID", piquete.Pasto.PastoID);

                AnimalNegocios animalNegocios = new AnimalNegocios();
                if (piquete.Animais != null)
                {
                    foreach (Animal animal in piquete.Animais)
                    {
                        animalNegocios.Alterar(animal);
                    }
                }
                if (animaisTransferencia != null)
                {
                    foreach (Animal animal in animaisTransferencia)
                    {
                        animalNegocios.Alterar(animal);
                    }
                }

                acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspManterPiquete");

                return(piquete.PiqueteID);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        public int Cadastrar(Compra compra)
        {
            try
            {
                //Limpa todos os parâmetros
                acessoDadosSqlServer.LimparParametros();

                //Adiciona os parâmetros para chamar a store procedure
                acessoDadosSqlServer.AdicionarParametros("@TipoProcedure", "Inserir");
                acessoDadosSqlServer.AdicionarParametros("@CompraID", 0);
                acessoDadosSqlServer.AdicionarParametros("@CompraData", compra.CompraData);
                acessoDadosSqlServer.AdicionarParametros("@CompraDataEntrega", compra.CompraDataEntrega);
                acessoDadosSqlServer.AdicionarParametros("@CompraValorTotal", compra.CompraValorTotal);
                acessoDadosSqlServer.AdicionarParametros("@PessoaID", compra.Pessoa.PessoaID);
                acessoDadosSqlServer.AdicionarParametros("@UsuarioID", compra.Usuario.UsuarioID);

                compra.CompraID = int.Parse(acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspManterCompra"));

                ListaCompraNegocios listaCompraNegocios = new ListaCompraNegocios();
                AnimalNegocios      animalNegocios      = new AnimalNegocios();
                foreach (Animal animal in compra.Animais)
                {
                    animal.AnimalAtivo = true;
                    animal.AnimalID    = animalNegocios.Cadastrar(animal);

                    ListaCompra listaCompra = new ListaCompra();
                    listaCompra.CompraID = compra.CompraID;
                    listaCompra.Animal   = animal;
                    listaCompraNegocios.Cadastrar(listaCompra);
                }
                return(compra.CompraID);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }