/* * Método que trata o click em uma linha do grid. */ protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { int index; usuarioConectado = (String)Session["usuario"]; senhaConectado = (String)Session["senha"]; GoldenAccess goldenAccess = new GoldenAccess("http://localhost:3271/GoldenAccess.soap"); User usuario = new User(usuarioConectado, senhaConectado); try { usuario = goldenAccess.Authenticate(usuarioConectado, senhaConectado); } catch (Exception ex) { LabelErro.Text = ex.Message; } if (usuario.IsAuthenticated && !usuario.Disabled) { if (usuario.HasGroup("PTRIOADM")) { //Caso seja clicado no botão abrir. if (e.CommandName == "Abrir") { string nome = ""; try { index = Convert.ToInt32(e.CommandArgument) - (GridView1.PageSize * GridView1.PageIndex); //pegando a linha clicada. int id = Convert.ToInt32(GridView1.DataKeys[index].Value); //pegando o id da linha Adaptador adpt = new Adaptador(); Prontuario prontuario = new Prontuario(); Medico medico = new Medico(); prontuario = adpt.obterProntuarioPorId(id.ToString()); medico = prontuario.medico; nome = prontuario.arq_Arquivo; //diretorio = Server.MapPath(Settings.Default.CaminhoDoRepositorioProntuario); diretorio = Server.MapPath("~\\arquivos\\");//pegando o diretório onde o arquivo encontra-se Medico medicosSolicitantes = new Medico(); medicosSolicitantes = medicoParticipante(prontuario.numero_Registro, usuarioConectado); if (medicosSolicitantes.matricula_Medico1 == medico.matricula_Medico1 || medicosSolicitantes.matricula_Medico2 == medico.matricula_Medico2 || medicosSolicitantes.matricula_Medico3 == medico.matricula_Medico3 || medicosSolicitantes.matricula_Medico4 == medico.matricula_Medico4 || usuario.Login == "admpront") { //Abertura do arquivo anexado. if (Directory.Exists(diretorio)) { Response.Clear(); Response.ClearHeaders(); Response.AddHeader("Content-Type", "application/pdf"); Response.AddHeader("Content-Disposition", "attachment; filename=" + nome); FileStream file = new FileStream(diretorio + nome, System.IO.FileMode.Open, FileAccess.Read); byte[] bytes = new byte[Convert.ToInt32(file.Length)]; file.Read(bytes, 0, bytes.Length); file.Close(); Response.OutputStream.Write(bytes, 0, bytes.GetUpperBound(0)); Response.Flush(); Response.Close(); } else { LabelErro.Text = "Diretório " + diretorio + " não encontrado"; } } else { LabelErro.Text = "Você não tem permissão para consultar esse prontuário"; } } catch (Exception ex) { LabelErro.Text = ex.Message; } } //Caso seja clicado no botão alterar if (e.CommandName == "Alterar") { index = Convert.ToInt32(e.CommandArgument) - (GridView1.PageSize * GridView1.PageIndex); int id = Convert.ToInt32(GridView1.DataKeys[index].Value); Adaptador adpt = new Adaptador(); Prontuario prontuario = new Prontuario(); Medico medico = new Medico(); prontuario = adpt.obterProntuarioPorId(id.ToString()); medico = prontuario.medico; Medico medicosSolicitantes = new Medico(); medicosSolicitantes = medicoParticipante(prontuario.numero_Registro, usuarioConectado); if (medicosSolicitantes.matricula_Medico1 == medico.matricula_Medico1 || medicosSolicitantes.matricula_Medico2 == medico.matricula_Medico2 || medicosSolicitantes.matricula_Medico3 == medico.matricula_Medico3 || medicosSolicitantes.matricula_Medico4 == medico.matricula_Medico4 || usuario.Login == "admpront") { Session.Add("id", id.ToString()); Server.Transfer("alterarpaciente.aspx");//redirecionamento para a página de alteração de dados. } else { LabelErro.Text = "Você não tem permissão para consultar esse prontuário"; } } //Caso seja clicado no botão excluir. if (e.CommandName == "Excluir") { index = Convert.ToInt32(e.CommandArgument) - (GridView1.PageSize * GridView1.PageIndex);; int id = Convert.ToInt32(GridView1.DataKeys[index].Value); Adaptador adpt = new Adaptador(); Prontuario prontuario = new Prontuario(); Medico medico = new Medico(); prontuario = adpt.obterProntuarioPorId(id.ToString()); Medico medicosSolicitantes = new Medico(); medicosSolicitantes = medicoParticipante(prontuario.numero_Registro, usuarioConectado); if (medicosSolicitantes.matricula_Medico1 == medico.matricula_Medico1 || medicosSolicitantes.matricula_Medico2 == medico.matricula_Medico2 || medicosSolicitantes.matricula_Medico3 == medico.matricula_Medico3 || medicosSolicitantes.matricula_Medico4 == medico.matricula_Medico4 || usuario.Login == "admpront") { string nomeArquivoAntigo = prontuario.arq_Arquivo; if (nomeArquivoAntigo != null) { string diretorioRemover = Settings.Default.CaminhoDoRepositorioProntuario + nomeArquivoAntigo; FileInfo arquivoAntigo = new FileInfo(diretorioRemover); arquivoAntigo.Delete();//exclusão do arquivo } //recarga da página após a exclusão do registro. adpt.RemoverProntuario(id); GridView1.DataSource = adpt.Todos(); GridView1.DataBind(); } else { LabelErro.Text = "Você não tem permissão para consultar esse prontuário"; } } } //Caso o usuário não tenha permissão de modificar os dados. else if (usuario.HasGroup("PTRIOLIM")) { if (e.CommandName == "Abrir") { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse prontuário."; //string nome = ""; //try //{ // index = Convert.ToInt32(e.CommandArgument); // int id = Convert.ToInt32(GridView1.DataKeys[index].Value); // Adaptador adpt = new Adaptador(); // Prontuario processo = new Prontuario(); // processo = adpt.obterProntuarioPorId(id.ToString()); // nome = processo.arq_Arquivo; // diretorio = Server.MapPath("~\\arquivos\\"); // if (Directory.Exists(diretorio)) // { // Response.Clear(); // Response.ClearHeaders(); // Response.AddHeader("Content-Type", "application/pdf"); // Response.AddHeader("Content-Disposition", "attachment; filename=" + nome); // FileStream file = new FileStream(diretorio + nome, System.IO.FileMode.Open, FileAccess.Read); // byte[] bytes = new byte[Convert.ToInt32(file.Length)]; // file.Read(bytes, 0, bytes.Length); // file.Close(); // Response.OutputStream.Write(bytes, 0, bytes.GetUpperBound(0)); // Response.Flush(); // Response.Close(); // } // else // { // LabelErro.Text = "Diretório " + diretorio + " não encontrado"; // } //} //catch (Exception ex) //{ // LabelErro.Text = ex.Message; //} } if (e.CommandName == "Alterar") { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse registro."; } if (e.CommandName == "Excluir") { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse registro."; } } else { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse registro."; } } else { LabelErro.Text = "Você não é usuário do sistema."; } }
/* * Método que vai consultar um prontuário através de seu identificador. */ public Prontuario obterProntuarioPorId(string valor) { IDataReader reader; IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;udb=defudb;server=localhost"); try { minhaConexao.Open(); Prontuario prontuario = new Prontuario(); try { IDbCommand comando = new LightBaseCommand("select id, arq_Arquivo, numero_Registro, nome_Paciente, naturalidade, data_Nascimento," + "sexo, nome_Pai, nome_Mae, profissao, pessoa_Responsavel, endereco.endereco, " + "endereco.numero, endereco.complemento, endereco.bairro, endereco.nome_Cidade, " + "endereco.nome_Estado, telefones.numero_Telefone, procedencia, nome_Clinica_Diagnostico, " + "diagnostico, cid, medicos.matricula_Medico, medicos.nome_Medico, nome_Clinica_Internacao, " + "diagnostico_Provisorio, data_Internacao, medico_Solicitante from prontuario where id=" + valor); comando.Connection = minhaConexao; reader = comando.ExecuteReader(); while (reader.Read()) { Endereco enderecos = new Endereco(); Telefone telefones = new Telefone(); Medico medico = new Medico(); prontuario.id = Convert.ToInt16(reader["id"]); prontuario.arq_Arquivo = Convert.ToString(reader["arq_Arquivo"]); prontuario.numero_Registro = Convert.ToString(reader["numero_Registro"]); prontuario.nome_Paciente = Convert.ToString(reader["nome_Paciente"]); prontuario.naturalidade = Convert.ToString(reader["naturalidade"]); prontuario.data_Nascimento = Convert.ToDateTime(reader["data_Nascimento"]); prontuario.sexo = Convert.ToString(reader["sexo"]); prontuario.nome_Pai = Convert.ToString(reader["nome_Pai"]); prontuario.nome_Mae = Convert.ToString(reader["nome_Mae"]); prontuario.profissao = Convert.ToString(reader["profissao"]); prontuario.pessoa_Responsavel = Convert.ToString(reader["pessoa_Responsavel"]); prontuario.procedencia = Convert.ToString(reader["procedencia"]); prontuario.nome_Clinica_Diagnostico = Convert.ToString(reader["nome_Clinica_Diagnostico"]); prontuario.diagnostico = Convert.ToString(reader["diagnostico"]); prontuario.cid = Convert.ToString(reader["cid"]); prontuario.nome_Clinica_Internacao = Convert.ToString(reader["nome_Clinica_Internacao"]); prontuario.diagnostico_Provisorio = Convert.ToString(reader["diagnostico_Provisorio"]); prontuario.data_Internacao = Convert.ToDateTime(reader["data_Internacao"]); prontuario.medico_Solicitante = Convert.ToString(reader["medico_Solicitante"]); //Tratamento do campo multivalorado Endereco DataTable dt_Endereco = (DataTable)reader["endereco"]; string endereco = dt_Endereco.Rows[0]["endereco"].ToString(); string numero = dt_Endereco.Rows[0]["numero"].ToString(); string complemento = dt_Endereco.Rows[0]["complemento"].ToString(); string bairro = dt_Endereco.Rows[0]["bairro"].ToString(); string nome_Cidade = dt_Endereco.Rows[0]["nome_Cidade"].ToString(); string nome_Estado = dt_Endereco.Rows[0]["nome_Estado"].ToString(); enderecos.endereco = endereco; enderecos.numero = numero; enderecos.complemento = complemento; enderecos.bairro = bairro; enderecos.nome_Cidade = nome_Cidade; enderecos.nome_Estado = nome_Estado; //Tratamento do campo multivalorado Telefones. DataTable dt_Telefones = (DataTable)reader["telefones"]; string[] dados_Telefone = { "", "", "" }; for (int i = 0; i < dt_Telefones.Rows.Count; i++) { dados_Telefone[i] = dt_Telefones.Rows[i]["numero_Telefone"].ToString(); } telefones.numero_TelefoneFixo = dados_Telefone[0].ToString(); telefones.numero_TelefoneCelular = dados_Telefone[1].ToString(); telefones.numero_TelefoneComercial = dados_Telefone[2].ToString(); //Tratamento do campo multivalorado Médicos. DataTable dt_Medico = (DataTable)reader["medicos"]; string[] matriculas_Medico = { "", "", "", "" }; string[] nomes_Medico = { "", "", "", "" }; for (int i = 0; i < dt_Medico.Rows.Count; i++) { matriculas_Medico[i] = dt_Medico.Rows[i]["matricula_Medico"].ToString(); nomes_Medico[i] = dt_Medico.Rows[i]["nome_Medico"].ToString(); } medico.matricula_Medico1 = matriculas_Medico[0].ToString(); medico.matricula_Medico2 = matriculas_Medico[1].ToString(); medico.matricula_Medico3 = matriculas_Medico[2].ToString(); medico.matricula_Medico4 = matriculas_Medico[3].ToString(); medico.nome_Medico1 = nomes_Medico[0].ToString(); medico.nome_Medico2 = nomes_Medico[1].ToString(); medico.nome_Medico3 = nomes_Medico[2].ToString(); medico.nome_Medico4 = nomes_Medico[3].ToString(); prontuario.medico = medico; prontuario.endereco = enderecos; prontuario.telefone = telefones; } } catch (LightBaseException e) { string erro = e.Message; } return(prontuario); } finally { minhaConexao.Close(); } }
/* * Método que vai alterar os dados do prontuário, após o click do botão enviar. */ protected void ImageButtonAlterar_Click(object sender, ImageClickEventArgs e) { if (FileUploadArquivo.PostedFile.ContentLength == 0) { Response.Write("<script>alert('Favor selecionar arquivo')</script>"); } else { arquivo = FileUploadArquivo.PostedFile.FileName; nomeArquivo = System.IO.Path.GetFileName(arquivo); extensao = nomeArquivo.Substring(nomeArquivo.LastIndexOf('.')); tamanho = nomeArquivo.Length; Prontuario prontuario = new Prontuario(); Adaptador adpt = new Adaptador(); string id = (String)Session["id"]; prontuario = adpt.obterProntuarioPorId(id); prontuario.id = Convert.ToInt16(id); nomeArquivoAntigo = prontuario.arq_Arquivo; nomeArquivoLBW = prontuario.numero_Registro + "_prontuario.pdf"; prontuario.arq_Arquivo = nomeArquivoLBW; prontuario.numero_Registro = TextBoxNumero_Registro.Text; prontuario.nome_Paciente = TextBoxNome_Paciente.Text; prontuario.naturalidade = TextBoxNaturalidade.Text; prontuario.data_Nascimento = Convert.ToDateTime(TextBoxData_Nascimento.Text); if (RadioButtonListSexo.SelectedIndex == 0) { prontuario.sexo = "m"; } else { prontuario.sexo = "m"; } prontuario.nome_Pai = TextBoxNome_Pai.Text; prontuario.nome_Mae = TextBoxNome_Mae.Text; prontuario.profissao = TextBoxProfissao.Text; prontuario.pessoa_Responsavel = TextBoxPessoa_Responsavel.Text; Endereco endereco = new Endereco(); endereco.endereco = TextBoxEndereco.Text; endereco.numero = TextBoxNumero.Text; endereco.complemento = TextBoxComplemento.Text; endereco.bairro = TextBoxBairro.Text; endereco.cep = TextBoxCEP.Text; endereco.nome_Cidade = TextBoxCidade.Text; endereco.nome_Estado = TextBoxEstado.Text; prontuario.endereco = endereco; Telefone telefone = new Telefone(); telefone.numero_TelefoneFixo = TextBoxTelefoneResidencial.Text; telefone.numero_TelefoneCelular = TextBoxTelefoneCelular.Text; telefone.numero_TelefoneComercial = TextBoxTelefoneComercial.Text; prontuario.telefone = telefone; prontuario.procedencia = TextBoxProcedencia.Text; prontuario.nome_Clinica_Diagnostico = TextBoxNome_Clinica_Diagnostico.Text; prontuario.diagnostico = TextBoxDiagnostico.Text; prontuario.cid = TextBoxCID.Text; Medico medico = new Medico(); medico = prontuario.medico; medico.nome_Medico1 = TextBoxMedico_Solicitante1.Text; medico.nome_Medico2 = TextBoxMedico_Solicitante2.Text; medico.nome_Medico3 = TextBoxMedico_Solicitante3.Text; medico.nome_Medico4 = TextBoxMedico_Solicitante4.Text; prontuario.medico = medico; prontuario.nome_Clinica_Internacao = TextBoxNome_Clinica_Internacao.Text; prontuario.diagnostico_Provisorio = TextBoxDiagnostico_Provisorio.Text; prontuario.data_Internacao = Convert.ToDateTime(TextBoxData_Internacao.Text); prontuario.medico_Solicitante = TextBoxNome_Medico.Text; Adaptador adt = new Adaptador(); try { if (nomeArquivoAntigo != null) { string diretorioRemover = Settings.Default.CaminhoDoRepositorioProntuario + nomeArquivoAntigo; FileInfo arquivoAntigo = new FileInfo(diretorioRemover); arquivoAntigo.Delete(); } adt.AtualizarProntuario(prontuario); } catch (Exception ex) { LabelErro.Text = ex.Message; } Versao versao = new Versao(); FileUploadArquivo.PostedFile.SaveAs(Settings.Default.CaminhoDoRepositorioProntuario + nomeArquivoLBW); versao.CaminhoDoArquivo = Settings.Default.CaminhoDoRepositorioProntuario; versao.Extensao = extensao; versao.NomeDoArquivo = nomeArquivoLBW; versao.Id = prontuario.id; Indexador indexador = new Indexador(); indexador.Indexe(versao); mensagem = "Registro modificado com sucesso"; Session.Add("mensagem", mensagem); Server.Transfer("Listar.aspx"); } }
/* * Método que atualiza os dados de um prontuário. */ public void AtualizarProntuario(Prontuario prontuario) { Endereco enderecos = new Endereco(); enderecos = prontuario.endereco; Telefone telefone = new Telefone(); telefone = prontuario.telefone; Medico medico = new Medico(); medico = prontuario.medico; IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;UDB=defudb;server=localhost"); try { minhaConexao.Open(); IDbCommand comando = new LightBaseCommand("update prontuario set arq_Arquivo=@arq_Arquivo, numero_Registro=@numero_Registro, " + "nome_Paciente=@nome_Paciente, naturalidade=@naturalidade, data_Nascimento=@data_Nascimento, sexo=@sexo, nome_Pai=@nome_Pai, " + "nome_Mae=@nome_Mae, profissao=@profissao, pessoa_Responsavel=@pessoa_Responsavel, procedencia=@procedencia, " + "nome_Clinica_Diagnostico=@nome_Clinica_Diagnostico, diagnostico=@diagnostico, cid=@cid, " + "nome_Clinica_Internacao=@nome_Clinica_Internacao, diagnostico_Provisorio=@diagnostico_Provisorio, " + "data_Internacao=@data_Internacao, medico_Solicitante=@medico_Solicitante, endereco={{@endereco, @numero, @complemento, " + "@bairro, @nome_Cidade, @nome_Estado, @cep}}, telefones={{@numero_telefone1}, {@numero_telefone2}, {@numero_telefone3}}, medicos={{@matricula_Medico1, @nome_medico1}, " + "{@matricula_Medico2, @nome_medico2}, {@matricula_Medico3, @nome_medico3}, {@matricula_Medico4, @nome_Medico4}} where id=@id"); comando.Parameters.Add(new LightBaseParameter("arq_Arquivo", prontuario.arq_Arquivo)); comando.Parameters.Add(new LightBaseParameter("id", prontuario.id)); comando.Parameters.Add(new LightBaseParameter("numero_Registro", prontuario.numero_Registro)); comando.Parameters.Add(new LightBaseParameter("nome_Paciente", prontuario.nome_Paciente)); comando.Parameters.Add(new LightBaseParameter("naturalidade", prontuario.naturalidade)); comando.Parameters.Add(new LightBaseParameter("data_Nascimento", prontuario.data_Nascimento)); comando.Parameters.Add(new LightBaseParameter("sexo", prontuario.sexo)); comando.Parameters.Add(new LightBaseParameter("nome_Pai", prontuario.nome_Pai)); comando.Parameters.Add(new LightBaseParameter("nome_Mae", prontuario.nome_Mae)); comando.Parameters.Add(new LightBaseParameter("profissao", prontuario.profissao)); comando.Parameters.Add(new LightBaseParameter("pessoa_Responsavel", prontuario.pessoa_Responsavel)); comando.Parameters.Add(new LightBaseParameter("procedencia", prontuario.procedencia)); comando.Parameters.Add(new LightBaseParameter("nome_Clinica_Diagnostico", prontuario.nome_Clinica_Diagnostico)); comando.Parameters.Add(new LightBaseParameter("diagnostico", prontuario.diagnostico)); comando.Parameters.Add(new LightBaseParameter("cid", prontuario.cid)); comando.Parameters.Add(new LightBaseParameter("nome_Clinica_Internacao", prontuario.nome_Clinica_Internacao)); comando.Parameters.Add(new LightBaseParameter("diagnostico_Provisorio", prontuario.diagnostico_Provisorio)); comando.Parameters.Add(new LightBaseParameter("data_Internacao", prontuario.data_Internacao)); comando.Parameters.Add(new LightBaseParameter("medico_Solicitante", prontuario.medico_Solicitante)); comando.Parameters.Add(new LightBaseParameter("endereco", enderecos.endereco)); comando.Parameters.Add(new LightBaseParameter("numero", enderecos.numero)); comando.Parameters.Add(new LightBaseParameter("complemento", enderecos.complemento)); comando.Parameters.Add(new LightBaseParameter("bairro", enderecos.bairro)); comando.Parameters.Add(new LightBaseParameter("nome_Cidade", enderecos.nome_Cidade)); comando.Parameters.Add(new LightBaseParameter("nome_Estado", enderecos.nome_Estado)); comando.Parameters.Add(new LightBaseParameter("cep", enderecos.cep)); comando.Parameters.Add(new LightBaseParameter("numero_Telefone1", telefone.numero_TelefoneFixo)); comando.Parameters.Add(new LightBaseParameter("numero_Telefone2", telefone.numero_TelefoneCelular)); comando.Parameters.Add(new LightBaseParameter("numero_Telefone3", telefone.numero_TelefoneComercial)); comando.Parameters.Add(new LightBaseParameter("matricula_Medico1", medico.matricula_Medico1)); comando.Parameters.Add(new LightBaseParameter("matricula_Medico2", medico.matricula_Medico2)); comando.Parameters.Add(new LightBaseParameter("matricula_Medico3", medico.matricula_Medico3)); comando.Parameters.Add(new LightBaseParameter("matricula_Medico4", medico.matricula_Medico4)); comando.Parameters.Add(new LightBaseParameter("nome_Medico1", medico.nome_Medico1)); comando.Parameters.Add(new LightBaseParameter("nome_Medico2", medico.nome_Medico2)); comando.Parameters.Add(new LightBaseParameter("nome_Medico3", medico.nome_Medico3)); comando.Parameters.Add(new LightBaseParameter("nome_Medico4", medico.nome_Medico4)); comando.Connection = minhaConexao; comando.ExecuteNonQuery(); } finally { minhaConexao.Close(); } }
/* * Método que insere um novo prontuário na base. */ public void InserirProntuario(Prontuario prontuario) { IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;udb=defudb;server=localhost"); try { minhaConexao.Open(); IDbCommand meuComando = new LightBaseCommand(); meuComando.CommandText = "insert into prontuario(arq_Arquivo, numero_Registro, nome_Paciente, naturalidade, data_Nascimento, sexo, " + "nome_Pai, nome_Mae, profissao, pessoa_Responsavel, endereco, telefones, procedencia, nome_Clinica_Diagnostico, diagnostico, " + "cid, medicos, nome_Clinica_Internacao, diagnostico_Provisorio, data_Internacao, medico_Solicitante)values (@arq_Arquivo, " + "@numero_Registro, @nome_Paciente, @naturalidade, @data_Nascimento, @sexo, @nome_Pai, @nome_Mae, @profissao, @pessoa_Responsavel, " + "{{@endereco, @numero, @complemento, @bairro, @nome_Cidade, @nome_Estado, @cep}}, {{@telefone1},{@telefone2}, {@telefone3}}, " + "@procedencia, @nome_Clinica_Diagnostico, @diagnostico, @cid, {{@matricula_Medico1, @nome_Medico1}, {@matricula_Medico2, " + "@nome_Medico2}, {@matricula_Medico3, @nome_Medico3}, {@matricula_Medico4, @nome_Medico4}}, @nome_Clinica_Internacao, " + "@diagnostico_Provisorio, @data_Internacao, @medico_Solicitante)"; meuComando.Connection = minhaConexao; Endereco enderecos = new Endereco(); enderecos = prontuario.endereco; Telefone telefone = new Telefone(); telefone = prontuario.telefone; Medico medico = new Medico(); medico = prontuario.medico; meuComando.Parameters.Add(new LightBaseParameter("arq_Arquivo", prontuario.arq_Arquivo)); meuComando.Parameters.Add(new LightBaseParameter("numero_Registro", prontuario.numero_Registro)); meuComando.Parameters.Add(new LightBaseParameter("nome_Paciente", prontuario.nome_Paciente)); meuComando.Parameters.Add(new LightBaseParameter("naturalidade", prontuario.naturalidade)); meuComando.Parameters.Add(new LightBaseParameter("data_Nascimento", prontuario.data_Nascimento)); meuComando.Parameters.Add(new LightBaseParameter("sexo", prontuario.sexo)); meuComando.Parameters.Add(new LightBaseParameter("nome_Pai", prontuario.nome_Pai)); meuComando.Parameters.Add(new LightBaseParameter("nome_Mae", prontuario.nome_Mae)); meuComando.Parameters.Add(new LightBaseParameter("profissao", prontuario.profissao)); meuComando.Parameters.Add(new LightBaseParameter("pessoa_Responsavel", prontuario.pessoa_Responsavel)); meuComando.Parameters.Add(new LightBaseParameter("endereco", enderecos.endereco)); meuComando.Parameters.Add(new LightBaseParameter("numero", enderecos.numero)); meuComando.Parameters.Add(new LightBaseParameter("complemento", enderecos.complemento)); meuComando.Parameters.Add(new LightBaseParameter("bairro", enderecos.bairro)); meuComando.Parameters.Add(new LightBaseParameter("nome_Cidade", enderecos.nome_Cidade)); meuComando.Parameters.Add(new LightBaseParameter("nome_Estado", enderecos.nome_Estado)); meuComando.Parameters.Add(new LightBaseParameter("cep", prontuario.endereco.cep)); meuComando.Parameters.Add(new LightBaseParameter("numero_Telefone1", telefone.numero_TelefoneFixo)); meuComando.Parameters.Add(new LightBaseParameter("numero_Telefone2", telefone.numero_TelefoneCelular)); meuComando.Parameters.Add(new LightBaseParameter("numero_Telefone3", telefone.numero_TelefoneComercial)); meuComando.Parameters.Add(new LightBaseParameter("procedencia", prontuario.procedencia)); meuComando.Parameters.Add(new LightBaseParameter("nome_Clinica_Diagnostico", prontuario.nome_Clinica_Diagnostico)); meuComando.Parameters.Add(new LightBaseParameter("diagnostico", prontuario.diagnostico)); meuComando.Parameters.Add(new LightBaseParameter("cid", prontuario.cid)); meuComando.Parameters.Add(new LightBaseParameter("matricula_Medico1", medico.matricula_Medico1)); meuComando.Parameters.Add(new LightBaseParameter("matricula_Medico2", medico.matricula_Medico2)); meuComando.Parameters.Add(new LightBaseParameter("matricula_Medico3", medico.matricula_Medico3)); meuComando.Parameters.Add(new LightBaseParameter("matricula_Medico4", medico.matricula_Medico4)); meuComando.Parameters.Add(new LightBaseParameter("nome_Medico1", medico.nome_Medico1)); meuComando.Parameters.Add(new LightBaseParameter("nome_Medico2", medico.nome_Medico2)); meuComando.Parameters.Add(new LightBaseParameter("nome_Medico3", medico.nome_Medico3)); meuComando.Parameters.Add(new LightBaseParameter("nome_Medico4", medico.nome_Medico4)); meuComando.Parameters.Add(new LightBaseParameter("nome_Clinica_Internacao", prontuario.nome_Clinica_Internacao)); meuComando.Parameters.Add(new LightBaseParameter("diagnostico_Provisorio", prontuario.diagnostico_Provisorio)); meuComando.Parameters.Add(new LightBaseParameter("data_Internacao", prontuario.data_Internacao)); meuComando.Parameters.Add(new LightBaseParameter("medico_Solicitante", prontuario.medico_Solicitante)); meuComando.ExecuteNonQuery(); } finally { minhaConexao.Close(); } }
/* * Método que realiza a pesquisa de um prontuário utilizando como parâmetro uma consulta lightbase. */ public List <Prontuario> PesquisaPorCampo(string comando) { List <Prontuario> lista = new List <Prontuario>(); IDataReader reader; IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;udb=DEFUDB;server=localhost"); try { minhaConexao.Open();//abertura da conexão com o lightbase try { IDbCommand meuComando = new LightBaseCommand(comando);//Criando a setando o comando de consulta meuComando.Connection = minhaConexao; reader = meuComando.ExecuteReader(); //Leitura dos registros retornados na consulta e carga na classe de prontuário while (reader.Read()) { Prontuario prontuario = new Prontuario(); Endereco enderecos = new Endereco(); Telefone telefones = new Telefone(); Medico medico = new Medico(); prontuario.id = Convert.ToInt16(reader["id"]); prontuario.arq_Arquivo = Convert.ToString(reader["arq_Arquivo"]); prontuario.numero_Registro = Convert.ToString(reader["numero_Registro"]); prontuario.nome_Paciente = Convert.ToString(reader["nome_Paciente"]); prontuario.naturalidade = Convert.ToString(reader["naturalidade"]); prontuario.data_Nascimento = Convert.ToDateTime(reader["data_Nascimento"]); prontuario.sexo = Convert.ToString(reader["sexo"]); prontuario.nome_Pai = Convert.ToString(reader["nome_Pai"]); prontuario.nome_Mae = Convert.ToString(reader["nome_Mae"]); prontuario.profissao = Convert.ToString(reader["profissao"]); prontuario.pessoa_Responsavel = Convert.ToString(reader["pessoa_Responsavel"]); prontuario.procedencia = Convert.ToString(reader["procedencia"]); prontuario.nome_Clinica_Diagnostico = Convert.ToString(reader["nome_Clinica_Diagnostico"]); prontuario.diagnostico = Convert.ToString(reader["diagnostico"]); prontuario.cid = Convert.ToString(reader["cid"]); prontuario.nome_Clinica_Internacao = Convert.ToString(reader["nome_Clinica_Internacao"]); prontuario.diagnostico_Provisorio = Convert.ToString(reader["diagnostico_Provisorio"]); prontuario.data_Internacao = Convert.ToDateTime(reader["data_Internacao"]); prontuario.medico_Solicitante = Convert.ToString(reader["medico_Solicitante"]); //Tratamento do campo multivalorado Endereco DataTable dt_Endereco = (DataTable)reader["endereco"]; string endereco = dt_Endereco.Rows[0]["endereco"].ToString(); string numero = dt_Endereco.Rows[0]["numero"].ToString(); string complemento = dt_Endereco.Rows[0]["complemento"].ToString(); string bairro = dt_Endereco.Rows[0]["bairro"].ToString(); string nome_Cidade = dt_Endereco.Rows[0]["nome_Cidade"].ToString(); string nome_Estado = dt_Endereco.Rows[0]["nome_Estado"].ToString(); enderecos.endereco = endereco; enderecos.numero = numero; enderecos.complemento = complemento; enderecos.bairro = bairro; enderecos.nome_Cidade = nome_Cidade; enderecos.nome_Estado = nome_Estado; //Tratamento do campo multivalorado Telefones. DataTable dt_Telefones = (DataTable)reader["telefones"]; string[] dados_Telefone = { "", "", "" }; for (int i = 0; i < dt_Telefones.Rows.Count; i++) { dados_Telefone[i] = dt_Telefones.Rows[i]["numero_Telefone"].ToString(); } telefones.numero_TelefoneFixo = dados_Telefone[0].ToString(); telefones.numero_TelefoneCelular = dados_Telefone[1].ToString(); telefones.numero_TelefoneComercial = dados_Telefone[2].ToString(); //Tratamento do campo multivalorado Médicos. DataTable dt_Medico = (DataTable)reader["medicos"]; string[] matriculas_Medico = { "", "", "", "" }; string[] nomes_Medico = { "", "", "", "" }; for (int i = 0; i < dt_Medico.Rows.Count; i++) { matriculas_Medico[i] = dt_Medico.Rows[i]["matricula_Medico"].ToString(); nomes_Medico[i] = dt_Medico.Rows[i]["nome_Medico"].ToString(); } medico.matricula_Medico1 = matriculas_Medico[0].ToString(); medico.matricula_Medico2 = matriculas_Medico[1].ToString(); medico.matricula_Medico3 = matriculas_Medico[2].ToString(); medico.matricula_Medico4 = matriculas_Medico[3].ToString(); medico.nome_Medico1 = nomes_Medico[0].ToString(); medico.nome_Medico2 = nomes_Medico[1].ToString(); medico.nome_Medico3 = nomes_Medico[2].ToString(); medico.nome_Medico4 = nomes_Medico[3].ToString(); //Adicionando cada registro a uma lista. lista.Add(prontuario); } } catch (LightBaseException e) { string texto = e.Message; } return(lista); } finally { minhaConexao.Close(); } }
/* * Método que realiza uma consulta por uma coluna específica */ public List <Prontuario> PorColuna(string coluna, string orderby) { List <Prontuario> lista = new List <Prontuario>(); IDataReader reader; IDbConnection minhaConexaoexao = new LightBaseConnection("user=lbw;password=lbw;UDB=defudb;server=localhost"); try { if (coluna == "numero_Telefone1") { coluna = "numero_Telefone"; } else if (coluna == "numero_Telefone2") { coluna = "numero_Telefone"; } else if (coluna == "numero_Telefone3") { coluna = "numero_Telefone"; } else if (coluna == "numero_Medico1") { coluna = "numero_Medico"; } else if (coluna == "numero_Medico2") { coluna = "numero_Medico"; } else if (coluna == "numero_Medico3") { coluna = "numero_Medico"; } minhaConexaoexao.Open(); try { IDbCommand comando = new LightBaseCommand("select id, arq_Arquivo, numero_Registro, nome_Paciente, naturalidade, data_Nascimento, " + "sexo, nome_Pai, nome_Mae, profissao, pessoa_Responsavel, endereco.endereco, " + "endereco.numero, endereco.complemento, endereco.bairro, endereco.nome_Cidade, " + "endereco.nome_Estado, telefones.numero_Telefone, medicos.matricula_Medico, medicos.nome_Medico, procedencia, " + "nome_Clinica_Diagnostico, diagnostico, cid, nome_Clinica_Internacao, " + "diagnostico_Provisorio, data_Internacao, medico_Solicitante from prontuario " + "order by " + coluna + " " + orderby); comando.Connection = minhaConexaoexao; reader = comando.ExecuteReader(); while (reader.Read()) { Prontuario prontuario = new Prontuario(); Endereco enderecos = new Endereco(); Telefone telefones = new Telefone(); Medico medico = new Medico(); prontuario.id = Convert.ToInt16(reader["id"]); prontuario.arq_Arquivo = Convert.ToString(reader["arq_Arquivo"]); prontuario.numero_Registro = Convert.ToString(reader["numero_Registro"]); prontuario.nome_Paciente = Convert.ToString(reader["nome_Paciente"]); prontuario.naturalidade = Convert.ToString(reader["naturalidade"]); prontuario.data_Nascimento = Convert.ToDateTime(reader["data_Nascimento"]); prontuario.sexo = Convert.ToString(reader["sexo"]); if (prontuario.sexo == "m") { prontuario.sexo = "Masculino"; } else { prontuario.sexo = "Feminino"; } prontuario.nome_Pai = Convert.ToString(reader["nome_Pai"]); prontuario.nome_Mae = Convert.ToString(reader["nome_Mae"]); prontuario.profissao = Convert.ToString(reader["profissao"]); prontuario.pessoa_Responsavel = Convert.ToString(reader["pessoa_Responsavel"]); prontuario.procedencia = Convert.ToString(reader["procedencia"]); prontuario.nome_Clinica_Diagnostico = Convert.ToString(reader["nome_Clinica_Diagnostico"]); prontuario.diagnostico = Convert.ToString(reader["diagnostico"]); prontuario.cid = Convert.ToString(reader["cid"]); prontuario.nome_Clinica_Internacao = Convert.ToString(reader["nome_Clinica_Internacao"]); prontuario.diagnostico_Provisorio = Convert.ToString(reader["diagnostico_Provisorio"]); prontuario.data_Internacao = Convert.ToDateTime(reader["data_Internacao"]); prontuario.medico_Solicitante = Convert.ToString(reader["medico_Solicitante"]); DataTable dt_Endereco = (DataTable)reader["endereco"]; string endereco = dt_Endereco.Rows[0]["endereco"].ToString(); string numero = dt_Endereco.Rows[0]["numero"].ToString(); string complemento = dt_Endereco.Rows[0]["complemento"].ToString(); string bairro = dt_Endereco.Rows[0]["bairro"].ToString(); string nome_Cidade = dt_Endereco.Rows[0]["nome_Cidade"].ToString(); string nome_Estado = dt_Endereco.Rows[0]["nome_Estado"].ToString(); enderecos.endereco = endereco; enderecos.numero = numero; enderecos.complemento = complemento; enderecos.bairro = bairro; enderecos.nome_Cidade = nome_Cidade; enderecos.nome_Estado = nome_Estado; DataTable dt_Telefones = (DataTable)reader["telefones"]; string[] dados_Telefone = { "", "", "" }; for (int i = 0; i < dt_Telefones.Rows.Count; i++) { dados_Telefone[i] = dt_Telefones.Rows[i]["numero_Telefone"].ToString(); } telefones.numero_TelefoneFixo = dados_Telefone[0].ToString(); telefones.numero_TelefoneCelular = dados_Telefone[1].ToString(); telefones.numero_TelefoneComercial = dados_Telefone[2].ToString(); DataTable dt_Medico = (DataTable)reader["medicos"]; string[] matriculas_Medico = { "", "", "", "" }; string[] nomes_Medico = { "", "", "", "" }; for (int i = 0; i < dt_Medico.Rows.Count; i++) { matriculas_Medico[i] = dt_Medico.Rows[i]["matricula_Medico"].ToString(); nomes_Medico[i] = dt_Medico.Rows[i]["nome_Medico"].ToString(); } medico.matricula_Medico1 = matriculas_Medico[0].ToString(); medico.matricula_Medico2 = matriculas_Medico[1].ToString(); medico.matricula_Medico3 = matriculas_Medico[2].ToString(); medico.matricula_Medico4 = matriculas_Medico[3].ToString(); medico.nome_Medico1 = nomes_Medico[0].ToString(); medico.nome_Medico2 = nomes_Medico[1].ToString(); medico.nome_Medico3 = nomes_Medico[2].ToString(); medico.nome_Medico4 = nomes_Medico[3].ToString(); lista.Add(prontuario); } } catch (LightBaseException e) { string erro = e.Message; } return(lista); } finally { minhaConexaoexao.Close(); } }
protected void ImageButtonCadastrar_Click(object sender, ImageClickEventArgs e) { string ext = ""; string id = ""; string arquivo = ""; int tamanho = 0; string nomeArquivoLBW = ""; //Obrigando o usuário a selecionar um arquivo. if (FileUploadArquivo.PostedFile.ContentLength == 0) { LabelErro.Text = "É necessário selecionar um arquivo"; } else { try { id = obterIdCadastrado(); nomeArquivoLBW = obterUltimoRegistroCadastrado(); } catch (Exception ex) { LabelErro.Text = ex.Message; } arquivo = FileUploadArquivo.PostedFile.FileName; nomeArquivo = System.IO.Path.GetFileName(arquivo); tamanho = nomeArquivo.Length; nomeArquivoLBW = nomeArquivoLBW + "_prontuario.pdf"; Prontuario prontuario = new Prontuario(); prontuario.arq_Arquivo = nomeArquivoLBW; prontuario.numero_Registro = TextBoxNumero_Registro.Text; prontuario.nome_Paciente = TextBoxNome_Paciente.Text; prontuario.naturalidade = TextBoxNaturalidade.Text; prontuario.data_Nascimento = Convert.ToDateTime(TextBoxData_Nascimento.Text); if (RadioButtonListSexo.SelectedIndex == 0) { prontuario.sexo = "m"; } else { prontuario.sexo = "f"; } prontuario.nome_Pai = TextBoxNome_Pai.Text; prontuario.nome_Mae = TextBoxNome_Mae.Text; prontuario.profissao = TextBoxProfissao.Text; prontuario.pessoa_Responsavel = TextBoxPessoa_Responsavel.Text; Endereco endereco = new Endereco(); endereco.endereco = TextBoxEndereco.Text; endereco.numero = TextBoxNumero.Text; endereco.complemento = TextBoxComplemento.Text; endereco.bairro = TextBoxBairro.Text; endereco.cep = TextBoxCEP.Text; endereco.nome_Cidade = TextBoxCidade.Text; endereco.nome_Estado = TextBoxEstado.Text; prontuario.endereco = endereco; Telefone telefone = new Telefone(); telefone.numero_TelefoneFixo = TextBoxTelefoneResidencial.Text; telefone.numero_TelefoneCelular = TextBoxTelefoneCelular.Text; telefone.numero_TelefoneComercial = TextBoxTelefoneComercial.Text; prontuario.telefone = telefone; prontuario.procedencia = TextBoxProcedencia.Text; prontuario.nome_Clinica_Diagnostico = TextBoxNome_Clinica_Diagnostico.Text; prontuario.diagnostico = TextBoxDiagnostico.Text; prontuario.cid = TextBoxCID.Text; Medico medico = new Medico(); medico.nome_Medico1 = TextBoxMedico_Solicitante1.Text; medico.nome_Medico2 = TextBoxMedico_Solicitante2.Text; medico.nome_Medico3 = TextBoxMedico_Solicitante3.Text; medico.nome_Medico4 = TextBoxMedico_Solicitante4.Text; prontuario.medico = medico; prontuario.nome_Clinica_Internacao = TextBoxNome_Clinica_Internacao.Text; prontuario.diagnostico_Provisorio = TextBoxDiagnostico_Provisorio.Text; prontuario.data_Internacao = Convert.ToDateTime(TextBoxData_Internacao.Text); prontuario.medico_Solicitante = TextBoxNome_Medico.Text; Adaptador adpt = new Adaptador(); try { adpt.InserirProntuario(prontuario);//disparando o método de inserção de prontuário. } catch (Exception ex) { LabelErro.Text = ex.Message; } Versao versao = new Versao(); //classe que trata os dados do arquivo que será anexado. FileUploadArquivo.PostedFile.SaveAs(Settings.Default.CaminhoDoRepositorioProntuario + nomeArquivoLBW); //salvando um cópia do arquivo que será usado como repositório. versao.CaminhoDoArquivo = Settings.Default.CaminhoDoRepositorioProntuario; versao.Extensao = ext; versao.NomeDoArquivo = nomeArquivoLBW; versao.Id = Convert.ToInt32(obterIdCadastrado()); Indexador indexador = new Indexador(); indexador.Indexe(versao);//método que prepara o arquivo para ser indexado. mensagem = "Registro inserido com sucesso"; Session.Add("mensagem", mensagem); Server.Transfer("Listar.aspx"); } }
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { int index; usuarioConectado = (String)Session["usuario"]; senhaConectado = (String)Session["senha"]; GoldenAccess goldenAccess = new GoldenAccess("http://localhost:3271/GoldenAccess.soap"); User usuario = new User(usuarioConectado, senhaConectado); try { usuario = goldenAccess.Authenticate(usuarioConectado, senhaConectado); } catch (Exception ex) { LabelErro.Text = ex.Message; } if (usuario.IsAuthenticated && !usuario.Disabled) { if (usuario.HasGroup("PTRIOADM")) { if (e.CommandName == "Abrir") { string nome = ""; try { index = Convert.ToInt32(e.CommandArgument) - (GridView1.PageSize * GridView1.PageIndex); int id = Convert.ToInt32(GridView1.DataKeys[index].Value); Adaptador adpt = new Adaptador(); Prontuario prontuario = new Prontuario(); Medico medico = new Medico(); prontuario = adpt.obterProntuarioPorId(id.ToString()); medico = prontuario.medico; nome = prontuario.arq_Arquivo; //diretorio = Server.MapPath(Settings.Default.CaminhoDoRepositorioProntuario); diretorio = Server.MapPath("~\\arquivos\\"); Medico medicosSolicitantes = new Medico(); medicosSolicitantes = medicoParticipante(prontuario.numero_Registro, usuarioConectado); if(medicosSolicitantes.matricula_Medico1 == medico.matricula_Medico1 || medicosSolicitantes.matricula_Medico2 == medico.matricula_Medico2 || medicosSolicitantes.matricula_Medico3 == medico.matricula_Medico3 || medicosSolicitantes.matricula_Medico4 == medico.matricula_Medico4 || usuario.Login == "admpront") { if (Directory.Exists(diretorio)) { Response.Clear(); Response.ClearHeaders(); Response.AddHeader("Content-Type", "application/pdf"); Response.AddHeader("Content-Disposition", "attachment; filename=" + nome); FileStream file = new FileStream(diretorio + nome, System.IO.FileMode.Open, FileAccess.Read); byte[] bytes = new byte[Convert.ToInt32(file.Length)]; file.Read(bytes, 0, bytes.Length); file.Close(); Response.OutputStream.Write(bytes, 0, bytes.GetUpperBound(0)); Response.Flush(); Response.Close(); } else { LabelErro.Text = "Diretório " + diretorio + " não encontrado"; } } else { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse prontuário"; } } catch (Exception ex) { LabelErro.Text = ex.Message; } } if (e.CommandName == "Alterar") { index = Convert.ToInt32(e.CommandArgument) - (GridView1.PageSize * GridView1.PageIndex); int id = Convert.ToInt32(GridView1.DataKeys[index].Value); Prontuario prontuario = new Prontuario(); Adaptador adpt = new Adaptador(); prontuario = adpt.obterProntuarioPorId(id.ToString()); Medico medico = new Medico(); Medico medicosSolicitantes = new Medico(); medicosSolicitantes = medicoParticipante(prontuario.numero_Registro, usuarioConectado); if (medicosSolicitantes.matricula_Medico1 == medico.matricula_Medico1 || medicosSolicitantes.matricula_Medico2 == medico.matricula_Medico2 || medicosSolicitantes.matricula_Medico3 == medico.matricula_Medico3 || medicosSolicitantes.matricula_Medico4 == medico.matricula_Medico4 || usuario.Login == "admpront") { Session.Add("id", id.ToString()); Server.Transfer("alterarpaciente.aspx"); } else { LabelErro.Text = "Você não possui permissão para " + e.CommandName + " esse prontuário"; } } if (e.CommandName == "Excluir") { index = Convert.ToInt32(e.CommandArgument) - (GridView1.PageSize * GridView1.PageIndex); ; int id = Convert.ToInt32(GridView1.DataKeys[index].Value); Medico medico = new Medico(); Adaptador adpt = new Adaptador(); Prontuario prontuario = new Prontuario(); prontuario = adpt.obterProntuarioPorId(id.ToString()); Medico medicosSolicitantes = new Medico(); medicosSolicitantes = medicoParticipante(prontuario.numero_Registro, usuarioConectado); if (medicosSolicitantes.matricula_Medico1 == medico.matricula_Medico1 || medicosSolicitantes.matricula_Medico2 == medico.matricula_Medico2 || medicosSolicitantes.matricula_Medico3 == medico.matricula_Medico3 || medicosSolicitantes.matricula_Medico4 == medico.matricula_Medico4 || usuario.Login == "admpront") { string nomeArquivoAntigo = prontuario.arq_Arquivo; if (nomeArquivoAntigo != null) { string diretorioRemover = Settings.Default.CaminhoDoRepositorioProntuario + nomeArquivoAntigo; FileInfo arquivoAntigo = new FileInfo(diretorioRemover); arquivoAntigo.Delete(); } adpt.RemoverProntuario(id); GridView1.DataSource = adpt.Todos(); GridView1.DataBind(); } else { LabelErro.Text = "Você não possui permissão para " + e.CommandName + " esse prontuário"; } } } else if (usuario.HasGroup("PTRIOLIM")) { if (e.CommandName == "Abrir") { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse prontuário."; //string nome = ""; //try //{ // index = Convert.ToInt32(e.CommandArgument); // int id = Convert.ToInt32(GridView1.DataKeys[index].Value); // Adaptador adpt = new Adaptador(); // Prontuario processo = new Prontuario(); // processo = adpt.obterProntuarioPorId(id.ToString()); // nome = processo.arq_Arquivo; // diretorio = Server.MapPath(Settings.Default.CaminhoDoRepositorioProntuario); // if (Directory.Exists(diretorio)) // { // Response.Clear(); // Response.ClearHeaders(); // Response.AddHeader("Content-Type", "application/pdf"); // Response.AddHeader("Content-Disposition", "attachment; filename=" + nome); // FileStream file = new FileStream(diretorio + nome, System.IO.FileMode.Open, FileAccess.Read); // byte[] bytes = new byte[Convert.ToInt32(file.Length)]; // file.Read(bytes, 0, bytes.Length); // file.Close(); // Response.OutputStream.Write(bytes, 0, bytes.GetUpperBound(0)); // Response.Flush(); // Response.Close(); // } // else // { // LabelErro.Text = "Diretório " + diretorio + " não encontrado"; // } //} //catch (Exception ex) //{ // LabelErro.Text = ex.Message; //} } if (e.CommandName == "Alterar") { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse registro."; } if (e.CommandName == "Excluir") { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse registro."; } } else { LabelErro.Text = "Você não tem permissão para " + e.CommandName + " esse registro."; } } else { LabelErro.Text = "Você não é usuário do sistema."; } }
protected void ImageButtonCadastrar_Click(object sender, ImageClickEventArgs e) { string ext = ""; string id = ""; string arquivo = ""; int tamanho = 0; string nomeArquivoLBW = ""; //Obrigando o usuário a selecionar um arquivo. if (FileUploadArquivo.PostedFile.ContentLength == 0) { LabelErro.Text = "É necessário selecionar um arquivo"; } else { try { id = obterIdCadastrado(); nomeArquivoLBW = obterUltimoRegistroCadastrado(); } catch (Exception ex) { LabelErro.Text = ex.Message; } arquivo = FileUploadArquivo.PostedFile.FileName; nomeArquivo = System.IO.Path.GetFileName(arquivo); tamanho = nomeArquivo.Length; nomeArquivoLBW = nomeArquivoLBW + "_prontuario.pdf"; Prontuario prontuario = new Prontuario(); prontuario.arq_Arquivo = nomeArquivoLBW; prontuario.numero_Registro = TextBoxNumero_Registro.Text; prontuario.nome_Paciente = TextBoxNome_Paciente.Text; prontuario.naturalidade = TextBoxNaturalidade.Text; prontuario.data_Nascimento = Convert.ToDateTime(TextBoxData_Nascimento.Text); if (RadioButtonListSexo.SelectedIndex == 0) { prontuario.sexo = "m"; } else { prontuario.sexo = "f"; } prontuario.nome_Pai = TextBoxNome_Pai.Text; prontuario.nome_Mae = TextBoxNome_Mae.Text; prontuario.profissao = TextBoxProfissao.Text; prontuario.pessoa_Responsavel = TextBoxPessoa_Responsavel.Text; Endereco endereco = new Endereco(); endereco.endereco = TextBoxEndereco.Text; endereco.numero = TextBoxNumero.Text; endereco.complemento = TextBoxComplemento.Text; endereco.bairro = TextBoxBairro.Text; endereco.cep = TextBoxCEP.Text; endereco.nome_Cidade = TextBoxCidade.Text; endereco.nome_Estado = TextBoxEstado.Text; prontuario.endereco = endereco; Telefone telefone = new Telefone(); telefone.numero_TelefoneFixo = TextBoxTelefoneResidencial.Text; telefone.numero_TelefoneCelular = TextBoxTelefoneCelular.Text; telefone.numero_TelefoneComercial = TextBoxTelefoneComercial.Text; prontuario.telefone = telefone; prontuario.procedencia = TextBoxProcedencia.Text; prontuario.nome_Clinica_Diagnostico = TextBoxNome_Clinica_Diagnostico.Text; prontuario.diagnostico = TextBoxDiagnostico.Text; prontuario.cid = TextBoxCID.Text; Medico medico = new Medico(); medico.nome_Medico1 = TextBoxMedico_Solicitante1.Text; medico.nome_Medico2 = TextBoxMedico_Solicitante2.Text; medico.nome_Medico3 = TextBoxMedico_Solicitante3.Text; medico.nome_Medico4 = TextBoxMedico_Solicitante4.Text; prontuario.medico = medico; prontuario.nome_Clinica_Internacao = TextBoxNome_Clinica_Internacao.Text; prontuario.diagnostico_Provisorio = TextBoxDiagnostico_Provisorio.Text; prontuario.data_Internacao = Convert.ToDateTime(TextBoxData_Internacao.Text); prontuario.medico_Solicitante = TextBoxNome_Medico.Text; Adaptador adpt = new Adaptador(); try { adpt.InserirProntuario(prontuario);//disparando o método de inserção de prontuário. } catch (Exception ex) { LabelErro.Text = ex.Message; } Versao versao = new Versao();//classe que trata os dados do arquivo que será anexado. FileUploadArquivo.PostedFile.SaveAs(Settings.Default.CaminhoDoRepositorioProntuario + nomeArquivoLBW);//salvando um cópia do arquivo que será usado como repositório. versao.CaminhoDoArquivo = Settings.Default.CaminhoDoRepositorioProntuario; versao.Extensao = ext; versao.NomeDoArquivo = nomeArquivoLBW; versao.Id = Convert.ToInt32(obterIdCadastrado()); Indexador indexador = new Indexador(); indexador.Indexe(versao);//método que prepara o arquivo para ser indexado. mensagem = "Registro inserido com sucesso"; Session.Add("mensagem", mensagem); Server.Transfer("Listar.aspx"); } }
/* * Método que retorna todos os registro da base. */ public List<Prontuario> Todos() { List<Prontuario> lista = new List<Prontuario>(); IDataReader reader; IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;UDB=defudb;server=localhost"); try { minhaConexao.Open(); IDbCommand comando = new LightBaseCommand("select id, arq_Arquivo, numero_Registro, nome_Paciente, naturalidade, data_Nascimento, " + "sexo, nome_Pai, nome_Mae, profissao, pessoa_Responsavel, endereco.endereco, " + "endereco.numero, endereco.complemento, endereco.bairro, endereco.nome_Cidade, " + "endereco.nome_Estado, telefones.numero_Telefone, procedencia, nome_Clinica_Diagnostico, " + "diagnostico, cid, medicos.matricula_Medico, medicos.nome_Medico, nome_Clinica_Internacao, diagnostico_Provisorio, " + "data_Internacao, medico_Solicitante from prontuario"); comando.Connection = minhaConexao; reader = comando.ExecuteReader(); while (reader.Read()) { Prontuario prontuario = new Prontuario(); Endereco enderecos = new Endereco(); Telefone telefones = new Telefone(); Medico medico = new Medico(); prontuario.id = Convert.ToInt16(reader["id"]); prontuario.arq_Arquivo = Convert.ToString(reader["arq_Arquivo"]); prontuario.numero_Registro = Convert.ToString(reader["numero_Registro"]); prontuario.nome_Paciente = Convert.ToString(reader["nome_Paciente"]); prontuario.naturalidade = Convert.ToString(reader["naturalidade"]); prontuario.data_Nascimento = Convert.ToDateTime(reader["data_Nascimento"]); prontuario.sexo = Convert.ToString(reader["sexo"]); //Tratamento do campo sexo, pois sempre é grava um caractere que identifica se é homem ou mulher. if (prontuario.sexo == "m") { prontuario.sexo = "Masculino"; } else { prontuario.sexo = "Feminino"; } prontuario.nome_Pai = Convert.ToString(reader["nome_Pai"]); prontuario.nome_Mae = Convert.ToString(reader["nome_Mae"]); prontuario.profissao = Convert.ToString(reader["profissao"]); prontuario.pessoa_Responsavel = Convert.ToString(reader["pessoa_Responsavel"]); prontuario.procedencia = Convert.ToString(reader["procedencia"]); prontuario.nome_Clinica_Diagnostico = Convert.ToString(reader["nome_Clinica_Diagnostico"]); prontuario.diagnostico = Convert.ToString(reader["diagnostico"]); prontuario.cid = Convert.ToString(reader["cid"]); prontuario.nome_Clinica_Internacao = Convert.ToString(reader["nome_Clinica_Internacao"]); prontuario.diagnostico_Provisorio = Convert.ToString(reader["diagnostico_Provisorio"]); prontuario.data_Internacao = Convert.ToDateTime(reader["data_Internacao"]); prontuario.medico_Solicitante = Convert.ToString(reader["medico_Solicitante"]); DataTable dt_Endereco = (DataTable)reader["endereco"]; string endereco = dt_Endereco.Rows[0]["endereco"].ToString(); string numero = dt_Endereco.Rows[0]["numero"].ToString(); string complemento = dt_Endereco.Rows[0]["complemento"].ToString(); string bairro = dt_Endereco.Rows[0]["bairro"].ToString(); string nome_Cidade = dt_Endereco.Rows[0]["nome_Cidade"].ToString(); string nome_Estado = dt_Endereco.Rows[0]["nome_Estado"].ToString(); enderecos.endereco = endereco; enderecos.numero = numero; enderecos.complemento = complemento; enderecos.bairro = bairro; enderecos.nome_Cidade = nome_Cidade; enderecos.nome_Estado = nome_Estado; DataTable dt_Telefones = (DataTable)reader["telefones"]; string[] dados_Telefone = { "", "", "" }; for (int i = 0; i < dt_Telefones.Rows.Count; i++) { dados_Telefone[i] = dt_Telefones.Rows[i]["numero_Telefone"].ToString(); } telefones.numero_TelefoneFixo = dados_Telefone[0].ToString(); telefones.numero_TelefoneCelular = dados_Telefone[1].ToString(); telefones.numero_TelefoneComercial = dados_Telefone[2].ToString(); DataTable dt_Medico = (DataTable)reader["medicos"]; string[] matriculas_Medico = { "", "", "", "" }; string[] nomes_Medico = { "", "", "", "" }; for (int i = 0; i < dt_Medico.Rows.Count; i++) { matriculas_Medico[i] = dt_Medico.Rows[i]["matricula_Medico"].ToString(); nomes_Medico[i] = dt_Medico.Rows[i]["nome_Medico"].ToString(); } medico.matricula_Medico1 = matriculas_Medico[0].ToString(); medico.matricula_Medico2 = matriculas_Medico[1].ToString(); medico.matricula_Medico3 = matriculas_Medico[2].ToString(); medico.matricula_Medico4 = matriculas_Medico[3].ToString(); medico.nome_Medico1 = nomes_Medico[0].ToString(); medico.nome_Medico2 = nomes_Medico[1].ToString(); medico.nome_Medico3 = nomes_Medico[2].ToString(); medico.nome_Medico4 = nomes_Medico[3].ToString(); lista.Add(prontuario); } return lista; } finally { minhaConexao.Close(); } }
/* * Métodos que realiza uma consulta através de um campo específico. */ public List<Prontuario> PesquisarCampos(string comando) { List<Prontuario> lista = new List<Prontuario>(); IDataReader reader; IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;UDB=defudb;server=localhost"); try { minhaConexao.Open(); try { IDbCommand meuComando = new LightBaseCommand(comando); meuComando.Connection = minhaConexao; reader = meuComando.ExecuteReader(); while (reader.Read()) { Prontuario prontuario = new Prontuario(); Endereco enderecos = new Endereco(); Telefone telefones = new Telefone(); Medico medico = new Medico(); prontuario.id = Convert.ToInt16(reader["id"]); prontuario.arq_Arquivo = Convert.ToString(reader["arq_Arquivo"]); prontuario.numero_Registro = Convert.ToString(reader["numero_Registro"]); prontuario.nome_Paciente = Convert.ToString(reader["nome_Paciente"]); prontuario.naturalidade = Convert.ToString(reader["naturalidade"]); prontuario.data_Nascimento = Convert.ToDateTime(reader["data_Nascimento"]); prontuario.sexo = Convert.ToString(reader["sexo"]); prontuario.nome_Pai = Convert.ToString(reader["nome_Pai"]); prontuario.nome_Mae = Convert.ToString(reader["nome_Mae"]); prontuario.profissao = Convert.ToString(reader["profissao"]); prontuario.pessoa_Responsavel = Convert.ToString(reader["pessoa_Responsavel"]); prontuario.procedencia = Convert.ToString(reader["procedencia"]); prontuario.nome_Clinica_Diagnostico = Convert.ToString(reader["nome_Clinica_Diagnostico"]); prontuario.diagnostico = Convert.ToString(reader["diagnostico"]); prontuario.cid = Convert.ToString(reader["cid"]); prontuario.nome_Clinica_Internacao = Convert.ToString(reader["nome_Clinica_Internacao"]); prontuario.diagnostico_Provisorio = Convert.ToString(reader["diagnostico_Provisorio"]); prontuario.data_Internacao = Convert.ToDateTime(reader["data_Internacao"]); prontuario.medico_Solicitante = Convert.ToString(reader["medico_Solicitante"]); DataTable dt_Endereco = (DataTable)reader["endereco"]; string endereco = dt_Endereco.Rows[0]["endereco"].ToString(); string numero = dt_Endereco.Rows[0]["numero"].ToString(); string complemento = dt_Endereco.Rows[0]["complemento"].ToString(); string bairro = dt_Endereco.Rows[0]["bairro"].ToString(); string nome_Cidade = dt_Endereco.Rows[0]["nome_Cidade"].ToString(); string nome_Estado = dt_Endereco.Rows[0]["nome_Estado"].ToString(); enderecos.endereco = endereco; enderecos.numero = numero; enderecos.complemento = complemento; enderecos.bairro = bairro; enderecos.nome_Cidade = nome_Cidade; enderecos.nome_Estado = nome_Estado; DataTable dt_Telefones = (DataTable)reader["telefones"]; string[] dados_Telefone = { "", "", "" }; for (int i = 0; i < dt_Telefones.Rows.Count; i++) { dados_Telefone[i] = dt_Telefones.Rows[i]["numero_Telefone"].ToString(); } telefones.numero_TelefoneFixo = dados_Telefone[0].ToString(); telefones.numero_TelefoneCelular = dados_Telefone[1].ToString(); telefones.numero_TelefoneComercial = dados_Telefone[2].ToString(); DataTable dt_Medico = (DataTable)reader["medicos"]; string[] matriculas_Medico = { "", "", "", "" }; string[] nomes_Medico = { "", "", "", "" }; for (int i = 0; i < dt_Medico.Rows.Count; i++) { matriculas_Medico[i] = dt_Medico.Rows[i]["matricula_Medico"].ToString(); nomes_Medico[i] = dt_Medico.Rows[i]["nome_Medico"].ToString(); } medico.matricula_Medico1 = matriculas_Medico[0].ToString(); medico.matricula_Medico2 = matriculas_Medico[1].ToString(); medico.matricula_Medico3 = matriculas_Medico[2].ToString(); medico.matricula_Medico4 = matriculas_Medico[3].ToString(); medico.nome_Medico1 = nomes_Medico[0].ToString(); medico.nome_Medico2 = nomes_Medico[1].ToString(); medico.nome_Medico3 = nomes_Medico[2].ToString(); medico.nome_Medico4 = nomes_Medico[3].ToString(); lista.Add(prontuario); } } catch (LightBaseException e) { string erro = e.Message; } return lista; } finally { minhaConexao.Close(); } }
/* * Método que vai consultar um prontuário através de seu identificador. */ public Prontuario obterProntuarioPorId(string valor) { IDataReader reader; IDbConnection minhaConexao = new LightBaseConnection("user=lbw;password=lbw;udb=defudb;server=localhost"); try { minhaConexao.Open(); Prontuario prontuario = new Prontuario(); try { IDbCommand comando = new LightBaseCommand("select id, arq_Arquivo, numero_Registro, nome_Paciente, naturalidade, data_Nascimento," + "sexo, nome_Pai, nome_Mae, profissao, pessoa_Responsavel, endereco.endereco, " + "endereco.numero, endereco.complemento, endereco.bairro, endereco.nome_Cidade, " + "endereco.nome_Estado, telefones.numero_Telefone, procedencia, nome_Clinica_Diagnostico, " + "diagnostico, cid, medicos.matricula_Medico, medicos.nome_Medico, nome_Clinica_Internacao, " + "diagnostico_Provisorio, data_Internacao, medico_Solicitante from prontuario where id="+valor); comando.Connection = minhaConexao; reader = comando.ExecuteReader(); while (reader.Read()) { Endereco enderecos = new Endereco(); Telefone telefones = new Telefone(); Medico medico = new Medico(); prontuario.id = Convert.ToInt16(reader["id"]); prontuario.arq_Arquivo = Convert.ToString(reader["arq_Arquivo"]); prontuario.numero_Registro = Convert.ToString(reader["numero_Registro"]); prontuario.nome_Paciente = Convert.ToString(reader["nome_Paciente"]); prontuario.naturalidade = Convert.ToString(reader["naturalidade"]); prontuario.data_Nascimento = Convert.ToDateTime(reader["data_Nascimento"]); prontuario.sexo = Convert.ToString(reader["sexo"]); prontuario.nome_Pai = Convert.ToString(reader["nome_Pai"]); prontuario.nome_Mae = Convert.ToString(reader["nome_Mae"]); prontuario.profissao = Convert.ToString(reader["profissao"]); prontuario.pessoa_Responsavel = Convert.ToString(reader["pessoa_Responsavel"]); prontuario.procedencia = Convert.ToString(reader["procedencia"]); prontuario.nome_Clinica_Diagnostico = Convert.ToString(reader["nome_Clinica_Diagnostico"]); prontuario.diagnostico = Convert.ToString(reader["diagnostico"]); prontuario.cid = Convert.ToString(reader["cid"]); prontuario.nome_Clinica_Internacao = Convert.ToString(reader["nome_Clinica_Internacao"]); prontuario.diagnostico_Provisorio = Convert.ToString(reader["diagnostico_Provisorio"]); prontuario.data_Internacao = Convert.ToDateTime(reader["data_Internacao"]); prontuario.medico_Solicitante = Convert.ToString(reader["medico_Solicitante"]); //Tratamento do campo multivalorado Endereco DataTable dt_Endereco = (DataTable)reader["endereco"]; string endereco = dt_Endereco.Rows[0]["endereco"].ToString(); string numero = dt_Endereco.Rows[0]["numero"].ToString(); string complemento = dt_Endereco.Rows[0]["complemento"].ToString(); string bairro = dt_Endereco.Rows[0]["bairro"].ToString(); string nome_Cidade = dt_Endereco.Rows[0]["nome_Cidade"].ToString(); string nome_Estado = dt_Endereco.Rows[0]["nome_Estado"].ToString(); enderecos.endereco = endereco; enderecos.numero = numero; enderecos.complemento = complemento; enderecos.bairro = bairro; enderecos.nome_Cidade = nome_Cidade; enderecos.nome_Estado = nome_Estado; //Tratamento do campo multivalorado Telefones. DataTable dt_Telefones = (DataTable)reader["telefones"]; string[] dados_Telefone = { "", "", "" }; for (int i = 0; i < dt_Telefones.Rows.Count; i++) { dados_Telefone[i] = dt_Telefones.Rows[i]["numero_Telefone"].ToString(); } telefones.numero_TelefoneFixo = dados_Telefone[0].ToString(); telefones.numero_TelefoneCelular = dados_Telefone[1].ToString(); telefones.numero_TelefoneComercial = dados_Telefone[2].ToString(); //Tratamento do campo multivalorado Médicos. DataTable dt_Medico = (DataTable)reader["medicos"]; string[] matriculas_Medico = { "", "", "", "" }; string[] nomes_Medico = { "", "", "", "" }; for (int i = 0; i < dt_Medico.Rows.Count; i++) { matriculas_Medico[i] = dt_Medico.Rows[i]["matricula_Medico"].ToString(); nomes_Medico[i] = dt_Medico.Rows[i]["nome_Medico"].ToString(); } medico.matricula_Medico1 = matriculas_Medico[0].ToString(); medico.matricula_Medico2 = matriculas_Medico[1].ToString(); medico.matricula_Medico3 = matriculas_Medico[2].ToString(); medico.matricula_Medico4 = matriculas_Medico[3].ToString(); medico.nome_Medico1 = nomes_Medico[0].ToString(); medico.nome_Medico2 = nomes_Medico[1].ToString(); medico.nome_Medico3 = nomes_Medico[2].ToString(); medico.nome_Medico4 = nomes_Medico[3].ToString(); prontuario.medico = medico; prontuario.endereco = enderecos; prontuario.telefone = telefones; } } catch (LightBaseException e) { string erro = e.Message; } return prontuario; } finally { minhaConexao.Close(); } }