public void CadastraProcesso(Cliente cliente, ParteContraria parteContraria, Processo processo,
                                     bool novoCliente, bool novaParteContraria)
        {
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            if (novoCliente)
            {
                CadastraCliente(cliente);                                                   //CADASTROU CLIENTE
            }
            if (novaParteContraria)
            {
                CadastraParteContraria(parteContraria);                                     //CADASTROU PARTE CONTRARIA
            }
            SqlCommand cmd = new SqlCommand("spCadastraProcesso", con.GetConexao());

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@IdCliente", processo.IdCliente);
            cmd.Parameters.AddWithValue("@IdParteContraria", processo.IdParteContraria);
            cmd.Parameters.AddWithValue("@NumeroProcesso", processo.NumProcesso);
            cmd.Parameters.AddWithValue("@Foro", processo.Foro);
            cmd.Parameters.AddWithValue("@TipoAcao", processo.TipoAcao);
            cmd.Parameters.AddWithValue("@Area", processo.Area);
            cmd.Parameters.AddWithValue("@AndamentoProcesso", processo.AndamentoProcesso);
            cmd.Parameters.AddWithValue("@FoiIndicacao", processo.FoiIndicacao);
            cmd.Parameters.AddWithValue("@NomeCaptador", processo.NomeCaptador);
            cmd.Parameters.AddWithValue("@LocalDescobrimento", processo.LocalDescobrimento);
            cmd.ExecuteNonQuery();                                                      //CADASTROU PROCESSO

            con.FechaConexao();
        }
        public bool IsParteContrariaNovoNome(ParteContraria parteContraria)
        {
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            SqlCommand cmd = new SqlCommand("spIsParteContrariaNovaPeloNome", con.GetConexao());

            cmd.Parameters.AddWithValue("@Nome", parteContraria.Nome);
            cmd.CommandType = CommandType.StoredProcedure;
            using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                sda.Fill(dt);
                if (dt.Rows.Count <= 0)
                {
                    return(true);
                }
                else
                {
                    IdentificaParteContrariaNome(parteContraria);
                    return(false);
                }
            }
            con.FechaConexao();
        }
        public void IdentificaParteContraria(ParteContraria parteContraria)
        {
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            SqlCommand cmd = new SqlCommand("spIsParteContrariaNova", con.GetConexao());

            cmd.Parameters.AddWithValue("@CPF", parteContraria.Cpf);
            cmd.Parameters.AddWithValue("@CNPJ", parteContraria.Cnpj);
            cmd.Parameters.AddWithValue("@Tipo", parteContraria.Tipo);
            cmd.CommandType = CommandType.StoredProcedure;
            using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                sda.Fill(dt);
                if (dt.Rows.Count > 0)
                {
                    parteContraria.IdParteContraria = int.Parse(dt.Rows[0][0].ToString());
                    parteContraria.Nome             = dt.Rows[0][1].ToString();
                    parteContraria.Tipo             = dt.Rows[0][2].ToString();
                    parteContraria.Cpf  = dt.Rows[0][3].ToString();
                    parteContraria.Cnpj = dt.Rows[0][4].ToString();
                }
            }
            con.FechaConexao();
        }
        public void AlteraProcesso(Cliente cliente, ParteContraria parteContraria,
                                   Processo processo, bool novoCliente, bool novaParteContraria) //USANDO VARIAVEIS DE CONTROLE PARA SABER SE VAI INSERIR UM NOVO REGISTRO NO UPDATE
        {
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            if (!novoCliente)
            {
                //ALTERA CLIENTE
                SqlCommand cmd1 = new SqlCommand("spUpdateCliente ", con.GetConexao());
                cmd1.CommandType = CommandType.StoredProcedure;
                cmd1.Parameters.AddWithValue("@IdCliente", cliente.IdCliente);
                cmd1.Parameters.AddWithValue("@Nome", cliente.Nome);
                cmd1.Parameters.AddWithValue("@CPF", cliente.Cpf);
                cmd1.Parameters.AddWithValue("@Telefone", cliente.Telefone);
                cmd1.ExecuteNonQuery();
            }
            else
            {
                CadastraCliente(cliente);
            }

            if (!novaParteContraria)
            {
                //ALTERA PARTE CONTRARIA
                SqlCommand cmd2 = new SqlCommand("spUpdateParteContraria", con.GetConexao());
                cmd2.CommandType = CommandType.StoredProcedure;
                cmd2.Parameters.AddWithValue("@IdParteContraria", parteContraria.IdParteContraria);
                cmd2.Parameters.AddWithValue("@Nome", parteContraria.Nome);
                cmd2.Parameters.AddWithValue("@CPF", parteContraria.Cpf);
                cmd2.Parameters.AddWithValue("@CNPJ", parteContraria.Cnpj);
                cmd2.Parameters.AddWithValue("@Tipo", parteContraria.Tipo);
                cmd2.ExecuteNonQuery();
            }
            else
            {
                CadastraParteContraria(parteContraria);
            }

            //ALTERA PROCESSO
            SqlCommand cmd = new SqlCommand("spUpdateProcesso", con.GetConexao());

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@IdProcesso", processo.IdProcesso);
            cmd.Parameters.AddWithValue("@IdCliente", processo.IdCliente);
            cmd.Parameters.AddWithValue("@IdParteContraria", processo.IdParteContraria);
            cmd.Parameters.AddWithValue("@NumeroProcesso", processo.NumProcesso);
            cmd.Parameters.AddWithValue("@Foro", processo.Foro);
            cmd.Parameters.AddWithValue("@TipoAcao", processo.TipoAcao);
            cmd.Parameters.AddWithValue("@Area", processo.Area);
            cmd.Parameters.AddWithValue("@AndamentoProcesso", processo.AndamentoProcesso);
            cmd.Parameters.AddWithValue("@FoiIndicacao", processo.FoiIndicacao);
            cmd.Parameters.AddWithValue("@NomeCaptador", processo.NomeCaptador);
            cmd.Parameters.AddWithValue("@LocalDescobrimento", processo.LocalDescobrimento);
            cmd.ExecuteNonQuery();

            con.FechaConexao();
        }
        public void CadastraParteContraria(ParteContraria parteContraria)
        {
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            SqlCommand cmd = new SqlCommand("spCadastraParteContraria", con.GetConexao());

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@Nome", parteContraria.Nome);
            cmd.Parameters.AddWithValue("@CPF", parteContraria.Cpf);
            cmd.Parameters.AddWithValue("@CNPJ", parteContraria.Cnpj);
            cmd.Parameters.AddWithValue("@Tipo", parteContraria.Tipo);
            cmd.ExecuteNonQuery();
            con.FechaConexao();
        }
        public void LocalizaProcesso(Cliente cliente, ParteContraria parteContraria, Processo processo)
        {
            //CLIENTE-CONSULTA
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            SqlCommand cmd = new SqlCommand("spGetProcessoCliente", con.GetConexao());

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@IdCliente", cliente.IdCliente);
            cmd.Parameters.AddWithValue("@IdParteContraria", parteContraria.IdParteContraria);
            cmd.Parameters.AddWithValue("@IdProcesso", processo.IdProcesso);
            using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                sda.Fill(dt);
                if (dt.Rows.Count > 0)
                {
                    processo.IdProcesso             = int.Parse(dt.Rows[0][0].ToString());
                    cliente.IdCliente               = int.Parse(dt.Rows[0][1].ToString());
                    processo.IdCliente              = int.Parse(dt.Rows[0][1].ToString()); //PEGA O ID DO CLIENTE PARA CASO DE
                    parteContraria.IdParteContraria = int.Parse(dt.Rows[0][2].ToString());
                    processo.IdParteContraria       = int.Parse(dt.Rows[0][2].ToString()); //PEGA O ID DA PARTE CONTRARIA PARA CASO DE

                    processo.NumProcesso        = dt.Rows[0][3].ToString();
                    processo.Foro               = dt.Rows[0][4].ToString();
                    processo.TipoAcao           = dt.Rows[0][5].ToString();
                    processo.Area               = dt.Rows[0][6].ToString();
                    processo.FoiIndicacao       = dt.Rows[0][7].ToString();
                    processo.NomeCaptador       = dt.Rows[0][8].ToString();
                    processo.LocalDescobrimento = dt.Rows[0][9].ToString();
                    processo.AndamentoProcesso  = dt.Rows[0][10].ToString();

                    cliente.Nome     = dt.Rows[0][11].ToString();
                    cliente.Cpf      = dt.Rows[0][12].ToString();
                    cliente.Telefone = dt.Rows[0][13].ToString();

                    parteContraria.Nome = dt.Rows[0][14].ToString();
                    parteContraria.Cpf  = dt.Rows[0][15].ToString();
                    parteContraria.Cnpj = dt.Rows[0][16].ToString();
                    parteContraria.Tipo = dt.Rows[0][17].ToString();
                }
            }
            con.FechaConexao();
        }
        public void PegaUltimoIdParteContraria(ParteContraria parteContraria)
        {
            FabricaConexao con = new FabricaConexao();

            con.AbreConexao();
            SqlCommand cmd = new SqlCommand("spPegaUltimoIdParteContraria", con.GetConexao());

            cmd.CommandType = CommandType.StoredProcedure;
            using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                sda.Fill(dt);
                if (dt.Rows.Count <= 0)
                {
                    parteContraria.IdParteContraria = 1;
                }
                else
                {
                    parteContraria.IdParteContraria = int.Parse(dt.Rows[0][0].ToString());
                }
            }
            con.FechaConexao();
        }
 public void ParteContrariaAdd(ParteContraria itens)
 {
     _repositorio.Add(itens);
 }
 public void ParteContrariaUpdate(ParteContraria itens)
 {
     _repositorio.Update(itens);
 }