示例#1
0
        private void picBtnImprimir_Click(object sender, EventArgs e)
        {
            Recetario recetario = new Recetario();

            if (diagnosticoService.Buscar(txtCodigoRecetario.Text) == null)
            {
                MessageBox.Show("No existe un diagnostico asociado a este recetario", " :C ", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                Posologia posologia = new Posologia();
                Persona   persona   = new Persona();
                recetario.Codigo       = txtCodigoRecetario.Text;
                persona.Identificacion = txtIDPR.Text;
                persona.Nombres        = txtNPR.Text;
                recetario.Fecha        = DateTime.Parse(dpFecha.Text);
                Medicamento medicamento = new Medicamento();
                posologia.AgregarMedicamento(medicamento);

                for (int fila = 0; fila < dtgvMedicinas.Rows.Count - 1; fila++)
                {
                    posologia.Medicamento.Nombre = dtgvMedicinas.Rows[fila].Cells[0].Value.ToString();
                    posologia.CantidadDias       = dtgvMedicinas.Rows[fila].Cells[1].Value.ToString();
                    posologia.IntervaloHoras     = dtgvMedicinas.Rows[fila].Cells[2].Value.ToString();
                    posologia.Cantidad           = dtgvMedicinas.Rows[fila].Cells[3].Value.ToString();
                    recetario.AgregarPosologia(posologia);
                }

                MessageBox.Show(recetarioService.Guardar(recetario, txtCodigoRecetario.Text));
            }

            generar.FillPDF("Recetario.pdf", recetario.Posologias, persona, recetario.Codigo);
        }
        public IList <Recetario> BuscarRecetario(string id, IList <Posologia> posologias)
        {
            IList <Recetario> recetarios = new List <Recetario>();

            using (var command = _connection.CreateCommand())
            {
                command.CommandText = "PAQUETE_HISTORIA.ConsultarHistoriaDiagnostico";
                command.CommandType = CommandType.StoredProcedure;
                command.Parameters.Add("historias", OracleDbType.RefCursor).Direction = ParameterDirection.Output;
                command.Parameters.Add("x_persona", OracleDbType.Varchar2).Value      = id;
                Reader = command.ExecuteReader();
                while (Reader.Read())
                {
                    Recetario recetario = MAPrecetario(Reader);
                    foreach (var item in posologias)
                    {
                        if (item.CodRecetario == recetario.Codigo)
                        {
                            recetario.AgregarPosologia(item);
                        }
                    }
                    recetarios.Add(recetario);
                }
            }
            return(recetarios);
        }