protected void Page_Load(object sender, EventArgs e)
 {
     if (!Page.IsPostBack)
     {
         ViewState["Analisis"] = new Analisis();
         //si llego in id
         int idAnalisis = Soporte.ToInt(Request.QueryString["idAnalisis"]);
         if (idAnalisis > 0)
         {
             BLL.RepositorioAnalisis repositorio = new BLL.RepositorioAnalisis();
             var analisis = repositorio.Buscar(idAnalisis);
             ViewState["Analisis"] = new Analisis();
             if (analisis == null)
             {
                 MostrarMensaje("error", "Registro no encontrado");
             }
             else
             {
                 MostrarMensaje("success", "Busqueda Completa");
                 LlenaCampos(analisis);
             }
         }
         else
         {
             LlenaComboBoxPacientes();
             LlenaComboBoxTiposAnalisis();
         }
     }
 }
예제 #2
0
        // METODO MODIFICAR
        public override bool Modificar(Pago pago)
        {
            bool     paso      = false;
            var      Anterior  = Buscar(pago.PagoId);
            Contexto contexto1 = new Contexto();

            try
            {
                using (Contexto contexto = new Contexto())
                {
                    bool pass = false;
                    foreach (var item in Anterior.PagoDetalle.ToList())
                    {
                        if (!pago.PagoDetalle.Exists(x => x.PagoDetalleId == item.PagoDetalleId))
                        {
                            RepositorioAnalisis repositorio = new RepositorioAnalisis();
                            Analisis            Analisis    = repositorio.Buscar(item.AnalisisId);
                            Analisis.Balance += item.Monto;

                            contexto.Entry(item).State = EntityState.Deleted;
                            repositorio.Modificar(Analisis);
                            repositorio.Dispose();
                            pass = true;
                        }
                    }

                    if (pass)
                    {
                        contexto.SaveChanges();
                    }
                    contexto.Dispose();
                }

                foreach (var item in pago.PagoDetalle)
                {
                    var estado = EntityState.Unchanged;
                    if (item.PagoDetalleId == 0)
                    {
                        RepositorioAnalisis repositorio = new RepositorioAnalisis();
                        Analisis            Analisis    = repositorio.Buscar(item.AnalisisId);
                        Analisis.Balance -= item.Monto;
                        estado            = EntityState.Added;
                        repositorio.Modificar(Analisis);
                        repositorio.Dispose();
                    }
                    contexto1.Entry(item).State = estado;
                }
                contexto1.Entry(pago).State = EntityState.Modified;
                paso = (contexto1.SaveChanges() > 0);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                contexto1.Dispose();
            }
            return(paso);
        }
예제 #3
0
        public static bool Modificar(Pago pago)
        {
            bool paso = false;

            Contexto contexto = new Contexto();

            try
            {
                Pago PagoAnt = RepositorioPago.Buscar(pago.PagoId);


                decimal modificado = pago.MontoPago - PagoAnt.MontoPago;

                var Analisis = contexto.Analisis.Find(pago.AnalisisId);
                Analisis.Balance += modificado;
                RepositorioAnalisis.Modificar(Analisis);

                contexto.Entry(pago).State = EntityState.Modified;
                if (contexto.SaveChanges() > 0)
                {
                    paso = true;
                }
                contexto.Dispose();
            }
            catch (Exception)
            {
                throw;
            }
            return(paso);
        }
        public override bool Modificar(Pagos entity)
        {
            bool     paso     = false;
            var      Anterior = Buscar(entity.PagoId);
            Contexto db       = new Contexto();

            try
            {
                using (Contexto contexto = new Contexto())
                {
                    bool flag = false;
                    foreach (var item in Anterior.Detalle.ToList())
                    {
                        if (!entity.Detalle.Exists(x => x.DetallePagoId == item.DetallePagoId))
                        {
                            RepositorioAnalisis repositorio = new RepositorioAnalisis();
                            var Analisis = repositorio.Buscar(item.AnalisisId);
                            Analisis.Balance              += item.MontoPago;
                            contexto.Entry(item).State     = EntityState.Deleted;
                            contexto.Entry(Analisis).State = EntityState.Modified;
                            flag = true;
                            repositorio.Dispose();
                        }
                    }

                    if (flag)
                    {
                        contexto.SaveChanges();
                    }
                    contexto.Dispose();
                }

                foreach (var item in entity.Detalle)
                {
                    var estado = EntityState.Unchanged;
                    if (item.DetallePagoId == 0)
                    {
                        RepositorioAnalisis repositorio = new RepositorioAnalisis();
                        var Analisis = repositorio.Buscar(item.AnalisisId);
                        Analisis.Balance        -= item.MontoPago;
                        estado                   = EntityState.Added;
                        db.Entry(Analisis).State = EntityState.Modified;
                        repositorio.Dispose();
                    }
                    db.Entry(item).State = estado;
                }
                db.Entry(entity).State = EntityState.Modified;
                paso = (db.SaveChanges() > 0);
            }
            catch (Exception)
            { throw; }
            finally
            { db.Dispose(); }
            return(paso);
        }
