Beispiel #1
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}";
            }
        }
Beispiel #2
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();
            }
        }