Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvidas com relação a mensagem para o usuário


rtavix

Pergunta

Estou com dúvidas de como eu posso enviar um log de mensagem para o usuário, implementei esse código, porém tanto o log informado para o usuário que o interessado de uma determinada linha foi importado referente ao processo tal, mas não funciona, e o log de atividades que não esta salvando os dados do usuário no banco de dados. Por gentileza alguém poderia me instruir melhor?

 

Segue o código:

private System.Threading.Tasks.Task ProcessamentoTabela(IEnumerable<DataRow> dadosparam, int indiceLinha)
        {
            Action<object> processamento = (dados) =>
            {
                /*if (NHibernate.Context.ThreadStaticSessionContext.HasBind(NhibernateHelper.SessionFactory.))*/

                NHibernate.Context.ThreadStaticSessionContext.Bind(NhibernateHelper.HelpThreading().OpenSession());

                /*try
                {
                    loglbl.Text += DateTime.Now.ToString("dd/MM/yyyy ss:fff ") + " ## " + NhibernateHelper.SessaoCorrente.IsConnected;
                }
                catch (Exception ex)
                {
                    loglbl.Text += DateTime.Now.ToString("dd/MM/yyyy ss:fff ") + " ## " + ex.Message;
                }*/
                /*var lista = ((IEnumerable<DataRow>)dados).FirstOrDefault();

                var processo = aplProcesso.consultarPorNProcessoER(lista.ItemArray[1].ToString());*/

                foreach (var linha in (IEnumerable<DataRow>)dados)
                {
                    int i = 0;
                    i = i + 1;
                    List<Processo> listaProcessoExistente = new List<Processo>();
                    Processo processo = null;
                    Interessado interessado = new Interessado();

                    //busca o processo pelo nº judicial anterior ou atual
                    if (!linha.ItemArray[1].ToString().Equals(""))
                        processo = aplProcesso.consultarPorNProcessoER(linha.ItemArray[1].ToString());
                    if (processo == null)
                    {
                        if (!linha.ItemArray[2].ToString().Equals(""))
                            processo = aplProcesso.consultarPorNProcessoER(linha.ItemArray[2].ToString());
                    }
                    //busca o interessado por cpf/cnpj
                    if (linha.ItemArray[7].ToString().Length == 14)
                        interessado = aplInteressado.ConsultarPorCPF(AuxiliarCPF_CNPJ.DesformataCPF(linha.ItemArray[7].ToString()));

                    if (linha.ItemArray[7].ToString().Length == 18)
                        interessado = aplInteressado.ConsultarPorCPF(AuxiliarCPF_CNPJ.DesformataCNPJ(linha.ItemArray[7].ToString()));

                    if (processo != null)
                    {
                        //se o processo não for nulo busco todos procinter relacionados a ele
                        List<ProcessoInteressado> listaprocinter = aplProcessoInteressado.consultarPorIdProcesso(processo.Codigo);
                        if (listaprocinter.Exists(o => o.Interessado == interessado))
                            //loglbl.Text = loglbl.Text + "O interessado informado na linha " + indiceLinha.ToString() + " foi adicionado novamente ao processo " + processo.NumProcessoJudicial + " <br>";
                            log.Append("O interessado informado na linha " + linha + " foi adicionado novamente ao processo " + processo.NumProcessoJudicial + " <br>");

                        setProcInter(processo, interessado, linha);
                    }
                    else
                    {
                        //Novo Processo - 6.3
                        processo = new Processo();
                        processo.Interessado = interessado;
                        processo.NumProcessoJudicial = linha.ItemArray[2].ToString().Trim();
                        processo.RenunciaCredito = "N";
                        processo.Situacao = new AplSituacao().ConsultarPorId(1);
                        processo.HonorarioDativo = "S";
                        processo.Reclamado = new AplReclamado().buscaItem(2);
                        processo.TipoDocumento = new AplTipoDocumento().buscaItem(4);
                        processo.TipoProcesso = "O";
                        if (linha.ItemArray[5].ToString().Contains("juizado"))
                            processo.Tribunal = new AplTribunal().buscaItem(71);
                        else
                            processo.Tribunal = new AplTribunal().buscaItem(3);
                        processo.NaturezaDespeza = new AplNaturezadeDespesa().buscaItem(3);

                        VaraExecucao vara = new VaraExecucao();
                        if (!linha.ItemArray[3].ToString().Equals("") && !linha.ItemArray[5].ToString().Equals(""))
                        {
                            List<VaraExecucao> listaVaraComarca = aplVaraExecucao.ConsultarPorNomeVaraNomeComarca(linha.ItemArray[5].ToString().Trim(), linha.ItemArray[3].ToString().Trim());
                            if (listaVaraComarca.Count != 0)
                            {
                                if (linha.ItemArray[4].ToString().Equals(""))
                                {
                                    vara = listaVaraComarca.Find(o => o.NumeroVara == null);
                                }
                                else
                                {
                                    vara = listaVaraComarca.Find(o => o.NumeroVara == int.Parse(linha.ItemArray[4].ToString().Trim()));
                                }
                            }
                        }
                        if (vara != null && vara.Codigo != 0)
                        {
                            processo.VaraExecucao = vara;
                        }

                        //obter lista sem registros duplicados. (Robson)
                        var ListaSemDuplicados = listaGravarProcesso.Distinct().ToList();
                        aplProcesso.gravar(processo);
                        aplLog.LogarAtividade(aplUsuario.buscaPorLogin(ObterUsuarioAutenticado().Login), "Importação do processo de número judicial: " + processo.NumProcessoJudicial
                                                + ". Interessado: " + processo.Interessado.Nome + " - " + processo.Interessado.CPF_CNPJ + ". Tribunal "
                                                + processo.Tribunal.NomeTribunal + ".", DateTime.Now);
                        //log.Append("O processo " + processo.NumProcessoJudicial + " informado na linha " + (i + 1) + " foi cadastrado com sucesso. <br>");

                        setProcInter(processo, interessado, linha);
                    }

                }//Fim For
                //ClientScript.RegisterStartupScript(typeof(string), "Carregando...", "<script>$('#progressbar').progressbar({value: 70});</script>");
                ClientScript.RegisterStartupScript(Page.GetType(), "Carregando...", "<script>document.getElementById('progresso').style.width = '60%';</script>");

                if (listaGravarProcInter.Count != 0)
                {
                    foreach (ProcessoInteressado item in listaGravarProcInter)
                    {
                        //obter lista sem registros duplicados. (Robson)
                        var ListaSemDuplicados = listaGravarProcInter.Distinct().ToList();
                        aplProcessoInteressado.salvar(item);
                    }
                }


                if (listaLogsAuditoria.Count != 0)
                {
                    foreach (var item in listaLogsAuditoria)
                    {
                        aplLog.LogarAtividade(aplUsuario.buscaPorLogin(ObterUsuarioAutenticado().Login), item, DateTime.Now);
                    }
                }
                logimportacao.Visible = true;
                loglbl.Text = log.ToString();
                //ClientScript.RegisterStartupScript(Page.GetType(), "Carregando...", "<script>document.getElementById('progresso').style.width = '100%';</script>");
                ClientScript.RegisterStartupScript(typeof(string), "Alerta", "<script>alert('Arquivo importado com sucesso. Verifique o log na tela. ')</script>");
            };


            //else
            //{
            //    logimportacao.Visible = true;
            //    loglbl.Text = log.ToString();
            //    ClientScript.RegisterStartupScript(typeof(string), "Erro", "<script>alert('Arquivo não importado. Verifique o log de erros na tela. ')</script>");



            ISession sessao = ThreadStaticSessionContext.Unbind(NhibernateHelper.HelpThreading());
            if (sessao != null)
            {
                if (sessao.Transaction != null && sessao.Transaction.IsActive)
                {
                    sessao.Transaction.Rollback();
                }
                else
                {
                    sessao.Flush();
                }
                sessao.Close();

            }
            else
            {
                logimportacao.Visible = true;
                loglbl.Text = log.ToString();
                ClientScript.RegisterStartupScript(typeof(string), "Erro", "<script>alert('Arquivo não importado. Verifique o log de erros na tela. ')</script>");
            }


            //Tarefas baseadas de forma assíncrona
            System.Threading.Tasks.Task tarefa_executar = new System.Threading.Tasks.Task(processamento, dadosparam);

            return tarefa_executar;
        }

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...