Exemple #1
0
        private void btnPesquisa_Click(object sender, EventArgs e)
        {
            try
            {
                iVerifica = 1;
                if (listaPesquisa != null)
                {
                    ACSDataBase.deleteBloqueiaDocumentosLote((int)ACSGlobal.UsuarioLogado.USR_IDUSUARIO, listaPesquisa);
                }


                WFLoading.ShowLoad(true, "Assinatura de Documentos", "Buscando Documentos à serem assinados...");

                string numeroAtendimento = txtNumeroAtendimento.Text;
                string dataAtendimento   = txtDataAtendimento.Text;
                bool   fVerTodos         = chkVerTodos.Checked;
                pctSelected.Image = Resources.documentNull;

                btnCoAssinador.Enabled = true;
                lblInformativo.Text    = "";

                var iNivelAssinaUsuario = ACSGlobal.UsuarioLogado.USR_NIVELASSINA;

                var nivelAssinaCondifg = ACSConfig.GetApp().NIVELASSINA;

                if (nivelAssinaCondifg.ToUpper() == "ALL")
                {
                    listaPesquisa = ACSDataBase.GetDocumentosAssN2(numeroAtendimento, dataAtendimento, fVerTodos, ACSGlobal.UsuarioLogado.USR_IDUSUARIO, iNivelAssinaUsuario.GetValueOrDefault());
                }
                else
                {
                    listaPesquisa = ACSDataBase.GetDocumentosAssN3(numeroAtendimento, dataAtendimento, fVerTodos, ACSGlobal.UsuarioLogado.USR_IDUSUARIO, iNivelAssinaUsuario.GetValueOrDefault());
                }

                listaPesquisaNova = new List <GEDDocumentosNivel2>();


                if (iNivelAssinaUsuario == 2)
                {
                    if (ACSGlobal.ListaGruposSetoresLogado == null || ACSGlobal.ListaGruposSetoresLogado.Count == 0)
                    {
                        listaPesquisa = new List <GEDDocumentosNivel2>();
                    }
                    //else
                    //{

                    //    listaPesquisa = listaPesquisa.Where(c => ACSGlobal.ListaGruposSetoresLogado.Contains(c.DOC_IDGRUPOUSUARIOCAPTURA)).ToList();

                    //}
                }

                //  MessageBox.Show("1");
                if (nivelAssinaCondifg.ToUpper() != "ALL")
                {
                    //     MessageBox.Show("ALL");
                    foreach (var item in listaPesquisa)
                    {
                        //ACSLog.InsertLog(MessageBoxIcon.Information, "STD_NIVELASSINA: " + item.STD_NIVELASSINA);
                        //ACSLog.InsertLog(MessageBoxIcon.Information, "iNivelAssinaUsuario: " + iNivelAssinaUsuario);
                        if (item.STD_NIVELASSINA >= iNivelAssinaUsuario)
                        {
                            if ((item.STD_NIVELASSINA == 4 || item.STD_NIVELASSINA == 3) && iNivelAssinaUsuario == 3)
                            {
                                //verifica se foi assinado no segundo nivel para passar para o terceiro
                                if (item.DOC_IDUSUARIOASSINANIVEL3 == null)
                                {
                                    item.DOC_ASSINATURA = "-";
                                    listaPesquisaNova.Add(item);
                                }
                                //verifica se foi assinado no terceiro nivel para passar para o terceiro_2(Vulgo 4)
                                if (item.DOC_IDUSUARIOASSINANIVEL3 != null &&
                                    item.DOC_IDUSUARIOASSINANIVEL3_2 == null &&
                                    item.DOC_IDUSUARIOASSINANIVEL3 != ACSGlobal.UsuarioLogado.USR_IDUSUARIO &&
                                    item.STD_CODIGO == "CPSI")
                                {
                                    item.DOC_ASSINATURA = "Nível 3";
                                    listaPesquisaNova.Add(item);
                                }
                            }
                        }
                    }


                    // MessageBox.Show("FINISH FOR");
                }
                else
                {
                    foreach (var item in listaPesquisa)
                    {
                        //ACSLog.InsertLog(MessageBoxIcon.Information, "STD_NIVELASSINA: " + item.STD_NIVELASSINA);
                        //ACSLog.InsertLog(MessageBoxIcon.Information, "iNivelAssinaUsuario: " + iNivelAssinaUsuario);
                        if (item.STD_NIVELASSINA >= iNivelAssinaUsuario)
                        {
                            if ((item.STD_NIVELASSINA == 4 || item.STD_NIVELASSINA == 3) && iNivelAssinaUsuario == 3)
                            {
                                //verifica se foi assinado no segundo nivel para passar para o terceiro
                                if (item.DOC_IDUSUARIOASSINANIVEL2 != null && item.DOC_IDUSUARIOASSINANIVEL3 == null)
                                {
                                    item.DOC_ASSINATURA = "Nível 2";
                                    listaPesquisaNova.Add(item);
                                }
                                //verifica se foi assinado no terceiro nivel para passar para o terceiro_2(Vulgo 4)
                                if (item.DOC_IDUSUARIOASSINANIVEL2 != null &&
                                    item.DOC_IDUSUARIOASSINANIVEL3 != null &&
                                    item.DOC_IDUSUARIOASSINANIVEL3_2 == null &&
                                    item.DOC_IDUSUARIOASSINANIVEL3 != ACSGlobal.UsuarioLogado.USR_IDUSUARIO &&
                                    item.STD_CODIGO == "CPSI")
                                {
                                    item.DOC_ASSINATURA = "Nível 3";
                                    listaPesquisaNova.Add(item);
                                }
                            }
                            else if ((item.STD_NIVELASSINA == 4 || item.STD_NIVELASSINA == 3) && iNivelAssinaUsuario == 2)
                            {
                                //verifica se foi assinado no primeiro nivel para passar para o segundo
                                if (item.DOC_IDUSUARIOASSINANIVEL2 == null)
                                {
                                    item.DOC_ASSINATURA = "Nível 1";
                                    listaPesquisaNova.Add(item);
                                }
                            }
                            else
                            if (item.STD_NIVELASSINA == 2 && iNivelAssinaUsuario == 2)
                            {
                                //verifica se foi assinado no primeiro nivel para passar para o segundo
                                if (item.DOC_IDUSUARIOASSINANIVEL2 == null)
                                {
                                    item.DOC_ASSINATURA = "Nível 1";
                                    listaPesquisaNova.Add(item);
                                }
                            }
                            else
                            {
                                listaPesquisaNova.Add(item);
                            }
                        }
                    }
                }



                //   MessageBox.Show("2");

                //MessageBox.Show(listaPesquisaNova.Count.ToString());

                lblNumeroDocumentos.Text             = listaPesquisaNova.Count().ToString();
                lblNumeroDocumentosSelecionados.Text = "0";

                if (listaPesquisaNova.Count > 0)
                {
                    pnBtnAll.Visible           = true;
                    pnAllInfo.Visible          = true;
                    btnSelecionarTodos.Visible = true;

                    dtgv_DocsN2.AutoGenerateColumns = false;
                    dtgv_DocsN2.DataSource          = listaPesquisaNova;
                    btnCoAssinador.Visible          = true;
                    this.dtgv_DocsN2.Visible        = true;
                }
                else
                {
                    pnAllInfo.Visible                    = false;
                    pnBtnAll.Visible                     = false;
                    btnSelecionarTodos.Visible           = false;
                    this.dtgv_DocsN2.Visible             = false;
                    lblNumeroDocumentos.Text             = "0";
                    lblNumeroDocumentosSelecionados.Text = "0";

                    dtgv_DocsN2.DataSource    = null;
                    txtDataAtendimento.Text   = string.Empty;
                    txtNumeroAtendimento.Text = string.Empty;
                    btnCoAssinador.Visible    = false;
                    WFLoading.CloseLoad();
                    if ((ACSGlobal.ListaGruposSetoresLogado != null && ACSGlobal.ListaGruposSetoresLogado.Count > 0) || iNivelAssinaUsuario == 4 || iNivelAssinaUsuario == 3)
                    {
                        if (chkVerTodos.Checked)
                        {
                            WFMessageBox.Show("Não possui mais documentos a serem assinados!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            WFMessageBox.Show("Nenhum item encontrado com as informações passadas!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        WFMessageBox.Show("Grupo do usuário não está vinculado a nenhum setor", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }

                tableLayoutPanel1.ColumnStyles[0] = new ColumnStyle(SizeType.Percent, 100);
                tableLayoutPanel1.ColumnStyles[1] = new ColumnStyle(SizeType.Percent, 0);
                btnVoltar.Visible = false;
                WFLoading.CloseLoad();
            }
            catch (Exception ex)
            {
                throw;
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            WFLoading.ShowLoad(true, "Aguarde um momento", "Pesquisando Atendimento");

            btnPesquisa.Enabled = false;

            lbTotalRegistros.Text = string.Empty;

            var Tipo       = 0;
            var TipoPessoa = 0;

            if (this.rbPF.Checked)
            {
                TipoPessoa = 0;
            }
            else
            {
                TipoPessoa = 1;
            }

            try
            {
                GetTipoPessoaSetTipoBusca(false);
            }
            catch (Exception ex)
            {
                WFMessageBox.Show(ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
                btnPesquisa.Enabled = true;
                return;
            }

            switch (TipoPessoa)
            {
            case 0:
                foreach (RadioButton r in flpTipos.Controls)
                {
                    if (r.Checked)
                    {
                        Tipo = (int)(r.Tag as GEDTIPOSBUSCALOTES).TBL_ID;
                        break;
                    }
                }
                break;

            case 1:
                foreach (RadioButton r in flpTipos.Controls)
                {
                    if (r.Checked)
                    {
                        Tipo = (int)(r.Tag as GEDTIPOSBUSCALOTESPJ).TPJ_ID;
                        break;
                    }
                }
                break;
            }

            try
            {
                if (Tipo == 0)
                {
                    btnPesquisa.Enabled = true;
                    throw new Exception("Selecione Tipo de Busca!");
                }

                if (Tipo == 1)
                {
                    this.tbValue.Clear();
                }

                if ((Tipo > 1) && (tbValue.Text.Trim() == string.Empty) && (ACSConfig.SystemAction != ModeSystem.Process))
                {
                    WFMessageBox.Show("Informe um valor para pesquisa!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    tbValue.Focus();
                    btnPesquisa.Enabled = true;
                    WFLoading.CloseLoad();
                    return;
                }

                var IdStatusLote = 0;
                if (ACSConfig.SystemAction == ModeSystem.Process)
                {
                    IdStatusLote = (int)StatusLote.Capturado;
                }

                var lotes = ACSDataBase.GetLotes(TipoPessoa, Tipo, tbValue.Text.Trim(), dateTimePicker1.Value.Date, dateTimePicker2.Value.Date.AddHours(23).AddMinutes(59).AddSeconds(59), IdStatusLote).ToList();

                var count = lotes.Count();

                if (count <= 0)
                {
                    //pesquisar no Tasy rest
                    AtendimentoTasy     atendimentoTasy = new AtendimentoTasy();
                    AtendimentoResponse objTasy1        = atendimentoTasy.GetAtendimento(tbValue.Text.Trim());


                    if (objTasy1 == null)
                    {
                        WFLoading.CloseLoad();
                        btnPesquisa.Enabled = true;
                        throw new Exception("Nenhum registro encontrado!");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(objTasy1.dataNascimento))
                        {
                            WFLoading.CloseLoad();
                            btnPesquisa.Enabled = true;
                            throw new Exception("Impossível Prosseguir, Paciente não possui Data de Nascimento cadastrado no TASY!");
                        }
                        else if (string.IsNullOrEmpty(objTasy1.dataHoraAtendimento))
                        {
                            WFLoading.CloseLoad();
                            btnPesquisa.Enabled = true;
                            throw new Exception("Impossível Prosseguir, Paciente não possui Data de Atendimento cadastrado no TASY!");
                        }
                        else
                        {
                            btnPesquisa.Enabled = false;

                            //------------------------------------------------CLIENTE PF------------------------------------------------------//

                            ///PROCURA CLIENTE PELO CPF
                            GEDCLIENTEPF cliente = ACSDataBase.GetClientePF(objTasy1.cpf, objTasy1.registroProntuario);

                            //CASO NAO ENCONTRE, PASSAR PELO NOVO METODO PROCURANDO PELOS PRONTUARIOS UNIFICADOS
                            if (cliente == null)
                            {
                                cliente = ACSDataBase.GetClientePFRegistros(objTasy1.registroProntuario, objTasy1.registroProntuarioHist);
                            }

                            //CASO NAO ACHE DE NENHUMA FORMA ACIMA, O CLIENTE NÃO EXISTE NA BASE. CRIAR NOVO CLIENTEPF
                            if (cliente == null)
                            {
                                if (string.IsNullOrEmpty(objTasy1.dataHoraCadastroPaciente))
                                {
                                    objTasy1.dataHoraCadastroPaciente = DateTime.Now.ToString();
                                }

                                GEDCLIENTEPF clientePF = new GEDCLIENTEPF()
                                {
                                    CPF_IDCLIENTEPF             = 0,
                                    CPF_REGISTRO                = objTasy1.registroProntuario,
                                    CPF_REGISTROOLD             = (objTasy1.registroProntuarioHist == "0") ? "" : objTasy1.registroProntuarioHist,
                                    CPF_NOME                    = objTasy1.nome,
                                    CPF_DATANASCIMENTO          = Convert.ToDateTime(objTasy1.dataNascimento),
                                    CPF_CPF                     = objTasy1.cpf,
                                    CPF_DATACADASTRO            = Convert.ToDateTime(objTasy1.dataHoraCadastroPaciente),
                                    CPF_NOMEPAI                 = "",
                                    CPF_NOMEMAE                 = "",
                                    CPF_RG                      = "",
                                    CPF_IDSEXO                  = 3,
                                    CPF_IDUNIDADE               = objTasy1.idEstabelecimento,
                                    CPF_TEL01                   = "",
                                    CPF_TEL02                   = "",
                                    CPF_CONTATO                 = "",
                                    CPF_EMAIL                   = "",
                                    CPF_OBSERVACAO              = "",
                                    CPF_FLAGATIVO               = 1,
                                    CPF_IDTIPOCONSELHO          = 0,
                                    CPF_NUMEROCONSELHO          = "",
                                    CPF_FLAGCORPOCLINICO        = 0,
                                    CPF_FLAGATUALIZARUNIFICACAO = 0
                                };

                                clientePF = ACSDataBase.InsertGEDClientePF(clientePF);
                            }
                            else
                            {
                                //nova regra... CASO EXISTA
                                // verificar se o prontuario esta diferente do paciente, se estiver, atualizar a clientePF com o novo registro. PODE TER ENCONTRADO PELO CPF OU PELOS REGISTROS ANTIGOS



                                if (cliente.CPF_REGISTRO != objTasy1.registroProntuario)
                                {
                                    var registroOLDNow = cliente.CPF_REGISTRO;

                                    cliente.CPF_IDCLIENTEPF = cliente.CPF_IDCLIENTEPF;
                                    cliente.CPF_REGISTRO    = objTasy1.registroProntuario;
                                    cliente.CPF_REGISTROOLD = cliente.CPF_REGISTROOLD + "," + registroOLDNow;
                                    cliente.CPF_NOME        = cliente.CPF_NOME;

                                    //seta flag unificado para ROBO web unificar os atendimentosmessagem
                                    cliente.CPF_FLAGATUALIZARUNIFICACAO = 1;

                                    cliente = ACSDataBase.UpdateGEDClientePF(cliente);
                                }
                            }
                            //------------------------------------------------CLIENTE PF FIM------------------------------------------------------//



                            //------------------------------------------------PASSAGEM----------------------------------------------------------//

                            //////REGRA NOVA - VERIFICAR SE A PASSAGEM JA EXISTE PELO NUMERO DE ATENDIMENTO
                            GEDPASSAGENS passagens = new GEDPASSAGENS();
                            passagens = ACSDataBase.GetPassagemByCodPassagem(objTasy1.numeroAtendimento);

                            //CASO NAO EXISTA A PASSAGEM COM O NUMERO DE ATENDIMENTO, CRIAR UMA NOVA
                            if (passagens == null)
                            {
                                passagens = new GEDPASSAGENS()
                                {
                                    PAS_IDUNIDADE           = objTasy1.idEstabelecimento,
                                    PAS_IDCONVENIO          = 0,
                                    PAS_DATAHORAPASSAGEM    = Convert.ToDateTime(objTasy1.dataHoraAtendimento),
                                    PAS_CODIGOPASSAGEM      = objTasy1.numeroAtendimento,
                                    PAS_REGISTRO            = objTasy1.registroProntuario,
                                    PAS_REGISTROOLD         = objTasy1.registroProntuarioHist,
                                    PAS_FLAGCLIENTEPF       = 1,
                                    PAS_DATAHORAPASSAGEMFIM = new DateTime(1900, 01, 01),
                                    PAS_TIPOATENDIMENTO     = string.IsNullOrEmpty(objTasy1.tipoAtendimento) ? " - " : objTasy1.tipoAtendimento
                                };

                                passagens = ACSDataBase.InsertGEDPassagem(passagens);

                                if (passagens.PAS_IDPASSAGEM == 0)
                                {
                                    passagens = ACSDataBase.GetPassagemByCodPassagem(passagens.PAS_CODIGOPASSAGEM);
                                }
                            }
                            else
                            {
                                //nova regra...
                                // verificar se o prontuario esta diferente do paciente, se estiver, atualizar a passagem com o novo registro
                                if (passagens.PAS_REGISTRO != cliente.CPF_REGISTRO)
                                {
                                    var registroOLDNow = passagens.PAS_REGISTRO;
                                    passagens.PAS_REGISTRO    = cliente.CPF_REGISTRO;
                                    passagens.PAS_REGISTROOLD = passagens.PAS_REGISTROOLD + "," + registroOLDNow;

                                    passagens = ACSDataBase.UpdateGEDPassagem(passagens);



                                    // leva as imagens da passagem/registro anterior para a nova pasta/Registro

                                    var OutputIni    = ACSConfig.GetStorage().Output;
                                    var OldFolderReg = OutputIni + "\\" + registroOLDNow;


                                    string registro = registroOLDNow;
                                    string newReg   = cliente.CPF_REGISTRO;
                                    string passagem = passagens.PAS_CODIGOPASSAGEM;                                    // "111111";



                                    var newFolderReg = OutputIni + "\\" + newReg;

                                    foreach (var firstFolder in Directory.GetDirectories(OldFolderReg))
                                    {
                                        var splitName = firstFolder.Split('\\');

                                        var folderN = splitName[splitName.Length - 1].ToString();
                                        var strDiv  = folderN.Substring(folderN.Length - 2, 2);
                                        int parseInt;

                                        string folderCreate = newFolderReg;

                                        if (!int.TryParse(strDiv, out parseInt))
                                        {
                                            folderCreate += "\\" + newReg + strDiv;
                                        }
                                        else
                                        {
                                            folderCreate += "\\" + newReg;
                                        }


                                        if (splitName[splitName.Length - 1].ToString().Contains(registro))
                                        {
                                            var OldFolderRegSecondFolder = firstFolder;

                                            foreach (var secondFolder in Directory.GetDirectories(OldFolderRegSecondFolder))
                                            {
                                                var splitNameAtendimento = secondFolder.Split('\\');

                                                //verifica se a pasta é a mesma do atendimento mencionando na pesquisa
                                                if (splitNameAtendimento[splitNameAtendimento.Length - 1].ToString() == passagem)
                                                {
                                                    //caso seja o atendimento, copiar para a nova pasta

                                                    folderCreate += "\\" + splitNameAtendimento[splitNameAtendimento.Length - 1].ToString();
                                                    if (!Directory.Exists(folderCreate))
                                                    {
                                                        Directory.CreateDirectory(folderCreate);
                                                    }


                                                    DirectoryInfo dir   = new DirectoryInfo(secondFolder);
                                                    FileInfo[]    files = dir.GetFiles();
                                                    foreach (FileInfo file in files)
                                                    {
                                                        string temppath = Path.Combine(folderCreate, file.Name);
                                                        file.CopyTo(temppath, true);
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }

                            var maxorder   = 0;
                            var inclusao   = 0;
                            var lotesMerge = ACSDataBase.GetLotes(TipoPessoa, Tipo, passagens.PAS_CODIGOPASSAGEM, dateTimePicker1.Value.Date, dateTimePicker2.Value.Date.AddHours(23).AddMinutes(59).AddSeconds(59), IdStatusLote).FirstOrDefault();

                            if (lotesMerge != null)
                            {
                                inclusao = lotesMerge.INCLUSAO;
                                maxorder = lotesMerge.MAX_ORDER;
                            }

                            GED_PROC_F_Lotes_Result loteTasy = new GED_PROC_F_Lotes_Result()
                            {
                                CPF_CNPJ             = objTasy1.cpf,
                                NOME                 = objTasy1.nome,
                                CPF_CNPJ_FLAGATIVO   = true,
                                INCLUSAO             = inclusao,
                                PAS_CODIGOPASSAGEM   = objTasy1.numeroAtendimento,
                                PAS_DATAHORAPASSAGEM = Convert.ToDateTime(objTasy1.dataHoraAtendimento),
                                TIPO_ATENDIMENTO     = objTasy1.tipoAtendimento,
                                NRO_PRONTUARIO       = objTasy1.registroProntuario,
                                DATA_NASCIMENTO      = Convert.ToDateTime(objTasy1.dataNascimento),
                                PAS_REGISTRO         = objTasy1.registroProntuario,
                                PAS_IDPASSAGEM       = (int)passagens.PAS_IDPASSAGEM,
                                MAX_ORDER            = maxorder
                            };


                            List <GED_PROC_F_Lotes_Result> lista1 = new List <GED_PROC_F_Lotes_Result>();
                            lista1.Add(loteTasy);

                            lbTotalRegistros.Text = "Total de Registros: 0";



                            dataGridView1.Font       = new System.Drawing.Font("Tahoma", 12);
                            dataGridView1.DataSource = lista1;

                            foreach (DataGridViewColumn c in dataGridView1.Columns)
                            {
                                c.Visible      = false;
                                c.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                            }

                            dataGridView1.Columns["PAS_DATAHORAPASSAGEM"].HeaderText = "Data";
                            dataGridView1.Columns["PAS_DATAHORAPASSAGEM"].Visible    = true;

                            dataGridView1.Columns["PAS_CODIGOPASSAGEM"].HeaderText = "Atendimento";
                            dataGridView1.Columns["PAS_CODIGOPASSAGEM"].Visible    = true;

                            dataGridView1.Columns["TIPO_ATENDIMENTO"].HeaderText = "Tipo de Atendimento";
                            dataGridView1.Columns["TIPO_ATENDIMENTO"].Visible    = true;

                            dataGridView1.Columns["NOME"].HeaderText = "Nome";
                            dataGridView1.Columns["NOME"].Visible    = true;

                            dataGridView1.Columns["DATA_NASCIMENTO"].HeaderText = "Data de Nascimento";
                            dataGridView1.Columns["DATA_NASCIMENTO"].Visible    = true;

                            dataGridView1.Columns["CPF_CNPJ"].HeaderText = "CPF";
                            dataGridView1.Columns["CPF_CNPJ"].Visible    = true;

                            dataGridView1.Columns["NRO_PRONTUARIO"].HeaderText = "Prontuário";
                            dataGridView1.Columns["NRO_PRONTUARIO"].Visible    = true;

                            dataGridView1.Columns["INCLUSAO"].HeaderText = "Quantidade de Imagens";
                            dataGridView1.Columns["INCLUSAO"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                            dataGridView1.Columns["INCLUSAO"].Visible = true;
                        }
                    }
                    WFLoading.CloseLoad();
                    btnPesquisa.Enabled = true;
                }
                else
                {
                    lbTotalRegistros.Text = "Total de Registros: " + count.ToString();

                    dataGridView1.Font       = new System.Drawing.Font("Tahoma", 12);
                    dataGridView1.DataSource = lotes;


                    //3
                    // criar passagem

                    foreach (DataGridViewColumn c in dataGridView1.Columns)
                    {
                        c.Visible      = false;
                        c.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                    }

                    dataGridView1.Columns["PAS_DATAHORAPASSAGEM"].HeaderText = "Data";
                    dataGridView1.Columns["PAS_DATAHORAPASSAGEM"].Visible    = true;

                    dataGridView1.Columns["PAS_CODIGOPASSAGEM"].HeaderText = "Atendimento";
                    dataGridView1.Columns["PAS_CODIGOPASSAGEM"].Visible    = true;

                    dataGridView1.Columns["TIPO_ATENDIMENTO"].HeaderText = "Tipo de Atendimento";
                    dataGridView1.Columns["TIPO_ATENDIMENTO"].Visible    = true;

                    dataGridView1.Columns["NOME"].HeaderText = "Nome";
                    dataGridView1.Columns["NOME"].Visible    = true;

                    if (TipoPessoa == 0)
                    {
                        dataGridView1.Columns["DATA_NASCIMENTO"].HeaderText = "Data de Nascimento";
                        dataGridView1.Columns["DATA_NASCIMENTO"].Visible    = true;

                        dataGridView1.Columns["NRO_PRONTUARIO"].HeaderText = "Prontuário";
                        dataGridView1.Columns["NRO_PRONTUARIO"].Visible    = true;
                    }

                    switch (TipoPessoa)
                    {
                    case 0:
                        dataGridView1.Columns["CPF_CNPJ"].HeaderText = "CPF";
                        break;

                    case 1:
                        dataGridView1.Columns["CPF_CNPJ"].HeaderText = "CNPJ";
                        break;
                    }

                    dataGridView1.Columns["CPF_CNPJ"].Visible    = true;
                    dataGridView1.Columns["INCLUSAO"].HeaderText = "Quantidade de Imagens";
                    dataGridView1.Columns["INCLUSAO"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                    dataGridView1.Columns["INCLUSAO"].Visible = true;

                    WFLoading.CloseLoad();
                    btnPesquisa.Enabled = true;
                }
            }
            catch (Exception d)
            {
                WFMessageBox.Show(d.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
                btnPesquisa.Enabled      = true;
                dataGridView1.DataSource = null;
            }

            dataGridView1.Invalidate();
        }
Exemple #3
0
        private void fnCoassinar()
        {
            try
            {
                if (string.IsNullOrEmpty(ACSGlobal.UsuarioLogado.USR_SERIALNUMBERCERT))
                {
                    btnCoAssinador.Enabled = true;
                    lblInformativo.Text    = " ";
                    WFMessageBox.Show("Este usuário não possui certificado atribuído! ", MessageBoxButtons.OK, MessageBoxIcon.Error);


                    //deleta os itens na tabela de documento assinando
                    if (listaPesquisa != null)
                    {
                        ACSDataBase.deleteBloqueiaDocumentosLote((int)ACSGlobal.UsuarioLogado.USR_IDUSUARIO, listaPesquisa);
                    }
                }
                else
                {
                    bool fCheck = false;
                    List <GEDDocumentosNivel2> listaPesquisaNovaAssinar = new List <GEDDocumentosNivel2>();;
                    foreach (DataGridViewRow r in dtgv_DocsN2.SelectedRows)
                    {
                        fCheck = true;
                        //Pegas as linhas selecionadas

                        var idDocument = (decimal)r.Cells["DOC_IDDOCUMENTO"].Value;
                        listaPesquisaNovaAssinar.Add(listaPesquisaNova.Find(c => c.DOC_IDDOCUMENTO == (int)idDocument));
                    }

                    if (fCheck)
                    {
                        WFLoading.ShowLoad(true, "CoAssinatura", "Assinando documentos...");

                        //var NewName = OutputIni + "\\" +
                        //            ACSGlobal.LoteSelecionado.PAS_REGISTRO + "\\" +
                        //            ACSGlobal.LoteSelecionado.PAS_REGISTRO + Doc.BarCodes[0].DIV_CODIGOREDUZIDO + "\\" +
                        //            ACSGlobal.LoteSelecionado.PAS_CODIGOPASSAGEM;


                        int i = 0;

                        foreach (var item in listaPesquisaNovaAssinar)
                        {
                            var nivelAssinaCondifg = ACSConfig.GetApp().NIVELASSINA;

                            if (nivelAssinaCondifg.ToUpper() == "ALL")
                            {
                                //WFTranparentLoading.Messege("Verificando " + Doc.Text + "...");
                                lblInformativo.Text = "Assinando documento " + (++i) + "... (restam " + (listaPesquisaNovaAssinar.Count() - i) + ")";
                                if (ACSGlobal.UsuarioLogado.USR_NIVELASSINA == 2)
                                {
                                    CoAssinarN2(item);
                                }

                                if (ACSGlobal.UsuarioLogado.USR_NIVELASSINA == 3)
                                {
                                    CoAssinarN3(item);
                                }
                            }
                            else
                            {
                                lblInformativo.Text = "Assinando documento " + (++i) + "... (restam " + (listaPesquisaNovaAssinar.Count() - i) + ")";

                                // CoAssinarN3(item);
                                if (ACSGlobal.UsuarioLogado.USR_NIVELASSINA == 3)
                                {
                                    AssinaN3First(item);
                                }
                                //else
                                //{
                                //    AssinaN3_2First(item);
                                //}
                            }
                        }
                        WFLoading.CloseLoad();

                        WFMessageBox.Show("Documentos Co-Assinados com Sucesso!", MessageBoxButtons.OK, MessageBoxIcon.Information);

                        lblInformativo.Text       = "Requisição Finalizada";
                        dtgv_DocsN2.DataSource    = null;
                        txtDataAtendimento.Text   = string.Empty;
                        txtNumeroAtendimento.Text = string.Empty;
                        btnCoAssinador.Visible    = false;

                        pnAllInfo.Visible                    = false;
                        pnBtnAll.Visible                     = false;
                        btnSelecionarTodos.Visible           = false;
                        lblNumeroDocumentos.Text             = "0";
                        lblNumeroDocumentosSelecionados.Text = "0";



                        //deleta os itens na tabela de documento assinando
                        if (listaPesquisa != null)
                        {
                            ACSDataBase.deleteBloqueiaDocumentosLote((int)ACSGlobal.UsuarioLogado.USR_IDUSUARIO, listaPesquisa);
                        }
                    }
                    else
                    {
                        WFMessageBox.Show("Selecione ao menos um documento a ser assinado! ", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        lblInformativo.Text    = " ";
                        btnCoAssinador.Enabled = true;
                    }
                }
            }
            catch (Exception ex)
            {
                ACSLog.InsertLog(MessageBoxIcon.Error, "Não foi possível assinar o documento. Motivo: " + ex.InnerException);
                throw new ExceptionCustom("Não foi possível assinar o documento. Motivo: " + ex.InnerException);
            }
        }
        private void fnBtnLogin()
        {
            try
            {
                btnOk.Enabled = false;
                WFLoading.ShowLoad(true, "Login", "Autenticando usuário Tasy");

                ACSGlobal.UsuarioLogado = null;
                //validar no tasy

                UsuarioTasy tasy           = new UsuarioTasy();
                string      retornoUsuario = tasy.Execute(tbLogin.Text, tbPass.Text);


                //string retornoUsuario = "null";
                bool fUsuarioTasy = false;

                if (retornoUsuario == "null")
                {
                    fUsuarioTasy = false;
                }
                else
                if (retornoUsuario == "")
                {
                    fUsuarioTasy = true;
                }
                else
                if (retornoUsuario.Contains("Error") || retornoUsuario.Contains("Erro"))
                {
                    fUsuarioTasy = false;
                }

                //consulta usuario na base orion.
                //se o usuario nao tiver no tasy mas o grupo for 0 (orion consultoria) deixa logar
                //se nao for tasy e nem grupo 0 . usuario sem acesso.

                if (fUsuarioTasy)
                {
                    ACSGlobal.UsuarioLogado = ACSDataBase.GetGEDUsuarioOracleTasy(tbLogin.Text);
                    ACSGlobal.PassLogin     = tbPass.Text.Trim();
                    ACSGlobal.ListaAreas    = ACSDataBase.GetAreasUsuario((int)ACSGlobal.UsuarioLogado.USR_IDUSUARIO);
                    ACSGlobal.Duplex        = true;

                    if (ACSGlobal.UsuarioLogado != null && ACSGlobal.UsuarioLogado.USR_IDUSUARIO > 0)
                    {
                        if (ACSGlobal.SetoresUsuario == null)
                        {
                            WFLoading.CloseLoad();
                            WFMessageBox.Show("Acesso Negado! Usuário não pertence a nenhum Grupo de Usuário e/ou Setor", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                            btnOk.Enabled = true;
                        }
                        else
                        {
                            ACSGlobal.isTasy = true;
                            // WFMessageBox.Show("Usuário Tasy!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            WFLoading.CloseLoad();
                            this.Close();
                        }

                        //verifica se o usuario tem a chave de assinatura
                        //bool fPin = VerificaCertificaXusuairo(ACSGlobal.UsuarioLogado.USR_SERIALNUMBERCERT);
                        //if (fPin == false)
                        //{
                        //    DialogResult resultPin = WFMessageBox.Show("Você não possui chave de assinatura e/ou não consta na máquina!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                        //    if (resultPin == System.Windows.Forms.DialogResult.OK)
                        //    {

                        //        Application.Exit();
                        //    }
                        //    else
                        //    {
                        //        Application.Exit();
                        //    }
                        //}
                        //else
                        //{

                        //    ACSGlobal.isTasy = true;
                        //    // WFMessageBox.Show("Usuário Tasy!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        //    thCloseis.();


                        //}
                    }
                    else
                    {
                        WFLoading.CloseLoad();
                        WFMessageBox.Show("Acesso Negado!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                        btnOk.Enabled = true;
                    }
                }
                else
                {
                    ACSGlobal.UsuarioLogado = ACSDataBase.GetGEDUsuarioOracle(tbLogin.Text, tbPass.Text);
                    ACSGlobal.PassLogin     = tbPass.Text.Trim();
                    ACSGlobal.ListaAreas    = ACSDataBase.GetAreasUsuario((int)ACSGlobal.UsuarioLogado.USR_IDUSUARIO);
                    ACSGlobal.Duplex        = true;

                    if (ACSGlobal.UsuarioLogado != null && ACSGlobal.UsuarioLogado.USR_IDUSUARIO > 0)
                    {
                        if (ACSGlobal.UsuarioLogado.USR_IDGRUPOUSUARIO >= 0)
                        {
                            ACSGlobal.isTasy = false;
                            //WFMessageBox.Show("Usuário Orion!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            WFLoading.CloseLoad();
                            this.Close();
                        }
                        else
                        {
                            if (ACSGlobal.SetoresUsuario == null)
                            {
                                WFLoading.CloseLoad();
                                WFMessageBox.Show("Acesso Negado! Usuário não pertence a nenhum Grupo de Usuário e/ou Setor", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                btnOk.Enabled = true;
                            }
                            else
                            {
                                WFLoading.CloseLoad();
                                WFMessageBox.Show("Acesso Negado!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                btnOk.Enabled = true;
                            }
                        }
                    }
                    else
                    {
                        WFLoading.CloseLoad();
                        WFMessageBox.Show("Acesso Negado!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                        btnOk.Enabled = true;
                    }
                }
            }
            catch (Exception ex)
            {
                WFLoading.CloseLoad();
                ACSLog.InsertLog(MessageBoxIcon.Error, ex.Message);
                WFMessageBox.Show(ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
                btnOk.Enabled = true;
            }
        }