예제 #5
0
        public static bool Modificar(Analisis analisis)
        {
            bool     paso     = false;
            Contexto contexto = new Contexto();

            try
            {
                var Ant = RepositorioAnalisis.Buscar(analisis.AnalisisId);


                if (analisis != null)
                {
                    foreach (var item in Ant.Detalle)
                    {
                        contexto.TiposAnalisis.Find(item.TipoAnalisis);
                        if (!analisis.Detalle.ToList().Exists(v => v.DetalleId == item.DetalleId))
                        {
                            item.TipoAnalisis          = null;
                            contexto.Entry(item).State = EntityState.Deleted;
                        }
                    }

                    foreach (var item in analisis.Detalle)
                    {
                        contexto.TiposAnalisis.Find(item.TipoAnalisis).TiposId += 1;
                        var estado = item.TipoId > 0 ? EntityState.Modified : EntityState.Added;
                        contexto.Entry(item).State = estado;
                    }

                    decimal modificado = analisis.Balance - Ant.Balance;
                    analisis.Balance += modificado;
                    contexto.Entry(analisis).State = EntityState.Modified;
                }



                if (contexto.SaveChanges() > 0)
                {
                    paso = true;
                }
                contexto.Dispose();
            }
            catch (Exception)
            {
                throw;
            }
            return(paso);
        }
예제 #6
0
        public override bool Modificar(Pago entity)
        {
            var      anterior = Buscar(entity.IDpago);
            Contexto contexto = new Contexto();
            bool     paso     = false;

            try
            {
                using (Contexto contexto1 = new Contexto())
                {
                    bool paso1 = false;
                    foreach (var item in anterior.PagoDetalles.ToList())
                    {
                        if (!entity.PagoDetalles.Exists(p => p.PagoDetalleID == item.PagoDetalleID))
                        {
                            RepositorioAnalisis repsoitorio = new RepositorioAnalisis();
                            var A = repsoitorio.Buscar(item.AnalisisID);
                            A.Balance += item.Monto;
                            contexto.Entry(item).State = System.Data.Entity.EntityState.Deleted;
                            contexto.Entry(A).State    = System.Data.Entity.EntityState.Modified;
                            paso1 = true;
                            contexto1.SaveChanges();
                            repsoitorio.Dispose();
                        }
                    }
                    foreach (var item in entity.PagoDetalles)
                    {
                        var pago = EntityState.Unchanged;
                        if (item.PagoDetalleID == 0)
                        {
                            RepositorioAnalisis repositorio = new RepositorioAnalisis();
                            var A = repositorio.Buscar(item.AnalisisID);
                            A.Balance -= item.Monto;
                            pago       = EntityState.Added;
                            contexto.Entry(A).State = EntityState.Modified;
                            repositorio.Dispose();
                        }
                        contexto.Entry(item).State = pago;
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(paso);
        }
예제 #7
0
        // METODO GUARDAR
        public override bool Guardar(Pago pago)
        {
            RepositorioAnalisis repositorio = new RepositorioAnalisis();
            bool paso = false;

            foreach (var item in pago.PagoDetalle.ToList())
            {
                var Analisis = repositorio.Buscar(item.AnalisisId);
                Analisis.Balance -= item.Monto;
                paso              = repositorio.Modificar(Analisis);
            }
            repositorio.Dispose();
            if (paso)
            {
                return(base.Guardar(pago));
            }
            return(paso);
        }
예제 #8
0
        // METODO ELIMINAR
        public override bool Eliminar(int id)
        {
            Pago pago = Buscar(id);
            bool paso = false;
            RepositorioAnalisis repositorio = new RepositorioAnalisis();

            foreach (var item in pago.PagoDetalle)
            {
                var Analisis = repositorio.Buscar(item.AnalisisId);
                Analisis.Balance += item.Monto;
                paso              = repositorio.Modificar(Analisis);
            }
            if (paso)
            {
                return(base.Eliminar(pago.PagoId));
            }
            return(paso);
        }
예제 #9
0
        public override bool Eliminar(int id)
        {
            RepositorioAnalisis repositorio = new RepositorioAnalisis();
            Pago     pago     = Buscar(id);
            Contexto contexto = new Contexto();

            foreach (var item in pago.PagoDetalles.ToList())
            {
                var A = repositorio.Buscar(item.AnalisisID);
                A.Monto += item.Monto;
                contexto.Entry(A).State = EntityState.Modified;
            }
            bool paso = contexto.SaveChanges() > 0;

            if (paso)
            {
                contexto.Dispose();
                return(base.Eliminar(pago.IDpago));
            }
            contexto.Dispose();
            return(false);
        }
예제 #10
0
        public override bool Eliminar(int id)
        {
            Pagos    pagos = Buscar(id);
            Contexto db    = new Contexto();

            foreach (var item in pagos.Detalle)
            {
                RepositorioAnalisis repositorio = new RepositorioAnalisis();
                var Analisis = db.Analisis.Find(item.AnalisisId);
                Analisis.Balance += item.MontoPago;
                repositorio.Modificar(Analisis);
            }
            bool paso = (db.SaveChanges() > 0);

            if (paso)
            {
                db.Dispose();
                return(base.Eliminar(pagos.PagoId));
            }
            db.Dispose();
            return(false);
        }
예제 #11
0
        public override bool Guardar(Pagos entity)
        {
            RepositorioAnalisis repositorio = new RepositorioAnalisis();
            Contexto            db          = new Contexto();

            foreach (var item in entity.Detalle.ToList())
            {
                var Analisis = repositorio.Buscar(item.AnalisisId);
                Analisis.Balance        -= item.MontoPago;
                db.Entry(Analisis).State = System.Data.Entity.EntityState.Modified;
            }

            bool paso = db.SaveChanges() > 0;

            repositorio.Dispose();
            if (paso)
            {
                db.Dispose();
                return(base.Guardar(entity));
            }
            db.Dispose();
            return(false);
        }