Beispiel #1
0
        private void dtgv_DocsN2_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            var senderGrid = (DataGridView)sender;

            if (ACSConfig.GetNetworkAccesser().Valid)
            {
                try
                {
                    using (var nsa = NetworkShareAccesser.Access(ACSConfig.GetStorage().Output,
                                                                 ACSConfig.GetNetworkAccesser().Domain,
                                                                 ACSConfig.GetNetworkAccesser().User,
                                                                 ACSConfig.GetNetworkAccesser().Password))
                    {
                        getPictureInGrid(e, senderGrid);
                    }
                }
                catch (Exception g)
                {
                    ACSLog.InsertLog(MessageBoxIcon.Error, g);
                    WFMessageBox.Show(g.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                getPictureInGrid(e, senderGrid);
            }
        }
Beispiel #2
0
 private void fnBtnAssinar()
 {
     btnCoAssinador.Enabled = false;
     lblInformativo.Text    = "Trabalhando em sua requisição...";
     if (ACSConfig.GetNetworkAccesser().Valid)
     {
         try
         {
             using (var nsa = NetworkShareAccesser.Access(ACSConfig.GetStorage().Output,
                                                          ACSConfig.GetNetworkAccesser().Domain,
                                                          ACSConfig.GetNetworkAccesser().User,
                                                          ACSConfig.GetNetworkAccesser().Password))
             {
                 fnCoassinar();
             }
         }
         catch (Exception g)
         {
             ACSLog.InsertLog(MessageBoxIcon.Error, g);
             WFMessageBox.Show(g.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
             btnCoAssinador.Enabled = true;
         }
     }
     else
     {
         fnCoassinar();
     }
 }
Beispiel #3
0
        private void getPictureInGrid(DataGridViewCellEventArgs e, DataGridView senderGrid)
        {
            if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
                e.RowIndex >= 0)
            {
                var d = dtgv_DocsN2.CurrentRow;

                if (d == null)
                {
                    throw new Exception("Selecione um registro!");
                }

                string PAS_REGISTRO            = (string)d.Cells["PAS_REGISTRO"].Value;
                string DOC_DIVISAO             = (string)d.Cells["DOC_DIVISAO"].Value;
                string PAS_CODIGOPASSAGEM      = (string)d.Cells["PAS_CODIGOPASSAGEM"].Value;
                string DOC_NOMEARQUIVO         = (string)d.Cells["DOC_NOMEARQUIVO"].Value;
                string DOC_EXTENSAONOMEARQUIVO = (string)d.Cells["DOC_EXTENSAONOMEARQUIVO"].Value;

                if (PAS_REGISTRO != null)
                {
                    if (DOC_EXTENSAONOMEARQUIVO.Contains("_"))
                    {
                        DOC_EXTENSAONOMEARQUIVO = ".Jpeg";
                    }

                    GEDDocumentosNivel2 obj;
                    var OutputIni = ACSConfig.GetStorage().Output;
                    var NewName   = OutputIni + "\\" +
                                    PAS_REGISTRO + "\\" +
                                    PAS_REGISTRO + DOC_DIVISAO + "\\" +
                                    PAS_CODIGOPASSAGEM + "\\" + DOC_NOMEARQUIVO + DOC_EXTENSAONOMEARQUIVO;

                    sCaminhoIMGZoom = NewName;

                    if (!System.IO.File.Exists(NewName))
                    {
                        WFMessageBox.Show("Arquivo Inexistente", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        pctSelected.Image = Resources.documentNull;
                        // pctSelected.SizeMode = PictureBoxSizeMode.Zoom;
                    }
                    else
                    {
                        ImagePanel panelImage = new ImagePanel();
                        panelImage.displayScrollbar();
                        panelImage.setScrollbarValues();
                        Bitmap a = new Bitmap(System.Drawing.Image.FromFile(NewName));
                        pctSelected.Image                 = a;
                        pctSelected.AutoSizeMode          = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
                        tableLayoutPanel1.ColumnStyles[0] = new ColumnStyle(SizeType.Percent, 0);
                        tableLayoutPanel1.ColumnStyles[1] = new ColumnStyle(SizeType.Percent, 100);
                        btnVoltar.Visible                 = true;
                        // pctSelected.SizeMode = PictureBoxSizeMode.StretchImage;
                    }
                }
            }
            else
            {
                //criar lista
            }
        }
Beispiel #4
0
        private void getPictureDoubleClick()
        {
            var d = dtgv_DocsN2.CurrentRow;

            if (d == null)
            {
                throw new Exception("Selecione um registro!");
            }

            string PAS_REGISTRO            = (string)d.Cells["PAS_REGISTRO"].Value;
            string DOC_DIVISAO             = (string)d.Cells["DOC_DIVISAO"].Value;
            string PAS_CODIGOPASSAGEM      = (string)d.Cells["PAS_CODIGOPASSAGEM"].Value;
            string DOC_NOMEARQUIVO         = (string)d.Cells["DOC_NOMEARQUIVO"].Value;
            string DOC_EXTENSAONOMEARQUIVO = (string)d.Cells["DOC_EXTENSAONOMEARQUIVO"].Value;

            if (PAS_REGISTRO != null)
            {
                if (DOC_EXTENSAONOMEARQUIVO.Contains("_"))
                {
                    DOC_EXTENSAONOMEARQUIVO = ".Jpeg";
                }

                GEDDocumentosNivel2 obj;
                var OutputIni = ACSConfig.GetStorage().Output;
                var NewName   = OutputIni + "\\" +
                                PAS_REGISTRO + "\\" +
                                PAS_REGISTRO + DOC_DIVISAO + "\\" +
                                PAS_CODIGOPASSAGEM + "\\" + DOC_NOMEARQUIVO + DOC_EXTENSAONOMEARQUIVO;
                if (!System.IO.File.Exists(NewName))
                {
                    WFMessageBox.Show("Arquivo Inexistente", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    pctSelected.Image = Resources.documentNull;
                    // pctSelected.SizeMode = PictureBoxSizeMode.Zoom;
                }
                else
                {
                    Bitmap a = new Bitmap(System.Drawing.Image.FromFile(NewName));
                    pctSelected.Image        = a;
                    pctSelected.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowOnly;
                    sCaminhoIMGZoom          = NewName;
                }
            }
        }
Beispiel #5
0
 string GetPathOutput()
 {
     return(ACSConfig.GetStorage().Output);
 }
        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();
        }
        private bool SaveSettings()
        {
            List <string> UsuariosInvalidos = new List <string>();


            ///GRID ASSINATURAS
            if (dataGridView1.Rows.Count > 0)
            {
                foreach (DataGridViewRow row in dataGridView1.Rows)
                {
                    bool fInsert = true;
                    DataGridViewTextBoxCell  txtNome = (DataGridViewTextBoxCell)(row.Cells[0]);
                    DataGridViewComboBoxCell combo   = (DataGridViewComboBoxCell)(row.Cells[1]);

                    if (txtNome.Tag != null)
                    {
                        var    id       = ((GEDPESSOAS)txtNome.Tag).PES_IDPESSOA;
                        int    idPessoa = (int)id;
                        var    sNome    = txtNome.Value;
                        string chave    = (combo.Value == null) ? "" : combo.Value.ToString();

                        if (chave != "")
                        {
                            string sCpfCertificado = Assinador.BuscaCPFCertificadosValidos(chave);
                            string sVefica         = ACSConfig.GetApp().CPFValidateCertificado;

                            if (sVefica == "YES")
                            {
                                if (sCpfCertificado != "" && ((GEDPESSOAS)txtNome.Tag).PES_CPF != sCpfCertificado)
                                {
                                    fInsert = false;
                                    UsuariosInvalidos.Add("Usuário " + sNome + ", possui um CPF diferente ao do Certificado. Impossível fazer a vinculação do Certificado");
                                }
                            }
                        }

                        if (fInsert)
                        {
                            var fVerifica = DataBase.ACSDataBase.UpdateCertificadoUsuario(idPessoa, chave);
                            if (idPessoa == ACSGlobal.UsuarioLogado.USR_IDPESSOA)
                            {
                                ACSGlobal.UsuarioLogado.USR_SERIALNUMBERCERT = chave;
                            }
                        }
                    }
                }
            }

            ////GRID ASSINATURAS



            ACSConfig.GetStorage().Input  = tbInput.Text;
            ACSConfig.GetStorage().Output = tbOutput.Text;


            if (rbJPG.Checked)
            {
                ACSConfig.GetImages().Format = ImageFormat.Jpeg;
            }
            if (rbPNG.Checked)
            {
                ACSConfig.GetImages().Format = ImageFormat.Png;
            }
            if (rbTIF.Checked)
            {
                ACSConfig.GetImages().Format = ImageFormat.Tiff;
            }

            ACSConfig.GetImages().Resolution = float.Parse(dudResolution.SelectedItem.ToString());

            ACSConfig.GetBarCodeSettings().MaxLength = int.Parse(tbMaxLength.Text);

            ACSConfig.GetScanner().Driver = cbDrivers.Text;

            if (cbDrivers.Text.Contains("Lexmark"))
            {
                ACSMinCapture.Controls.UCImagesManipulation ucImagem = new Controls.UCImagesManipulation(null);
                ucImagem.btnDuplex.Visible = true;
                ucImagem.btnDuplex.Refresh();
            }
            else
            {
                ACSMinCapture.Controls.UCImagesManipulation ucImagem = new Controls.UCImagesManipulation(null);
                ucImagem.btnDuplex.Visible = false;
                ucImagem.btnDuplex.Refresh();
            }

            if (rbPretoBranco.Checked)
            {
                ACSConfig.GetScanner().ScanAs = 0;
            }

            if (rbTonsCinza.Checked)
            {
                ACSConfig.GetScanner().ScanAs = 1;
            }

            if (rbColorido.Checked)
            {
                ACSConfig.GetScanner().ScanAs = 2;
            }


            ACSConfig.GetImages().Brightness       = (int)tbBrightness.Value;
            ACSConfig.GetImages().BrightnessReload = (int)tbBrightness.Value;
            ACSConfig.GetImages().Contrast         = (int)tbContrast.Value;

            ACSConfig.GetNetworkAccesser().Valid    = cbAutentica.Checked;
            ACSConfig.GetNetworkAccesser().Domain   = tbDominio.Text;
            ACSConfig.GetNetworkAccesser().User     = tbUsuario.Text;
            ACSConfig.GetNetworkAccesser().Password = tbSenha.Text;
            if (UsuariosInvalidos.Count > 0)
            {
                foreach (var item in UsuariosInvalidos)
                {
                    WFMessageBox.Show(item, MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                return(false);
            }
            return(true);
        }
        private void WFPreferencias_Load(object sender, EventArgs e)
        {
            tbInput.Text  = ACSConfig.GetStorage().Input;
            tbOutput.Text = ACSConfig.GetStorage().Output;

            rbJPG.Checked = ACSConfig.GetImages().Format == ImageFormat.Jpeg;
            rbPNG.Checked = ACSConfig.GetImages().Format == ImageFormat.Png;
            rbTIF.Checked = ACSConfig.GetImages().Format == ImageFormat.Tiff;

            dudResolution.SelectedIndex = dudResolution.Items.IndexOf(ACSConfig.GetImages().Resolution.ToString());

            tbMaxLength.Text = ACSConfig.GetBarCodeSettings().MaxLength.ToString();

            try
            {
                using (var tw = new Twain(this.Handle))
                {
                    this.cbDrivers.Items.Clear();

                    foreach (var device in tw.GetDevices())
                    {
                        this.cbDrivers.Items.Add(device.ProductName);
                    }

                    cbDrivers.Text = ACSConfig.GetScanner().Driver;
                }
            }
            catch (Exception)
            {
                WFMessageBox.Show("Reinicie a aplicação para realizar alguma alteração!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            switch (ACSConfig.GetScanner().ScanAs)
            {
            case 0:
            {
                rbPretoBranco.Checked = true;
                break;
            }

            case 1:
            {
                rbTonsCinza.Checked = true;
                break;
            }

            case 2:
            {
                rbColorido.Checked = true;
                break;
            }
            }

            nudBrightness.Maximum = tbBrightness.Maximum;
            nudBrightness.Minimum = tbBrightness.Minimum;

            nudBrightnessReload.Maximum = tbBrightnessReload.Maximum;
            nudBrightnessReload.Minimum = tbBrightnessReload.Minimum;

            nudContrast.Maximum = tbContrast.Maximum;
            nudContrast.Minimum = tbContrast.Minimum;

            tbBrightness.Value       = (int)ACSConfig.GetImages().Brightness;
            tbBrightnessReload.Value = (int)ACSConfig.GetImages().BrightnessReload;
            tbContrast.Value         = (int)ACSConfig.GetImages().Contrast;

            nudBrightness.Value       = tbBrightness.Value;
            nudBrightnessReload.Value = tbBrightnessReload.Value;
            nudContrast.Value         = tbContrast.Value;

            cbAutentica.Checked = ACSConfig.GetNetworkAccesser().Valid;
            tbDominio.Text      = ACSConfig.GetNetworkAccesser().Domain;
            tbUsuario.Text      = ACSConfig.GetNetworkAccesser().User;
            tbSenha.Text        = ACSConfig.GetNetworkAccesser().Password;

            this.imageBox1.GridDisplayMode = Cyotek.Windows.Forms.ImageBoxGridDisplayMode.Client;
            this.imageBox1.Invalidate();
        }