Beispiel #1
0
        public static RequerimientoEquipo ConsultarRequerimientoEquipo(int id)
        {
            RequerimientoEquipo objeto = new RequerimientoEquipo();

            try
            {
                objeto = db.ConsultarRequerimientoEquipo(id).FirstOrDefault();
                return(objeto);
            }
            catch (Exception)
            {
                return(objeto);
            }
        }
Beispiel #2
0
        public ActionResult GestionarAsignacion(int?id)
        {
            ViewBag.TituloPanel = Etiquetas.TituloPanelFormularioRequerimientoEquipos;
            ViewBag.UsuarioID   = 0;

            try
            {
                RequerimientoEquipo model   = new RequerimientoEquipo();
                List <string>       equipos = new List <string>();
                List <string>       herramientasAdicionales = new List <string>();

                if (id.HasValue)
                {
                    model = RequerimientoEquipoDAL.ConsultarRequerimientoEquipo(id.Value);

                    RequerimientoEquipoInfo objeto = RequerimientoEquipoDAL.ListadoRequerimientoEquipo(null, null, null, id).FirstOrDefault();

                    equipos = objeto != null?objeto.IDsEquipos.Split(',').ToList() : new List <string>();

                    var equiposListado = EquipoDAL.ObtenerListadoEquipos().Where(s => equipos.Contains(s.Value)).Select(m => new SelectListItem
                    {
                        Text  = m.Text,
                        Value = m.Value,
                    });

                    ViewBag.Equipos = equiposListado;

                    herramientasAdicionales = objeto != null?objeto.IDsHerramientasAdicionales.Split(',').ToList() : new List <string>();

                    var herramientasAdicionalesListado = EquipoDAL.ObtenerListadoEquipos(null, " WHERE CodigoCatalogoTipo = 'ACCESORIOS-01' ").Where(s => herramientasAdicionales.Contains(s.Value) && !string.IsNullOrEmpty(s.Value)).Select(m => new SelectListItem
                    {
                        Text  = m.Text,
                        Value = m.Value,
                    });

                    ViewBag.HerramientasAdicionales = herramientasAdicionalesListado;

                    ViewBag.UsuarioID = model.UsuarioID;
                }

                ViewBag.Asignado = true;

                return(View("~/Views/RequerimientoEquipo/Formulario.cshtml", model));
            }
            catch (Exception ex)
            {
                return(View("~/Views/RequerimientoEquipo/Formulario.cshtml", new FichaIngreso()));
            }
        }
Beispiel #3
0
        public static RespuestaTransaccion ActualizarRequerimientoEquipo(RequerimientoEquipo objeto, List <int> equipos, List <int> herramientasAdicionales)
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    if (!equipos.Any())
                    {
                        return new RespuestaTransaccion {
                                   Estado = false, Respuesta = Mensajes.MensajeEquipoRequerido
                        }
                    }
                    ;

                    // assume Entity base class have an Id property for all items
                    var entity = db.RequerimientoEquipo.Find(objeto.IDRequerimientoEquipo);
                    if (entity == null)
                    {
                        return(new RespuestaTransaccion {
                            Estado = false, Respuesta = Mensajes.MensajeTransaccionFallida
                        });
                    }

                    db.Entry(entity).CurrentValues.SetValues(objeto);
                    db.SaveChanges();

                    int IDRequerimientoEquipo = objeto.IDRequerimientoEquipo;

                    // Limpiar primero los detalles anteriores
                    var detallesAnterioresEquipos = db.RequerimientoEquipoUsuario.Where(s => s.RequerimientoEquipoID == IDRequerimientoEquipo).ToList();
                    foreach (var item in detallesAnterioresEquipos)
                    {
                        db.RequerimientoEquipoUsuario.Remove(item);
                        db.SaveChanges();
                    }

                    foreach (var item in equipos)
                    {
                        db.RequerimientoEquipoUsuario.Add(new RequerimientoEquipoUsuario
                        {
                            EquipoID = item,
                            RequerimientoEquipoID = IDRequerimientoEquipo
                        });
                        db.SaveChanges();
                    }
                    // Limpiar primero los detalles anteriores
                    var detallesAnterioresHerramientasAdicionales = db.RequerimientoEquipoHerramientasAdicionales.Where(s => s.RequerimientoEquipoID == IDRequerimientoEquipo).ToList();
                    foreach (var item in detallesAnterioresHerramientasAdicionales)
                    {
                        db.RequerimientoEquipoHerramientasAdicionales.Remove(item);
                        db.SaveChanges();
                    }
                    foreach (var item in herramientasAdicionales)
                    {
                        db.RequerimientoEquipoHerramientasAdicionales.Add(new RequerimientoEquipoHerramientasAdicionales
                        {
                            HerramientaAdicional  = item,
                            RequerimientoEquipoID = IDRequerimientoEquipo
                        });
                        db.SaveChanges();
                    }

                    transaction.Commit();

                    return(new RespuestaTransaccion {
                        Estado = true, Respuesta = Mensajes.MensajeTransaccionExitosa
                    });
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    return(new RespuestaTransaccion {
                        Estado = false, Respuesta = Mensajes.MensajeTransaccionFallida + " ;" + ex.Message.ToString()
                    });
                }
            }
        }
Beispiel #4
0
        public static RespuestaTransaccion CrearRequerimientoEquipo(RequerimientoEquipo objeto, List <int> equipos, List <int> herramientasAdicionales)
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    if (!equipos.Any())
                    {
                        return new RespuestaTransaccion {
                                   Estado = false, Respuesta = Mensajes.MensajeEquipoRequerido
                        }
                    }
                    ;

                    objeto.FechaSolicitud = DateTime.Now;

                    db.RequerimientoEquipo.Add(objeto);
                    db.SaveChanges();

                    int IDRequerimientoEquipo = objeto.IDRequerimientoEquipo;

                    foreach (var item in equipos)
                    {
                        db.RequerimientoEquipoUsuario.Add(new RequerimientoEquipoUsuario
                        {
                            EquipoID = item,
                            RequerimientoEquipoID = IDRequerimientoEquipo
                        });

                        db.SaveChanges();
                    }

                    foreach (var item in herramientasAdicionales)
                    {
                        db.RequerimientoEquipoHerramientasAdicionales.Add(new RequerimientoEquipoHerramientasAdicionales
                        {
                            HerramientaAdicional  = item,
                            RequerimientoEquipoID = IDRequerimientoEquipo
                        });
                        db.SaveChanges();
                    }

                    //Solucion error atach
                    db.Entry(objeto).State = EntityState.Detached;

                    transaction.Commit();

                    return(new RespuestaTransaccion {
                        Estado = true, Respuesta = Mensajes.MensajeTransaccionExitosa
                    });
                }
                catch (Exception ex)
                {
                    //Solucion error atach
                    db.Entry(objeto).State = EntityState.Detached;

                    transaction.Rollback();
                    return(new RespuestaTransaccion {
                        Estado = false, Respuesta = Mensajes.MensajeTransaccionFallida + " ;" + ex.Message.ToString()
                    });
                }
            }
        }