Exemplo n.º 1
0
        public ActionResult EditarHospital(HospitalesVista model, HttpPostedFileBase fichero, FormCollection coleccion)
        {
            try
            {
                var hospitalAEditar = new DatosProfesionales {
                    idDatosPro = Convert.ToInt32(model.IdHospital)
                };
                hospitalAEditar = DbContext.DatosProfesionales.Find(hospitalAEditar.idDatosPro);

                hospitalAEditar.nombre    = model.Nombre;
                hospitalAEditar.telefono  = model.Telefono;
                hospitalAEditar.direccion = model.Direccion;
                hospitalAEditar.email     = model.Email;
                hospitalAEditar.texto     = model.Texto;

                if (fichero != null && fichero.ContentLength > 0)
                {
                    //guardamos el fichero de la foto con nombre hosp + id
                    var nombreFichero = fichero.FileName;
                    var extension     = nombreFichero.Substring(nombreFichero.LastIndexOf(".", StringComparison.CurrentCulture));
                    var rutacompleta  = Server.MapPath("~/uploads/fotos") + @"\" + model.IdHospital + extension;
                    fichero.SaveAs(rutacompleta);
                    hospitalAEditar.foto = "~/uploads/fotos/" + model.IdHospital + extension;
                }

                //nos cargamos todas previamente
                foreach (var co in hospitalAEditar.Companias.ToList())
                {
                    hospitalAEditar.Companias.Remove(co);
                }

                for (var i = 6; i < coleccion.Count; i++)
                {
                    var id = Convert.ToInt32(coleccion.GetKey(i));
                    var co = DbContext.Companias.Find(id);
                    hospitalAEditar.Companias.Add(co);
                }

                DbContext.SaveChanges();

                return(RedirectToAction("index"));
            }
            catch (Exception e)
            {
                //algo deberiamos hacer si falla..pero si no podemos enviar un email...chungo..
                return(Json(string.Format("error editando hospital {0}", e.Message), JsonRequestBehavior.AllowGet));
            }
        }
Exemplo n.º 2
0
        public ActionResult Index()
        {
            var hospi = DbContext.DatosProfesionales.Where(x => x.activo.HasValue && x.activo.Value).Select(o => o);

            var data = new List <HospitalesVista>();

            foreach (var o in hospi)
            {
                var item = new HospitalesVista
                {
                    IdHospital = o.idDatosPro.ToString(),
                    Nombre     = o.nombre,
                    Telefono   = o.telefono,
                    Email      = o.email,
                    Direccion  = o.direccion,
                    Texto      = o.texto,
                    Foto       = o.foto
                };

                item.Companies = new List <CompaniasVista>();

                //comprobamos, como siempre
                if (o.Companias != null)
                {
                    var pos = 0;
                    foreach (var oo in o.Companias)
                    {
                        var company = new CompaniasVista
                        {
                            IdCompanias = oo.idCompanias,
                            Nombre      = oo.nombre,
                            Link        = oo.link,
                            Posicion    = pos,
                            Foto        = oo.foto
                        };

                        item.Companies.Add(company);
                        pos++;
                    }
                }

                data.Add(item);
            }

            return(View(data));
        }