private void atualizaGrid([Optional] List <RegistroModel> listaAlterada, bool apenasReset)
        {
            if (listaAlterada != null && listaAlterada.Count > 0)
            {
                this.metroGridVisualizacaoRegistros.DataSource = listaAlterada;
            }
            else
            {
                if (!apenasReset)
                {
                    mostraMensagemEscondeGrid("Os filtros aplicados retornaram uma lista vazia. Filtros e tabela resetados.", "Erro ao iniciar tabela");
                }

                resetaFiltros();
                RegistroController registroController = new RegistroController();
                this.listaRegistros = registroController.getAllRegistros();
                if (this.listaRegistros != null)
                {
                    this.listaRegistrosOrdenada = listaRegistros.OrderByDescending(registro => registro.HorarioUltimaEdicao).ToList();
                    listaAtual = listaRegistrosOrdenada;
                    this.metroGridVisualizacaoRegistros.DataSource = listaRegistrosOrdenada;
                }
                else
                {
                    mostraMensagemEscondeGrid("Não existem registros para preencher a tabela", "Tabela vazia");
                    this.Close();
                }
            }
        }
        List <RegistroModel> listaAtual; // Lista que dinamicamente troca seus valores de acordo com filtros e ordenacoes

        public TelaVisualizarTodosRegistros(List <RegistroModel> lista)
        {
            RegistroController registroController = new RegistroController();

            this.listaRegistros = lista;

            if (listaRegistros != null && listaRegistros.Count > 0)
            {
                InitializeComponent();

                this.Icon        = Properties.Resources.Menutrinho_Icon;
                this.MaximizeBox = false;
                this.Resizable   = false;
                this.metroGridVisualizacaoRegistros.Visible = true;
                this.metroComboBoxOrdenar.SelectedIndex     = 0;

                ajustaHorariosDatetimes();

                this.listaRegistrosOrdenada = listaRegistros.OrderByDescending(registro => registro.HorarioUltimaEdicao).ToList();
                listaAtual = listaRegistrosOrdenada;
                this.metroGridVisualizacaoRegistros.DataSource = listaRegistrosOrdenada;

                controlaDisponibilidadeControles();
                ajustaDataGrid();
            }
        }
示例#3
0
        public void TestPasswordLengthF()
        {
            RegistroController controller = new RegistroController();
            bool result = controller.verificarPassword("usuaio1234");

            Assert.IsTrue(result);
        }
示例#4
0
        public void TestNumeroUsuarioF()
        {
            RegistroController con = new RegistroController();
            bool result            = con.validarNoUsuario(1243454534);

            Assert.IsTrue(result);
        }
示例#5
0
        public void TestCampos()
        {
            RegistroController controller = new RegistroController();
            bool test = controller.validarCAmpos("Rick", "Alvarez", 13344554, 34345665, "1234");

            Assert.IsTrue(test);
        }
示例#6
0
        public void TestUserLengthF()
        {
            RegistroController con = new RegistroController();
            bool result            = con.verificarUsuario(12345657);

            Assert.IsTrue(result);
        }
示例#7
0
        public void TestView()
        {
            RegistroController controlller = new RegistroController();
            ViewResult         result      = controlller.RegistroView() as ViewResult;

            Assert.IsNotNull(result);
        }
示例#8
0
        public async Task E_Possivel_Invocar_a_Controller_Create()
        {
            var serviceMock = new Mock <IRegistroService>();

            serviceMock.Setup(m => m.Post(It.IsAny <RegistroDtoCreate>())).ReturnsAsync(
                new RegistroDtoCreateResult
            {
                Id       = Guid.NewGuid(),
                Nome     = "São Paulo",
                CreateAt = DateTime.UtcNow
            }
                );

            _controller = new RegistroController(serviceMock.Object);
            _controller.ModelState.AddModelError("Nome", "É um Campo Obrigatório");

            Mock <IUrlHelper> url = new Mock <IUrlHelper>();

            url.Setup(x => x.Link(It.IsAny <string>(), It.IsAny <object>())).Returns("http://localhost:5000");
            _controller.Url = url.Object;

            var municipioDtoCreate = new RegistroDtoCreate
            {
                Nome    = "São Paulo",
                CodIBGE = 1
            };

            var result = await _controller.Post(municipioDtoCreate);

            Assert.True(result is BadRequestObjectResult);
        }
