Example #1
0
        /// <summary>
        /// Função que Transmite a Entidade para a DAL fazer DELETE
        /// </summary>
        /// <param name="objEnt"></param>
        /// <returns></returns>
        public bool Delete(MOD_importaPessoa objEnt)
        {
            using (TransactionScope objTrans = new TransactionScope())
            {
                try
                {
                    bool blnRetorno    = true;
                    bool blnRetornoLog = true;

                    #region Movimentação da tabela ImportaPessoa e Logs

                    objDAL     = new DAL_importaPessoa();
                    objDAL_Log = new DAL_log();

                    //Chama a função que converte as datas
                    objEnt.Logs = new BLL_importaPessoa_Log().CriarLog(objEnt, "Delete");
                    objEnt.Logs = new BLL_importaPessoa_Log().ValidaLog(objEnt.Logs);

                    blnRetorno    = objDAL.Delete(objEnt);
                    blnRetornoLog = objDAL_Log.inserir(objEnt.Logs);

                    #endregion

                    //Se der falso qualquer retorno a Transação deve ser Anulada
                    if (false.Equals(blnRetorno) || false.Equals(blnRetornoLog))
                    {
                        //finaliza a transação
                        objTrans.Dispose();
                        throw new Exception(modulos.MsgErroExcluir);
                    }
                    //completa a transação
                    objTrans.Complete();
                    return(true);
                }
                catch (SqlException exl)
                {
                    //finaliza a transação
                    objTrans.Dispose();
                    throw exl;
                }
                catch (Exception ex)
                {
                    //finaliza a transação
                    objTrans.Dispose();
                    throw ex;
                }
            }
        }
Example #2
0
 /// <summary>
 /// Função que Solicita para a DAL pesquisar o Próximo ID
 /// </summary>
 /// <returns></returns>
 public Int32 RetornaId()
 {
     try
     {
         objDAL = new DAL_importaPessoa();
         return(objDAL.RetornaId());
     }
     catch (SqlException exl)
     {
         throw exl;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Example #3
0
        /// <summary>
        /// Função que Transmite a Entidade para a DAL fazer UPDATE
        /// </summary>
        /// <param name="objEnt"></param>
        /// <returns></returns>
        public bool Update(MOD_importaPessoa objEnt, out List <MOD_importaPessoa> listaRetorno)
        {
            using (TransactionScope objTrans = new TransactionScope())
            {
                try
                {
                    bool blnRetorno       = true;
                    bool blnRetornoLog    = true;
                    bool blnRetornoItem   = true;
                    bool blnRetornoErro   = true;
                    bool blnRetornoPessoa = true;

                    #region Movimentação da tabela ImportaPessoa e Logs

                    objDAL        = new DAL_importaPessoa();
                    objDAL_Log    = new DAL_log();
                    objBLL_Valida = new BLL_ValidacaoImporta();

                    //Chama a função que converte as datas
                    objEnt = objBLL_Valida.ConverteData(objEnt);

                    //Chama a função que converte as datas
                    objEnt.Logs = new BLL_importaPessoa_Log().CriarLog(objEnt, "Update");
                    objEnt.Logs = new BLL_importaPessoa_Log().ValidaLog(objEnt.Logs);

                    blnRetorno    = objDAL.Update(objEnt);
                    blnRetornoLog = new DAL_log().inserir(objEnt.Logs);

                    //verifica se o retorno foi false retorna Erro
                    if (false.Equals(blnRetorno) || false.Equals(blnRetornoLog))
                    {
                        throw new Exception(modulos.MsgErroSalvar);
                    }

                    #endregion

                    #region Movimentação da tabela ImportaPessoaItem

                    //verifica se há registro na lista
                    if (null != objEnt.ListaPessoaItem && objEnt.ListaPessoaItem.Count > 0)
                    {
                        foreach (MOD_importaPessoaItem ent in objEnt.ListaPessoaItem)
                        {
                            objBLL_ImportaItem = new BLL_ImportaPessoaItem();
                            MOD_pessoa pessoa = new MOD_pessoa();

                            /*Faz a Inserção dos dados na tabela Pessoas*/
                            blnRetornoPessoa = Import(ent, out pessoa);

                            /*Verifica se foi validado o retorno da Tabela ImportaItem
                             * Caso tenha sido validado, é feito o envio dos dados para a classe pessoa para fazer a inserção*/
                            if (true.Equals(blnRetornoPessoa))
                            {
                                ent.CodPessoa = pessoa.CodPessoa;
                                ent.Importado = "Sim";

                                /*Verifica se o código do item é igual a zero
                                 * Caso for igual a zero chama a clausula INSERT para inserir novo registro*/
                                if ("0".Equals(ent.CodImportaPessoaItem))
                                {
                                    blnRetornoItem = objBLL_ImportaItem.Insert(ent);
                                }
                                else
                                {
                                    blnRetornoItem = objBLL_ImportaItem.Update(ent);
                                }
                            }
                            //verifica se o retorno foi false retorna Erro
                            if (false.Equals(blnRetornoItem) || false.Equals(blnRetornoPessoa))
                            {
                                throw new Exception(modulos.MsgErroSalvar);
                            }
                        }
                    }

                    #endregion

                    #region Movimentação da tabela ImportaPessoaItemErros

                    //verifica se há registro na lista
                    if (null != objEnt.ListaPessoaItemErros && objEnt.ListaPessoaItemErros.Count > 0)
                    {
                        foreach (MOD_importaPessoaItemErro ent in objEnt.ListaPessoaItemErros)
                        {
                            objBLL_ImportaErro = new BLL_ImportaPessoaErro();

                            /*Verifica se o código do item é igual a zero
                             * Caso for igual a zero chama a clausula INSERT para inserir novo registro*/
                            if ("0".Equals(ent.CodImportaPessoaItem))
                            {
                                blnRetornoErro = objBLL_ImportaErro.Insert(ent);
                            }
                            else
                            {
                                blnRetornoErro = objBLL_ImportaErro.Update(ent);
                            }

                            //verifica se o retorno foi false retorna Erro
                            if (false.Equals(blnRetornoErro))
                            {
                                throw new Exception(modulos.MsgErroSalvar);
                            }
                        }
                    }

                    #endregion

                    //Se der falso qualquer retorno a Transação deve ser Anulada
                    if (false.Equals(blnRetorno) || false.Equals(blnRetornoLog) ||
                        false.Equals(blnRetornoItem) || false.Equals(blnRetornoErro))
                    {
                        //finaliza a transação
                        objTrans.Dispose();
                        throw new Exception(modulos.MsgErroSalvar);
                    }
                    //completa a transação
                    objTrans.Complete();

                    //Busca o Registro inserido para retornar para gravar na tabela de Importados com sucesso
                    objBLL_BuscaImporta = new BLL_buscaPorCodImportaPessoa();
                    listaRetorno        = objBLL_BuscaImporta.Buscar(objEnt.CodImportaPessoa);

                    //Retorna a Confirmação que foi gravado na tabela Pessoa
                    return(true);
                }
                catch (SqlException exl)
                {
                    //finaliza a transação
                    objTrans.Dispose();
                    throw exl;
                }
                catch (Exception ex)
                {
                    //finaliza a transação
                    objTrans.Dispose();
                    throw ex;
                }
            }
        }