/// <summary> /// Altera um paciente. /// </summary> /// <param name="pacienteRow">Um DataSet tipado contendo os dados do paciente.</param> /// <returns>O código do paciente criado.</returns> public void AlterarPaciente(PacienteDs.PacienteRow pacienteRow) { // componente de acesso a dados PacienteDalc pacienteDalc = new PacienteDalc(); // altera o paciente pacienteDalc.AlterarPaciente(pacienteRow); }
/// <summary> /// Cria um paciente. /// </summary> /// <param name="pacienteRow">Um DataSet tipado contendo os dados do paciente.</param> /// <returns>O código do paciente criado.</returns> /// <remarks>O código do paciente no DataSet não será utilizado, este será atualizado /// após a criação do paciente.</remarks> public int CriarPaciente(PacienteDs.PacienteRow pacienteRow) { // componente de acesso a dados PacienteDalc pacienteDalc = new PacienteDalc(); // cria o paciente return(pacienteDalc.CriarPaciente(pacienteRow)); }
/// <summary> /// Busca pelo paciente. /// </summary> private void btnBuscarPaciente_Click(object sender, EventArgs e) { // desabilita botão this.btnProximo.Enabled = false; // escolha do paciente FrmBuscarPaciente frmBuscarPaciente = new FrmBuscarPaciente(); if (frmBuscarPaciente.ShowDialog(this) == DialogResult.Cancel) { frmBuscarPaciente.Dispose(); return; } // modifica cursor Cursor.Current = Cursors.WaitCursor; try { // componente de negócio PacienteBc pacienteBc = new PacienteBc(); // busca pelo paciente this.pacienteRow = pacienteBc.BuscarPaciente(frmBuscarPaciente.CodigoPaciente); // nome do paciente this.txtPaciente.Text = this.pacienteRow.Nome; // habilita botão this.btnProximo.Enabled = true; } catch (Exception ex) { string strMessage = this.resourceMgr.GetString(ex.Message); if (strMessage == null) { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = ex.Message; frmErro.ShowDialog(this); frmErro.Dispose(); } else { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = strMessage; frmErro.ShowDialog(this); frmErro.Dispose(); } } finally { frmBuscarPaciente.Dispose(); Cursor.Current = Cursors.Default; } }
/// <summary> /// Cria um paciente. /// </summary> /// <param name="pacienteRow">Um DataSet tipado contendo os dados do paciente.</param> /// <returns>O código do paciente criado.</returns> /// <remarks>O código do paciente no DataSet não será utilizado, este será atualizado /// após a criação do paciente.</remarks> public int CriarPaciente(PacienteDs.PacienteRow pacienteRow) { SqlConnection conn = new SqlConnection(this.connectionStr); SqlCommand cmd = new SqlCommand("CriarPaciente", conn); cmd.CommandType = CommandType.StoredProcedure; int codigoPaciente = 0; // parâmetros cmd.Parameters.Add("@Nome", SqlDbType.NVarChar, 200).Value = pacienteRow.Nome; cmd.Parameters.Add("@CPF", SqlDbType.NChar, 11).Value = pacienteRow.CPF; cmd.Parameters.Add("@DataNascimento", SqlDbType.DateTime).Value = pacienteRow.DataNascimento; cmd.Parameters.Add("@Endereco", SqlDbType.NVarChar, 200).Value = pacienteRow.Endereco; cmd.Parameters.Add("@Complemento", SqlDbType.NVarChar, 40).Value = pacienteRow.Complemento; cmd.Parameters.Add("@Bairro", SqlDbType.NVarChar, 100).Value = pacienteRow.Bairro; cmd.Parameters.Add("@CEP", SqlDbType.NChar, 8).Value = pacienteRow.CEP; cmd.Parameters.Add("@Cidade", SqlDbType.NVarChar, 100).Value = pacienteRow.Cidade; cmd.Parameters.Add("@Estado", SqlDbType.NChar, 2).Value = pacienteRow.Estado; cmd.Parameters.Add("@Sexo", SqlDbType.Bit).Value = pacienteRow.Sexo; cmd.Parameters.Add("@Nacionalidade", SqlDbType.NVarChar, 50).Value = pacienteRow.Nacionalidade; cmd.Parameters.Add("@Email", SqlDbType.NVarChar, 80).Value = pacienteRow.Email; cmd.Parameters.Add("@TelefoneResidencial", SqlDbType.NVarChar, 30).Value = pacienteRow.TelefoneResidencial; cmd.Parameters.Add("@TelefoneComercial", SqlDbType.NVarChar, 30).Value = pacienteRow.TelefoneComercial; cmd.Parameters.Add("@TelefoneCelular", SqlDbType.NVarChar, 30).Value = pacienteRow.TelefoneCelular; cmd.Parameters.Add("@Observacoes", SqlDbType.NVarChar, 1000).Value = pacienteRow.Observacoes; cmd.Parameters.Add("@CodigoPaciente", SqlDbType.Int).Direction = ParameterDirection.Output; try { // abre conexão conn.Open(); // executa comando cmd.ExecuteNonQuery(); // código do paciente codigoPaciente = (int)cmd.Parameters["@CodigoPaciente"].Value; // atualiza código no DataSet tipado pacienteRow.CodigoPaciente = codigoPaciente; } catch (Exception) { throw; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } return(codigoPaciente); }
/// <summary> /// Criação de um paciente. /// </summary> private void btnCriar_Click(object sender, EventArgs e) { if (!ValidarCampos()) { return; } Cursor.Current = Cursors.WaitCursor; try { // componente de negócio PacienteBc pacienteBc = new PacienteBc(); // dataSet do paciente PacienteDs pacienteDs = new PacienteDs(); this.pacienteRow = pacienteDs.Paciente.NewPacienteRow(); // valores dos controles this.pacienteRow.Nome = this.txtNome.Text; this.pacienteRow.CPF = this.mtxtCPF.Text; this.pacienteRow.DataNascimento = this.dtpDataNascimento.Value; this.pacienteRow.Endereco = this.txtEndereco.Text; this.pacienteRow.Complemento = this.txtComplemento.Text; this.pacienteRow.Bairro = this.txtBairro.Text; this.pacienteRow.CEP = this.mtxtCEP.Text; this.pacienteRow.Cidade = this.txtCidade.Text; this.pacienteRow.Estado = this.cmbEstado.Text; this.pacienteRow.Sexo = (this.cmbSexo.SelectedIndex == 1); this.pacienteRow.Nacionalidade = this.txtNacionalidade.Text; this.pacienteRow.Email = this.txtEmail.Text; this.pacienteRow.TelefoneResidencial = this.txtFoneResidencial.Text; this.pacienteRow.TelefoneComercial = this.txtFoneComercial.Text; this.pacienteRow.TelefoneCelular = this.txtFoneCelular.Text; this.pacienteRow.Observacoes = this.txtObservacoesGerais.Text; // cria o paciente this.pacienteRow.CodigoPaciente = pacienteBc.CriarPaciente(this.pacienteRow); // muda o estado MudarEstado(Estado.Mostrando); } catch (Exception ex) { string strMessage = this.resourceMgr.GetString(ex.Message); if (strMessage == null) { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = ex.Message; frmErro.ShowDialog(this); frmErro.Dispose(); } else { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = strMessage; frmErro.ShowDialog(this); frmErro.Dispose(); } } Cursor.Current = Cursors.Default; }
/// <summary> /// Busca pelo paciente. /// </summary> private void btnBuscar_Click(object sender, EventArgs e) { FrmBuscarPaciente frmBuscarPaciente = new FrmBuscarPaciente(); if (frmBuscarPaciente.ShowDialog(this) == DialogResult.OK) { Cursor.Current = Cursors.WaitCursor; try { // componente de negócio PacienteBc pacienteBc = new PacienteBc(); // busca pelo paciente this.pacienteRow = pacienteBc.BuscarPaciente(frmBuscarPaciente.CodigoPaciente); // atribui dados aos controles this.txtNome.Text = this.pacienteRow.Nome; this.mtxtCPF.Text = this.pacienteRow.CPF; this.dtpDataNascimento.Value = this.pacienteRow.DataNascimento; this.txtEndereco.Text = this.pacienteRow.Endereco; this.txtComplemento.Text = this.pacienteRow.Complemento; this.txtBairro.Text = this.pacienteRow.Bairro; this.mtxtCEP.Text = this.pacienteRow.CEP; this.txtCidade.Text = this.pacienteRow.Cidade; this.cmbEstado.SelectedIndex = this.cmbEstado.FindStringExact(this.pacienteRow.Estado); this.cmbSexo.SelectedIndex = (this.pacienteRow.Sexo) ? 1 : 0; this.txtNacionalidade.Text = this.pacienteRow.Nacionalidade; this.txtEmail.Text = this.pacienteRow.Email; this.txtFoneResidencial.Text = this.pacienteRow.TelefoneResidencial; this.txtFoneComercial.Text = this.pacienteRow.TelefoneComercial; this.txtFoneCelular.Text = this.pacienteRow.TelefoneCelular; this.txtObservacoesGerais.Text = this.pacienteRow.Observacoes; // muda estado MudarEstado(Estado.Mostrando); } catch (Exception ex) { string strMessage = this.resourceMgr.GetString(ex.Message); if (strMessage == null) { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = ex.Message; frmErro.ShowDialog(this); frmErro.Dispose(); } else { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = strMessage; frmErro.ShowDialog(this); frmErro.Dispose(); } } Cursor.Current = Cursors.Default; } frmBuscarPaciente.Dispose(); }
/// <summary> /// Lista cálculos de IMC do paciente. /// </summary> /// <param name="codigoPaciente">Código do paciente.</param> private void ListarCalculosIMC(int codigoPaciente) { // modifica cursor Cursor.Current = Cursors.WaitCursor; // trava busca this.travarBusca = true; // desabilita botão this.btnExcluir.Enabled = false; try { // componente de negócio PacienteBc pacienteBc = new PacienteBc(); // busca pelo paciente this.pacienteRow = pacienteBc.BuscarPaciente(codigoPaciente); // nome do paciente this.txtPaciente.Text = this.pacienteRow.Nome; // lista cálculos CalculoIMCDs calculoIMCDs = pacienteBc.ListarCalculosIMC(this.pacienteRow.CodigoPaciente); // lista cálculos de IMC this.lstCalculos.DataSource = calculoIMCDs.CalculoIMC; this.lstCalculos.DisplayMember = "Data"; this.lstCalculos.ValueMember = "CodigoCalculoIMC"; } catch (Exception ex) { string strMessage = this.resourceMgr.GetString(ex.Message); if (strMessage == null) { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = ex.Message; frmErro.ShowDialog(this); frmErro.Dispose(); } else { FrmErro frmErro = new FrmErro(); frmErro.Mensagem = strMessage; frmErro.ShowDialog(this); frmErro.Dispose(); } } finally { Cursor.Current = Cursors.Default; // destrava busca this.travarBusca = false; } // seleciona cálculo if (this.lstCalculos.SelectedItems.Count > 0) { this.lstCalculos_SelectedIndexChanged(this.lstCalculos, new EventArgs()); } }
/// <summary> /// Menu Avaliação > Postural > Nova. /// </summary> private void lsAvaliacao_miPostural_miNova_Click(object sender, EventArgs e) { // paciente PacienteDs.PacienteRow pacienteRow = null; // imagem do paciente Bitmap patientImage = null; // coeficientes de transformação double[] transfCoeff = null; // lista de pontos no paciente List <PointCorrelation> pointsList = null; // lista de pontos no paciente transformados para o novo sistema List <PointF> transformPointsList = null; // passo 1 - escolha do paciente FrmNovaAvaliacaoPostural_1 frmNovaAvaliacaoPostural_1 = new FrmNovaAvaliacaoPostural_1(); if (frmNovaAvaliacaoPostural_1.ShowDialog(this) == DialogResult.Cancel) { frmNovaAvaliacaoPostural_1.Dispose(); return; } // paciente pacienteRow = frmNovaAvaliacaoPostural_1.Paciente; // libera memória frmNovaAvaliacaoPostural_1.Dispose(); // passo 2 - aquisição da imagem FrmNovaAvaliacaoPostural_2 frmNovaAvaliacaoPostural_2 = new FrmNovaAvaliacaoPostural_2(); if (frmNovaAvaliacaoPostural_2.ShowDialog(this) == DialogResult.Cancel) { frmNovaAvaliacaoPostural_2.Dispose(); return; } // imagem patientImage = frmNovaAvaliacaoPostural_2.SelectedBitmap; // libera memória frmNovaAvaliacaoPostural_2.Dispose(); // passo 3 - pontos de referência FrmNovaAvaliacaoPostural_3 frmNovaAvaliacaoPostural_3 = new FrmNovaAvaliacaoPostural_3(); frmNovaAvaliacaoPostural_3.SelectedBitmap = patientImage; if (frmNovaAvaliacaoPostural_3.ShowDialog(this) == DialogResult.Cancel) { frmNovaAvaliacaoPostural_3.Dispose(); return; } // coeficientes de transformação transfCoeff = frmNovaAvaliacaoPostural_3.TransfCoefficients; // libera memória frmNovaAvaliacaoPostural_3.Dispose(); // passo 4 - pontos de referência no paciente FrmNovaAvaliacaoPostural_4 frmNovaAvaliacaoPostural_4 = new FrmNovaAvaliacaoPostural_4(); frmNovaAvaliacaoPostural_4.SelectedBitmap = patientImage; if (frmNovaAvaliacaoPostural_4.ShowDialog(this) == DialogResult.Cancel) { frmNovaAvaliacaoPostural_4.Dispose(); return; } // pontos no paciente pointsList = frmNovaAvaliacaoPostural_4.PointsList; // passo 5 - ordem dos pontos FrmNovaAvaliacaoPostural_5 frmNovaAvaliacaoPostural_5 = new FrmNovaAvaliacaoPostural_5(); frmNovaAvaliacaoPostural_5.PointsList = pointsList; frmNovaAvaliacaoPostural_5.TransfCoefficients = transfCoeff; frmNovaAvaliacaoPostural_5.SelectedBitmap = patientImage; if (frmNovaAvaliacaoPostural_5.ShowDialog(this) == DialogResult.Cancel) { frmNovaAvaliacaoPostural_5.Dispose(); return; } // pontos transformados transformPointsList = frmNovaAvaliacaoPostural_5.TransformPointsList; // libera memória frmNovaAvaliacaoPostural_5.Dispose(); // passo 6 - diagnóstico da escoliose FrmNovaAvaliacaoPostural_6 frmNovaAvaliacaoPostural_6 = new FrmNovaAvaliacaoPostural_6(); frmNovaAvaliacaoPostural_6.TransformPointsList = transformPointsList; frmNovaAvaliacaoPostural_6.PointsList = pointsList; frmNovaAvaliacaoPostural_6.SelectedBitmap = patientImage; frmNovaAvaliacaoPostural_6.Usuario = this.usuarioRow; frmNovaAvaliacaoPostural_6.Paciente = pacienteRow; if (frmNovaAvaliacaoPostural_6.ShowDialog(this) == DialogResult.Cancel) { frmNovaAvaliacaoPostural_6.Dispose(); return; } // libera memória frmNovaAvaliacaoPostural_6.Dispose(); }
/// <summary> /// Menu Avaliação > IMC > Novo. /// </summary> private void lsAvaliacao_miIMC_miNovo_Click(object sender, EventArgs e) { // paciente PacienteDs.PacienteRow pacienteRow = null; // imagem do paciente Bitmap patientImage = null; // coeficientes de transformação double[] transfCoeff = null; // altura calculada float calculatedHeight = 0f; // massa float scaleValue = 0f; // passo 1 - escolha do paciente FrmNovoIMC_1 frmNovoIMC_1 = new FrmNovoIMC_1(); if (frmNovoIMC_1.ShowDialog(this) == DialogResult.Cancel) { frmNovoIMC_1.Dispose(); return; } // paciente pacienteRow = frmNovoIMC_1.Paciente; // libera memória frmNovoIMC_1.Dispose(); // passo 2 - aquisição da imagem FrmNovoIMC_2 frmNovoIMC_2 = new FrmNovoIMC_2(); if (frmNovoIMC_2.ShowDialog(this) == DialogResult.Cancel) { frmNovoIMC_2.Dispose(); return; } // imagem patientImage = frmNovoIMC_2.SelectedBitmap; // libera memória frmNovoIMC_2.Dispose(); // passo 3 - pontos de referência FrmNovoIMC_3 frmNovoIMC_3 = new FrmNovoIMC_3(); frmNovoIMC_3.SelectedBitmap = patientImage; if (frmNovoIMC_3.ShowDialog(this) == DialogResult.Cancel) { frmNovoIMC_3.Dispose(); return; } // coeficientes de transformação transfCoeff = frmNovoIMC_3.TransfCoefficients; // libera memória frmNovoIMC_3.Dispose(); // passo 4 FrmNovoIMC_4 frmNovoIMC_4 = new FrmNovoIMC_4(); frmNovoIMC_4.SelectedBitmap = patientImage; frmNovoIMC_4.TransfCoefficients = transfCoeff; if (frmNovoIMC_4.ShowDialog(this) == DialogResult.Cancel) { frmNovoIMC_4.Dispose(); return; } // altura calculatedHeight = frmNovoIMC_4.CalculatedHeight; // libera memória frmNovoIMC_4.Dispose(); // passo 5 FrmNovoIMC_5 frmNovoIMC_5 = new FrmNovoIMC_5(); if (frmNovoIMC_5.ShowDialog(this) == DialogResult.Cancel) { frmNovoIMC_5.Dispose(); return; } // massa scaleValue = frmNovoIMC_5.ScaleValue; // libera memória frmNovoIMC_5.Dispose(); // passo 6 FrmNovoIMC_6 frmNovoIMC_6 = new FrmNovoIMC_6(); frmNovoIMC_6.Paciente = pacienteRow; frmNovoIMC_6.Usuario = this.usuarioRow; frmNovoIMC_6.SelectedBitmap = patientImage; frmNovoIMC_6.ScaleValue = scaleValue; frmNovoIMC_6.HeightValue = calculatedHeight; if (frmNovoIMC_6.ShowDialog(this) == DialogResult.Cancel) { frmNovoIMC_6.Dispose(); return; } // libera memória frmNovoIMC_6.Dispose(); }
/// <summary> /// Busca por um paciente. /// </summary> /// <param name="codigoPaciente">Código do paciente.</param> /// <returns>Um DataSet tipado contendo os dados do paciente.</returns> public PacienteDs.PacienteRow BuscarPaciente(int codigoPaciente) { SqlConnection conn = new SqlConnection(this.connectionStr); SqlCommand cmd = new SqlCommand("BuscarPaciente", conn); cmd.CommandType = CommandType.StoredProcedure; // cria paciente PacienteDs pacienteDs = new PacienteDs(); PacienteDs.PacienteRow pacienteRow = pacienteDs.Paciente.NewPacienteRow(); // parâmetros cmd.Parameters.Add("@CodigoPaciente", SqlDbType.Int).Value = codigoPaciente; cmd.Parameters.Add("@Nome", SqlDbType.NVarChar, 200).Direction = ParameterDirection.Output; cmd.Parameters.Add("@CPF", SqlDbType.NChar, 11).Direction = ParameterDirection.Output; cmd.Parameters.Add("@DataNascimento", SqlDbType.DateTime).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Endereco", SqlDbType.NVarChar, 200).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Complemento", SqlDbType.NVarChar, 40).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Bairro", SqlDbType.NVarChar, 100).Direction = ParameterDirection.Output; cmd.Parameters.Add("@CEP", SqlDbType.NChar, 8).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Cidade", SqlDbType.NVarChar, 100).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Estado", SqlDbType.NChar, 2).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Sexo", SqlDbType.Bit).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Nacionalidade", SqlDbType.NVarChar, 50).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Email", SqlDbType.NVarChar, 80).Direction = ParameterDirection.Output; cmd.Parameters.Add("@TelefoneResidencial", SqlDbType.NVarChar, 30).Direction = ParameterDirection.Output; cmd.Parameters.Add("@TelefoneComercial", SqlDbType.NVarChar, 30).Direction = ParameterDirection.Output; cmd.Parameters.Add("@TelefoneCelular", SqlDbType.NVarChar, 30).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Observacoes", SqlDbType.NVarChar, 1000).Direction = ParameterDirection.Output; try { // abre conexão conn.Open(); // executa comando cmd.ExecuteNonQuery(); // dados do paciente pacienteRow.CodigoPaciente = codigoPaciente; pacienteRow.Nome = (string)cmd.Parameters["@Nome"].Value; pacienteRow.CPF = (string)cmd.Parameters["@CPF"].Value; pacienteRow.DataNascimento = (DateTime)cmd.Parameters["@DataNascimento"].Value; pacienteRow.Endereco = (string)cmd.Parameters["@Endereco"].Value; pacienteRow.Complemento = (string)cmd.Parameters["@Complemento"].Value; pacienteRow.Bairro = (string)cmd.Parameters["@Bairro"].Value; pacienteRow.CEP = ((string)cmd.Parameters["@CEP"].Value).Trim(); pacienteRow.Cidade = (string)cmd.Parameters["@Cidade"].Value; pacienteRow.Estado = (string)cmd.Parameters["@Estado"].Value; pacienteRow.Sexo = (bool)cmd.Parameters["@Sexo"].Value; pacienteRow.Nacionalidade = (string)cmd.Parameters["@Nacionalidade"].Value; pacienteRow.Email = (string)cmd.Parameters["@Email"].Value; pacienteRow.TelefoneResidencial = (string)cmd.Parameters["@TelefoneResidencial"].Value; pacienteRow.TelefoneComercial = (string)cmd.Parameters["@TelefoneComercial"].Value; pacienteRow.TelefoneCelular = (string)cmd.Parameters["@TelefoneCelular"].Value; pacienteRow.Observacoes = (string)cmd.Parameters["@Observacoes"].Value; } catch (Exception) { throw; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } return(pacienteRow); }