Esempio n. 1
0
        protected void AgregarButton_Click(object sender, EventArgs e)
        {
            Paciente paciente = LlenaClase();


            Enums.Resultado resultado = (Enums.Resultado)ResultadoDropDownList.SelectedIndex;
            AnalisisDetalle detalle   = new AnalisisDetalle();

            detalle.Id_Tipo_Analisis = Utilidades.Utilidades.ToInt(TipoAnalisisDropDownList.SelectedValue);
            detalle.Id_Paciente      = paciente.Id_Paciente;
            detalle.Fecha            = DateTime.Now;
            detalle.Resultado        = resultado;
            ListaAnalisisDetalle.Add(detalle);
            BindGrid();
            ResultadoDropDownList.SelectedIndex = 0;
        }
        protected void BotonAgregarDetalle_Click(object sender, EventArgs e)
        {
            Analisis analisis = new Analisis();

            analisis = (Analisis)ViewState["Analisis"];
            int             idAnalisis   = Soporte.ToInt(IdTextBox.Text);
            int             idPaciente   = Soporte.ToInt(PacienteDropDownList.SelectedValue);
            int             idTipo       = Soporte.ToInt(TipoAnalisisDropDownList.SelectedValue);
            TipoAnalisis    tipoAnalisis = new RepositorioBase <TipoAnalisis>().Buscar(idTipo);
            AnalisisDetalle detalle      = new AnalisisDetalle(0, idAnalisis, idPaciente, idTipo, DateTime.Now, tipoAnalisis.Precio, tipoAnalisis.Precio);

            detalle.TipoAnalisis = tipoAnalisis;
            analisis.AnalisisDetalle.Add(detalle);
            ViewState["Analisis"] = analisis;
            LlenaGrid();
        }
        public override bool Modificar(Paciente entity)
        {
            Contexto context  = new Contexto();
            Paciente anterior = this.Buscar(entity.Id_Paciente);

            //Verificando los modificados o agregados
            foreach (AnalisisDetalle elementoAnterior in anterior.AnalisisDetalle)
            {
                AnalisisDetalle detalle = entity.AnalisisDetalle.Find(x => x.Id_Analisis_Detalle == elementoAnterior.Id_Analisis_Detalle || x.Id_Analisis_Detalle == 0);
                RepositorioBase <TipoAnalisis> repositorioTipo = new RepositorioBase <TipoAnalisis>();
                if (detalle != null)
                {
                    System.Data.Entity.EntityState newState = detalle.Id_Analisis_Detalle <= 0 ? System.Data.Entity.EntityState.Added : System.Data.Entity.EntityState.Modified;
                    TipoAnalisis tipoAnalisis = repositorioTipo.Buscar(detalle.Id_Tipo_Analisis);
                    if (newState == System.Data.Entity.EntityState.Added)
                    {
                        tipoAnalisis.Cantidad_Realizada += 1;
                    }
                    else
                    {
                        if (elementoAnterior.Id_Tipo_Analisis != detalle.Id_Tipo_Analisis)
                        {
                            TipoAnalisis TipoAnterior = repositorioTipo.Buscar(elementoAnterior.Id_Tipo_Analisis);
                            TipoAnterior.Cantidad_Realizada -= 1;
                            new RepositorioBase <TipoAnalisis>().Modificar(TipoAnterior);
                            TipoAnalisis actual = repositorioTipo.Buscar(detalle.Id_Tipo_Analisis);
                            actual.Cantidad_Realizada += 1;
                            new RepositorioBase <TipoAnalisis>().Modificar(actual);
                        }
                    }
                    context.Entry(elementoAnterior).State = newState;
                }
                else
                {
                    TipoAnalisis TipoAnterior = repositorioTipo.Buscar(elementoAnterior.Id_Tipo_Analisis);
                    TipoAnterior.Cantidad_Realizada -= 1;
                    new RepositorioBase <TipoAnalisis>().Modificar(TipoAnterior);
                    context.Entry(elementoAnterior).State = System.Data.Entity.EntityState.Deleted;
                }
            }
            context.Entry(entity).State = System.Data.Entity.EntityState.Modified;
            return(context.SaveChanges() > 0);
        }
Esempio n. 4
0
        protected void agregarButton_Click(object sender, EventArgs e)
        {
            List <AnalisisDetalle> detalles = new List <AnalisisDetalle>();

            if (IsValid)
            {
                DateTime date = DateTime.Now.Date;

                int    tipoId      = Utils.ToIntObjetos(TipoAnalisisDropDownList.SelectedValue);
                string descripcion = Utils.Descripcion(tipoId);
                string resultado   = ResultadoTextBox.Text;
                int    precio      = Utils.ToInt(PrecioTextBox.Text);
                if (String.IsNullOrWhiteSpace(ResultadoTextBox.Text))
                {
                    Utils.ShowToastr(this, "Debe escribir un Resultado para agregar", "Error", "error");
                    return;
                }
                if (String.IsNullOrWhiteSpace(PrecioTextBox.Text) || Convert.ToInt32(PrecioTextBox.Text) == 0)
                {
                    Utils.ShowToastr(this, "Debe tener Precio", "Error", "error");
                    return;
                }
                else
                {
                    if (detalleGridView.Rows.Count != 0)
                    {
                        analisis.Detalle = (List <AnalisisDetalle>)ViewState["Detalle"];
                    }

                    AnalisisDetalle detalle = new AnalisisDetalle();
                    analisis.Detalle.Add(new AnalisisDetalle(0, detalle.AnalisisId, tipoId, descripcion, precio, resultado));

                    ViewState["Detalle"]       = analisis.Detalle;
                    detalleGridView.DataSource = ViewState["Detalle"];
                    detalleGridView.DataBind();
                    LlenaBalance();
                    ResultadoTextBox.Text = "";
                }
            }
        }