예제 #1
0
        public ActionResult DeleteConfirmed(int id)
        {
            EstadoCaso estadoCaso = db.EstadoCasos.Find(id);

            db.EstadoCasos.Remove(estadoCaso);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #2
0
 public ActionResult Edit([Bind(Include = "IdEstadoCaso,Descripcion,Color")] EstadoCaso estadoCaso)
 {
     if (ModelState.IsValid)
     {
         db.Entry(estadoCaso).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(estadoCaso));
 }
예제 #3
0
        public ActionResult Create([Bind(Include = "IdEstadoCaso,Descripcion,Color")] EstadoCaso estadoCaso)
        {
            if (ModelState.IsValid)
            {
                db.EstadoCasos.Add(estadoCaso);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(estadoCaso));
        }
예제 #4
0
        // GET: EstadosCasos/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            EstadoCaso estadoCaso = db.EstadoCasos.Find(id);

            if (estadoCaso == null)
            {
                return(HttpNotFound());
            }
            return(View(estadoCaso));
        }
예제 #5
0
        public ActionResult Edit(Caso caso, string[] lineaDiasFecha, string[] lineaDiasObs, string DescripcionHistorial)
        {
            Caso casoOriginal = db.Casos.Find(caso.IdCaso);

            if (casoOriginal != null)
            {
                //CONTROLAR QUE TOODOS LOS DATOS ESTEN BIEN Y MAPEAR CASO EN CASOORIGINAL!!

                #region //LOGTXT
                //En observaciones historial (comentarios de la modificación)
                //adjunto todos los datos anteriores al cambio
                var diasimplicados = "";
                if (casoOriginal.DiasDevoluciones.Any())
                {
                    foreach (var dimp in casoOriginal.DiasDevoluciones)
                    {
                        diasimplicados = diasimplicados + dimp.Fecha + " " + dimp.Observaciones + " ";
                    }
                }
                var datosAnteriores = "Detalles previos a la edición del " + DateTime.Now.ToString() + " : ";
                try
                {
                    datosAnteriores = datosAnteriores + "<<descripción>>" + casoOriginal.Descripcion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<observaciones>>" + casoOriginal.Observacion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<motivo cierre>>" + casoOriginal.MotivoCierreCaso.Descripcion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<asunto>>" + casoOriginal.AsuntoCaso.Descripcion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<estado>>" + casoOriginal.EstadoCaso.Descripcion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<Motivo cierre>>" + casoOriginal.MotivoCierreCaso.Descripcion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<tipo caso>>" + casoOriginal.TipoCaso.Descripcion;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<fecha vencimiento>>" + casoOriginal.FechaVencimiento;
                }
                catch (Exception e)
                {
                }
                try
                {
                    datosAnteriores = datosAnteriores + "<<días implicados>>" + diasimplicados;
                }
                catch (Exception e)
                {
                }
                #endregion //



                casoOriginal.Descripcion = caso.Descripcion;
                HistorialCaso historialCaso = new HistorialCaso
                {
                    Fecha = DateTime.Now,
                    EstadoCasoHistorial    = db.EstadoCasos.Find(casoOriginal.IdEstadoCaso),
                    UsuarioModificacion    = User.Identity.Name,
                    ObservacionesHistorial = DescripcionHistorial,
                    FechaCarga             = DateTime.Now,
                    LogTxt = datosAnteriores
                };
                db.HistorialCasos.Add(historialCaso);

                casoOriginal.IdTipoCaso   = caso.IdTipoCaso;
                casoOriginal.IdEstadoCaso = caso.IdEstadoCaso;
                casoOriginal.IdAsuntoCaso = caso.IdAsuntoCaso;

                if (caso.FechaVencimiento != casoOriginal.FechaVencimiento)
                {
                    casoOriginal.FechaVencimiento = caso.FechaVencimiento;
                }
                EstadoCaso estadocasotesteo = db.EstadoCasos.Find(caso.IdEstadoCaso);
                if (estadocasotesteo.Descripcion == "Cerrado")
                {
                    casoOriginal.FechaCierre        = DateTime.Now;
                    casoOriginal.IdMotivoCierreCaso = caso.IdMotivoCierreCaso;
                }

                if (casoOriginal.HistorialCaso == null)
                {
                    casoOriginal.HistorialCaso = new List <HistorialCaso>();
                }
                casoOriginal.HistorialCaso.Add(historialCaso);
                IList <DiaDevolucionCaso> daysForDelete =
                    casoOriginal.DiasDevoluciones != null?casoOriginal.DiasDevoluciones.ToList() : new List <DiaDevolucionCaso>();

                foreach (var daytodelete in daysForDelete)
                {
                    db.DiaDevolucionCasos.Remove(daytodelete);
                }
                db.SaveChanges();
                if (lineaDiasFecha != null)
                {
                    foreach (var item in lineaDiasFecha)
                    {
                        DiaDevolucionCaso devolucionCaso = new DiaDevolucionCaso();
                        devolucionCaso.Fecha               = Convert.ToDateTime(item);
                        devolucionCaso.FechaModificacion   = DateTime.Now;
                        devolucionCaso.Observaciones       = lineaDiasObs[lineaDiasFecha.ToList().IndexOf(item)];
                        devolucionCaso.UsuarioModificacion = User.Identity.Name;
                        db.DiaDevolucionCasos.Add(devolucionCaso);
                        db.SaveChanges();
                        casoOriginal.DiasDevoluciones.Add(devolucionCaso);
                    }
                }


                db.Entry(casoOriginal).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }



            ViewBag.IdAsuntoCaso = new SelectList(db.AreaCasos, "IdAreaCaso", "Descripcion", caso.IdAsuntoCaso);
            ViewBag.IdEstadoCaso = new SelectList(db.EstadoCasos, "IdEstadoCaso", "Descripcion", caso.IdEstadoCaso);

            ViewBag.IdSuscripcion = new SelectList(db.Suscripciones, "IdSuscripcion", "Nombre", caso.IdSuscripcion);
            ViewBag.IdTipoCaso    = new SelectList(db.TipoCasos, "IdTipoCaso", "Descripcion", caso.IdTipoCaso);
            return(View(caso));
        }