示例#9
0
 private void Principal_Load(object sender, System.EventArgs e)
 {
     registroController           = new RegistroController();
     registros                    = registroController.BuscarRegistros();
     dataGridRegistros.DataSource = registroController.BuscarRegistros();
     labelHoraInicial.Text        = "R$ " + registroController.Preco.HoraInicial;
     labelHoraAdicional.Text      = "R$ " + registroController.Preco.HoraAdicional;
 }
示例#10
0
        public async Task E_Possivel_Invocar_a_Controller_Get()
        {
            var serviceMock = new Mock <IRegistroService>();

            serviceMock.Setup(m => m.Get(It.IsAny <Guid>())).Returns(Task.FromResult((RegistroDto)null));

            _controller = new RegistroController(serviceMock.Object);
            var result = await _controller.Get(Guid.NewGuid());

            Assert.True(result is NotFoundResult);
        }
示例#11
0
        /// <summary>
        /// Botão que pode ser utilizado para fazer uma query sem a necessidade de um gerenciador.
        /// <para>Insere um Json que é o objeto deserializado no TextBox abaixo do botão.
        /// </para>
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSelectJsonObject_Click(object sender, EventArgs e)
        {
            RegistroController regControl = new RegistroController();

            try
            {
                txtJsonObjectResponse.Text = JsonConvert.SerializeObject(regControl.QueryAble(txtSelectOptional.Text));
            }
            catch (Exception ex)
            {
                txtJsonObjectResponse.Text = $"Exception: {ex.Message}";
            }
        }
        private void pictureBoxBuscarStringEmail_Click(object sender, EventArgs e)
        {
            RegistroController   registroController = new RegistroController();
            List <RegistroModel> listaRegistros     = registroController.getAllRegistros();

            if (listaRegistros != null && listaRegistros.Count > 0)
            {
                TelaObterEmailsRegistros telaObterEmailsRegistros = new TelaObterEmailsRegistros(listaRegistros);
                telaObterEmailsRegistros.Show();
            }
            else
            {
                MetroMessageBox.Show(this, "Não existem registros cadastrados, a funcionalidade não pôde ser aberta", "Não há registros", MessageBoxButtons.OK, MessageBoxIcon.Error, 243);
            }
        }
        private void metroButtonExcluirRegistro_Click(object sender, EventArgs e)
        {
            RegistroModel registroSelecionado = this.metroGridVisualizacaoRegistros.SelectedRows[0].DataBoundItem as RegistroModel;
            DialogResult  resultadoPergunta   = MessageBox.Show($"Você confirma que deseja excluir o registro de nome " +
                                                                $" {registroSelecionado.Nome}? Após a confirmação, a exclusão não poderá ser revertida.",
                                                                "Confirmação de exclusão de registro", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (resultadoPergunta == DialogResult.Yes)
            {
                RegistroController registroController = new RegistroController();
                registroController.deleteRegistro(registroSelecionado.Guid);
                atualizaGrid(null, true);
            }
            else
            {
                MessageBox.Show($"O registro de nome {registroSelecionado.Nome} foi excluído com sucesso",
                                "Exclusão de registro", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
示例#14
0
        public async Task E_Possivel_Invocar_a_Controller_GetAll()
        {
            var serviceMock = new Mock <IRegistroService>();

            serviceMock.Setup(m => m.GetAll()).ReturnsAsync(
                new List <RegistroDto>
            {
                new RegistroDto
                {
                    Id = Guid.NewGuid()
                },
                new RegistroDto
                {
                    Id = Guid.NewGuid()
                }
            }
                );

            _controller = new RegistroController(serviceMock.Object);
            var result = await _controller.GetAll();

            Assert.True(result is OkObjectResult);
        }
示例#15
0
        }                                                       // Controlador del Registro

        // Constructor
        public Registro()
        {
            registroController = new RegistroController();
            InitializeComponent();
        }
示例#16
0
        private void btnAtualizaRegistro_Click(object sender, EventArgs e)
        {
            BloqueiaCampos();

            string inconsistenciaCampo = null;

            if (!ConsisteCampos(ref inconsistenciaCampo))
            {
                MessageBox.Show(inconsistenciaCampo, "Inconsistência", MessageBoxButtons.OK, MessageBoxIcon.Error);
                DesbloqueiaCampos();
                HabilitaAtualizacao();
                return;
            }

            RegistroController regControl  = new RegistroController();
            ConvenioController convControl = new ConvenioController();

            long?  celularNumeroValidado = null;
            long?  cpfSemMascara         = null;
            long   prontuarioValidado    = 0;
            long?  telefoneFixoValidado  = null;
            string mesVencimentoValidado = null;
            string anoVencimentoValidado = null;

            celularNumeroValidado = string.IsNullOrEmpty(txtNumeroCelular.Text) ? null : regexNumberNullable(txtNumeroCelular.Text);
            cpfSemMascara         = string.IsNullOrEmpty(txtCpf.Text) ? null : regexNumberNullable(txtCpf.Text);
            prontuarioValidado    = regexNumber(txtProntuario.Text);
            telefoneFixoValidado  = string.IsNullOrEmpty(txtNumeroFixo.Text) ? null : regexNumberNullable(txtNumeroFixo.Text);
            mesVencimentoValidado = regexStringNumber(txtMesValidade.Text);
            anoVencimentoValidado = regexStringNumber(txtAnoValidade.Text);

            try
            {
                //register.CONVENIO.CARTEIRACONVENIO = txtCarteiraConvenio.Text;
                registro.CELULARNUMERO = celularNumeroValidado;
                //register.CONVENIO = txtConvenio.Text;
                registro.CPF                = cpfSemMascara;
                registro.DATANASCIMENTO     = dtpDataNascimento.Value;
                registro.EMAIL              = txtEmail.Text;
                registro.GENERO             = (TipoGenero)cbxGenero.SelectedValue;
                registro.NOME               = txtNome.Text;
                registro.PRONTUARIO         = prontuarioValidado;
                registro.RG                 = txtRg.Text;
                registro.TELEFONEFIXONUMERO = telefoneFixoValidado;
                registro.UFEXPEDICAORG      = (UfExpedicao)cbxUfExpedicaoRg.SelectedValue;
                //register.VALIDADEMESANO = $"{mesVencimentoValidado}/{anoVencimentoValidado}";
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro na conversão dos campos! {ex.Message}", ex.GetType().ToString(), MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                throw ex;
            }

            try
            {
                regControl.AtualizaRegistroPaciente(registro);

                convenio.CARTEIRACONVENIO = txtCarteiraConvenio.Text;
                convenio.CONVENIO         = txtConvenio.Text;
                convenio.VALIDADEMESANO   = $"{mesVencimentoValidado}/{anoVencimentoValidado}";

                convControl.AtualizaConvenio(convenio);

                MessageBox.Show($"Dados atualizados!", "Sucesso", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro na atualização do paciente! {ex.Message}", ex.GetType().ToString(), MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
                throw ex;
            }

            DesbloqueiaCampos();
            HabilitaAtualizacao();
        }
示例#17
0
        private void metroButtonEditarRegistro_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(this.metroTextBoxTelefone.Text) ||
                (UtilityClass.RemoveDiacritics(UtilityClass.retornaApenasNumeros(this.metroTextBoxTelefone.Text), true)).Length < 8)
            {
                MessageBox.Show("O telefone é um campo obrigatório, por favor preencha-o corretamente.", "Alteração não realizada", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            DialogResult resultadoPergunta = MessageBox.Show("Você confirma a alteração do registro?", "Confirmação de edição de registro", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (resultadoPergunta != DialogResult.Yes)
            {
                MessageBox.Show("A confirmação foi recusada e o registro não foi alterado", "Alteração não realizada", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            if (metroRadioButtonFuncionario.Checked)
            {
                this.metroTextBoxCNPJ.Text        = "vazio";
                this.metroTextBoxRazaoSocial.Text = "vazio";
            }
            else
            {
                this.metroTextBoxCargoDiretoria.Text = "vazio";
            }

            TipoRegistro tipoRegistroSelecionado;

            if (this.metroRadioButtonCliente.Checked)
            {
                tipoRegistroSelecionado = TipoRegistro.Cliente;
            }
            else if (this.metroRadioButtonPotencialCliente.Checked)
            {
                tipoRegistroSelecionado = TipoRegistro.Potencial_cliente;
            }
            else
            {
                tipoRegistroSelecionado = TipoRegistro.Funcionario;
            }

            RegistroModel registroAtualizado = new RegistroModel()
            {
                Guid                = guidRegistroSendoAlterado,
                TipoRegistro        = tipoRegistroSelecionado,
                RazaoSocial         = !string.IsNullOrWhiteSpace(this.metroTextBoxRazaoSocial.Text) ? this.metroTextBoxRazaoSocial.Text : "vazio",
                Nome                = !string.IsNullOrWhiteSpace(this.metroTextBoxNome.Text) ? this.metroTextBoxNome.Text : "vazio",
                Sobrenome           = !string.IsNullOrWhiteSpace(this.metroTextBoxSobrenome.Text) ? this.metroTextBoxSobrenome.Text : "vazio",
                CargoDiretoria      = !string.IsNullOrWhiteSpace(this.metroTextBoxCargoDiretoria.Text) ? this.metroTextBoxCargoDiretoria.Text : "vazio",
                CPF                 = !string.IsNullOrWhiteSpace(this.metroTextBoxCPF.Text) ? UtilityClass.RemoveDiacritics(UtilityClass.retornaApenasNumeros(this.metroTextBoxCPF.Text), true) : "vazio",
                RG                  = !string.IsNullOrWhiteSpace(this.metroTextBoxRG.Text) ? UtilityClass.RemoveDiacritics(this.metroTextBoxRG.Text, true) : "vazio",
                Telefone            = !string.IsNullOrWhiteSpace(this.metroTextBoxTelefone.Text) ? UtilityClass.RemoveDiacritics(UtilityClass.retornaApenasNumeros(this.metroTextBoxTelefone.Text), true) : "vazio",
                Instagram           = !string.IsNullOrWhiteSpace(this.metroTextBoxInstagram.Text) ? this.metroTextBoxInstagram.Text : "vazio",
                Whatsapp            = !string.IsNullOrWhiteSpace(this.metroTextBoxWhatsapp.Text) ? UtilityClass.RemoveDiacritics(UtilityClass.retornaApenasNumeros(this.metroTextBoxWhatsapp.Text), true) : "vazio",
                Email               = !string.IsNullOrWhiteSpace(this.metroTextBoxEmail.Text) ? this.metroTextBoxEmail.Text : "vazio",
                CNPJ                = !string.IsNullOrWhiteSpace(this.metroTextBoxCNPJ.Text) ? UtilityClass.RemoveDiacritics(UtilityClass.retornaApenasNumeros(this.metroTextBoxCNPJ.Text), true) : "vazio",
                CEP                 = !string.IsNullOrWhiteSpace(this.metroTextBoxCEP.Text) ? UtilityClass.RemoveDiacritics(UtilityClass.retornaApenasNumeros(this.metroTextBoxCEP.Text), true) : "vazio",
                Estado              = !string.IsNullOrWhiteSpace(this.metroComboBoxEstados.Text) ? this.metroComboBoxEstados.Text : "vazio",
                Cidade              = !string.IsNullOrWhiteSpace(this.metroTextBoxCidade.Text) ? this.metroTextBoxCidade.Text : "vazio",
                Rua                 = !string.IsNullOrWhiteSpace(this.metroTextBoxRua.Text) ? this.metroTextBoxRua.Text : "vazio",
                Numero              = !string.IsNullOrWhiteSpace(this.metroTextBoxNumero.Text) ? this.metroTextBoxNumero.Text : "vazio",
                Bairro              = !string.IsNullOrWhiteSpace(this.metroTextBoxBairro.Text) ? this.metroTextBoxBairro.Text : "vazio",
                Complemento         = !string.IsNullOrWhiteSpace(this.metroTextBoxComplemento.Text) ? this.metroTextBoxComplemento.Text : "vazio",
                Outros              = !string.IsNullOrWhiteSpace(this.metroTextBoxOutros.Text) ? this.metroTextBoxOutros.Text : "vazio",
                HorarioUltimaEdicao = DateTime.Now
            };

            RegistroController registroController = new RegistroController();

            limparTextboxes();
            registroController.updateRegistro(registroAtualizado);
            this.Close();
        }
示例#18
0
        private void BuscaRegistro()
        {
            BloqueiaCampos();

            RegistroController regControl  = new RegistroController();
            ConvenioController convControl = new ConvenioController();
            string             whereParam  = null;

            try
            {
                if (!string.IsNullOrEmpty(txtCpf.Text))
                {
                    whereParam += $" where cpf={regexNumber(txtCpf.Text)} ";
                }
                else
                {
                    MessageBox.Show($"Digite um número de CPF válido para consultar.", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    DesbloqueiaCampos();
                    HabilitaInsercao();
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Uma tentativa de conversão inválida foi acionada.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                DesbloqueiaCampos();
                HabilitaInsercao();
                return;
            }

            try
            {
                registro = regControl.BuscaRegistroPaciente(whereParam, "*");
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro na conexão com o banco de dados.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                DesbloqueiaCampos();
                HabilitaInsercao();
                return;
            }

            if (registro.ID > 0)
            {
                try
                {
                    txtNumeroCelular.Text   = registro.CELULARNUMERO.HasValue ? string.Format(@"{0:\(##\) #####-####}", Convert.ToInt64(regexStringNumber(registro.CELULARNUMERO.ToString()))) : string.Empty;
                    txtCpf.Text             = registro.CPF.ToString();
                    dtpDataNascimento.Value = registro.DATANASCIMENTO;
                    txtEmail.Text           = registro.EMAIL;
                    txtNome.Text            = registro.NOME;
                    txtProntuario.Text      = registro.PRONTUARIO.ToString();
                    txtRg.Text                    = registro.RG;
                    txtNumeroFixo.Text            = registro.TELEFONEFIXONUMERO.HasValue ? string.Format(@"{0:\(##\) #####-####}", Convert.ToInt64(regexStringNumber(registro.TELEFONEFIXONUMERO.ToString()))) : string.Empty;
                    cbxGenero.SelectedItem        = registro.GENERO;
                    cbxUfExpedicaoRg.SelectedItem = registro.UFEXPEDICAORG;
                }
                catch (Exception ex)
                {
                    MessageBox.Show($"Uma tentativa de conversão inválida foi acionada.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    DesbloqueiaCampos();
                    HabilitaInsercao();
                    return;
                }

                try
                {
                    whereParam = $" where pacienteid={registro.ID} ";
                    convenio   = convControl.BuscaConvenio(whereParam, "*");
                }
                catch (Exception ex)
                {
                    MessageBox.Show($"Erro na conexão com o banco de dados.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    DesbloqueiaCampos();
                    HabilitaInsercao();
                    return;
                }

                if (convenio.ID > 0)
                {
                    try
                    {
                        txtMesValidade.Text      = convenio.VALIDADEMESANO.Split('/').FirstOrDefault();
                        txtAnoValidade.Text      = convenio.VALIDADEMESANO.Split('/').LastOrDefault();
                        txtConvenio.Text         = convenio.CONVENIO;
                        txtCarteiraConvenio.Text = convenio.CARTEIRACONVENIO;
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show($"Uma tentativa de conversão inválida foi acionada.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        DesbloqueiaCampos();
                        HabilitaInsercao();
                        return;
                    }
                }
            }
            else
            {
                DesbloqueiaCampos();
                HabilitaInsercao();
                return;
            }

            DesbloqueiaCampos();
            HabilitaAtualizacao();
        }
示例#19
0
        private void btnInsereRegistro_Click(object sender, EventArgs e)
        {
            BloqueiaCampos();

            string inconsistenciaCampo = null;

            if (!ConsisteCampos(ref inconsistenciaCampo))
            {
                MessageBox.Show(inconsistenciaCampo, "Inconsistência", MessageBoxButtons.OK, MessageBoxIcon.Error);
                DesbloqueiaCampos();
                HabilitaInsercao();
                return;
            }

            try
            {
                RegistroController regControl  = new RegistroController();
                ConvenioController convControl = new ConvenioController();
                long?  celularNumeroValidado   = null;
                long?  cpfSemMascara           = null;
                long   prontuarioValidado      = 0;
                long?  telefoneFixoValidado    = null;
                string mesVencimentoValidado   = null;
                string anoVencimentoValidado   = null;

                celularNumeroValidado = string.IsNullOrEmpty(txtNumeroCelular.Text) ? null : regexNumberNullable(txtNumeroCelular.Text);
                cpfSemMascara         = string.IsNullOrEmpty(txtCpf.Text) ? null : regexNumberNullable(txtCpf.Text);
                prontuarioValidado    = regexNumber(txtProntuario.Text);
                telefoneFixoValidado  = string.IsNullOrEmpty(txtNumeroFixo.Text) ? null : regexNumberNullable(txtNumeroFixo.Text);
                mesVencimentoValidado = regexStringNumber(txtMesValidade.Text);
                anoVencimentoValidado = regexStringNumber(txtAnoValidade.Text);

                if (cpfSemMascara.HasValue)
                {
                    string countConvert             = JsonConvert.SerializeObject(regControl.QueryAble($@"select * from registro_paciente where cpf={cpfSemMascara}"));
                    List <REGISTROPACIENTE> consist = JsonConvert.DeserializeObject <List <REGISTROPACIENTE> >(countConvert);

                    if (consist.Count > 0)
                    {
                        MessageBox.Show($"Registro já localizado, impossível inserir novamente.", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        DesbloqueiaCampos();
                        HabilitaInsercao();
                        return;
                    }
                }

                registro = new REGISTROPACIENTE()
                {
                    CELULARNUMERO      = celularNumeroValidado,
                    CPF                = cpfSemMascara,
                    DATANASCIMENTO     = dtpDataNascimento.Value,
                    EMAIL              = txtEmail.Text,
                    GENERO             = (TipoGenero)cbxGenero.SelectedValue,
                    NOME               = txtNome.Text,
                    PRONTUARIO         = prontuarioValidado,
                    RG                 = txtRg.Text,
                    TELEFONEFIXONUMERO = telefoneFixoValidado,
                    UFEXPEDICAORG      = (UfExpedicao)cbxUfExpedicaoRg.SelectedValue
                };

                registro = regControl.GravaRegistroPacienteSincronizando(registro);

                if (registro.ID > 0)
                {
                    convenio.PACIENTEID       = registro.ID;
                    convenio.CARTEIRACONVENIO = txtCarteiraConvenio.Text;
                    convenio.CONVENIO         = txtConvenio.Text;
                    convenio.VALIDADEMESANO   = $"{txtMesValidade.Text}/{txtAnoValidade.Text}";
                    convControl.InsereConvenio(convenio);
                }

                MessageBox.Show($"Dados inseridos!", "Sucesso", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

                HabilitaAtualizacao();
            }
            catch (FormatException ex)
            {
                MessageBox.Show($"Argumentos inválidos na tentativa de conversão.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                HabilitaInsercao();
            }
            catch (ArgumentNullException ex)
            {
                MessageBox.Show($"Argumentos nulos na tentativa de conversão.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                HabilitaInsercao();
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show($"Argumentos inválidos na tentativa de conversão.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                HabilitaInsercao();
            }
            catch (RegexMatchTimeoutException ex)
            {
                MessageBox.Show($"Tempo de conversão excedido em função Regex.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                HabilitaInsercao();
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Uma excessão não tratada foi acionada.\r\n{ex.Message}", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                HabilitaInsercao();
            }
            finally
            {
                DesbloqueiaCampos();
            }
        }