public TurnoAtencionDetallePractica(Plan p, TurnoAtencionDetalle det)
        {
            InitializeComponent();
            plan = p;
            cargarCombo();
            detalle = det;
            practica = new Practica();

            if (detalle.Practica.Id != 0)
            {
                practica = detalle.Practica;
                txtAnestesista.Text = practica.Anestesista.ToString();
                txtAyudante.Text = practica.Ayudante.ToString();
                txtCodigo.Text = practica.Codigo;
                txtDescripcion.Text = practica.Descripcion;
                txtEspecialista.Text = practica.Especialista.ToString();
                txtGastos.Text = practica.Gastos.ToString();
                cmbFormaCalc.SelectedItem = practica.FormaCalculo;
                cmbTipoNomen.SelectedItem = practica.TipoNomenclador;
                txtCantidad.Focus();
            }
        }
 private void dgPracticas_SelectionChanged(object sender, EventArgs e)
 {
     if (listaDetalleAtencion.Count > 0)
     {
         if (planElegido.ObraSocial.UrlAutorizacionOnline == "")
         {
             detalleAtencion = new TurnoAtencionDetalle();
             detalleAtencion = listaDetalleAtencion.ElementAt<TurnoAtencionDetalle>(dgPracticas.CurrentRow.Index);
             btnAutorizar.Enabled = !detalleAtencion.Autorizado;
         }
     }
 }
 private void btnEliminar_Click(object sender, EventArgs e)
 {
     if (listaDetalleAtencion.Count > 0)
     {
         if (!listaDetalleAtencion.ElementAt<TurnoAtencionDetalle>(dgPracticas.CurrentRow.Index).Autorizado)
         {
             turnoAtencionDetallePractica = new TurnoAtencionDetallePractica(planElegido, listaDetalleAtencion.ElementAt<TurnoAtencionDetalle>(dgPracticas.CurrentRow.Index));
             turnoAtencionDetallePractica.ShowDialog();
             if (turnoAtencionDetallePractica.Detalle != null)
             {
                 detalleAtencion = new TurnoAtencionDetalle();
                 detalleAtencion = turnoAtencionDetallePractica.Detalle;
                 listaDetalleAtencion.Add(detalleAtencion);
             }
             CargarGrillaDetalle();
         }
         else
         {
             MessageBox.Show("La práctica que intenta eliminar ya está facturada","Atención");
         }
     }
 }
 private void btnAgregar_Click(object sender, EventArgs e)
 {
     if (txtOS.Text != "")
     {
         turnoAtencionDetallePractica = new TurnoAtencionDetallePractica(planElegido, new TurnoAtencionDetalle());
         turnoAtencionDetallePractica.ShowDialog();
         if (turnoAtencionDetallePractica.Detalle != null)
         {
             detalleAtencion = new TurnoAtencionDetalle();
             detalleAtencion = turnoAtencionDetallePractica.Detalle;
             detalleAtencion.Autorizado = false;
             listaDetalleAtencion.Add(detalleAtencion);
         }
         CargarGrillaDetalle();
     }
 }
        public void CargarGrillaDetalle()
        {
            dgPracticas.Rows.Clear();
            for (int i = 0; i < listaDetalleAtencion.Count; i++)
            {
                detalleAtencion = new TurnoAtencionDetalle();

                detalleAtencion = listaDetalleAtencion[i];
                detalleAtencion.Renglon = i + 1;
                detalleAtencion.Presentado = false;
                dgPracticas.Rows.Add("",detalleAtencion.Renglon, detalleAtencion.Practica.Descripcion, detalleAtencion.Cantidad, detalleAtencion.Practica.Especialista.ToString(), detalleAtencion.Practica.Gastos.ToString(), detalleAtencion.Practica.Anestesista.ToString(), detalleAtencion.Practica.Ayudante.ToString());

                if(detalleAtencion.Autorizado)
                { dgPracticas.Rows[i].Cells[0].Style.BackColor = Color.LightGreen; }
                else{dgPracticas.Rows[i].Cells[0].Style.BackColor=Color.LightSalmon;}
            }
            HablitarBotones();
        }
        public TurnoAtencionDetalle buscarAtencionDet(int id)
        {
            TurnoAtencionDetalle ta = null;

            IList<TurnoAtencionDetalle> resultados = ConexionBD.getSession().CreateCriteria(typeof(TurnoAtencionDetalle)).Add(Expression.Eq("Id", id)).List<TurnoAtencionDetalle>();
            if (resultados.Count > 0)
            {
                ta = new TurnoAtencionDetalle();
                ta = resultados.ElementAt<TurnoAtencionDetalle>(0);
            }

            return ta;
        }
        public void BuscarDetalles(TurnoAtencion atencion)
        {
            double nImporte = 0;
            string afiliado = "";
            string nroAfiliado = "";
            string nroAutorizacion = "";
            gestorAutorizacion = new GestorAutorizacion();
            Autorizacion autorizacion = new Autorizacion();

            for (int i = 0; i < atencion.AtencionDetalle.Count; i++)
            {
                afiliado = "";
                nroAfiliado = "";
                nroAutorizacion = "";
                atenciondet = new TurnoAtencionDetalle();
                atenciondet = atencion.AtencionDetalle[i];

                if (!atenciondet.Presentado)
                {
                    listaDetalle.Add(atenciondet);
                    nImporte = listaDetalle[i].Practica.Anestesista + listaDetalle[i].Practica.Ayudante + listaDetalle[i].Practica.Especialista + listaDetalle[i].Practica.Gastos;
                    afiliado = atencion.Turno.Paciente.Apellidos + " " + atencion.Turno.Paciente.Nombres;
                    nroAfiliado = atencion.NumeroAfiliado;
                    if (atenciondet.Autorizado)
                    {
                        autorizacion = gestorAutorizacion.buscar(atencion.Turno);
                        nroAutorizacion = autorizacion.Detalle[i].NumeroAutorizacion;
                    }
                    dgPrestaciones.Rows.Add(false, atencion.Turno.Fecha.ToShortDateString(), listaDetalle[i].Practica.Descripcion, listaDetalle[i].Cantidad, nImporte, afiliado, nroAfiliado, atencion.NumeroOrden, atencion.NumeroAutorizacion, nroAutorizacion,listaDetalle[i].Id);
                }
            }
        }
 public void GuardarDetalles()
 {
     listapresentaciondet = new List<PresentacionAtencion>();
     for (int i=0; i < dgPrestaciones.Rows.Count; i++)
     {
         if (bool.Parse(dgPrestaciones.Rows[i].Cells[0].Value.ToString()) == true)
         {
             presentaciondet = new PresentacionAtencion();
             atenciondet = new TurnoAtencionDetalle();
             atenciondet = gestorTurno.buscarAtencionDet(int.Parse(dgPrestaciones.Rows[i].Cells[10].Value.ToString()));
             atenciondet.Presentado = true;
             presentaciondet.Atencion = atenciondet;
             listapresentaciondet.Add(presentaciondet);
         }
     }
 }
 private void btnAceptar_Click(object sender, EventArgs e)
 {
     detalle = new TurnoAtencionDetalle();
     detalle.Practica = practica;
     detalle.Cantidad = int.Parse(txtCantidad.Text);
     Dispose();
 }