示例#1
0
        public ActionResult EditingInline_Create([DataSourceRequest] DataSourceRequest request, equipo_por_rack _equip)
        {
            List <equipo_por_rack> tCache;

            cloudmanageEntities ent = new cloudmanageEntities();

            if (_equip != null && ModelState.IsValid)
            {
                // Update internal field for equipo_fk
                if (Int32.TryParse(_equip.equipo_nombre, out int tval))
                {
                    _equip.equipo_fk = tval;
                }

                // If valid equipo_fk  update equipo_nombre
                if (_equip.equipo_fk > 0)
                {
                    try
                    {
                        // _equip.equipo_nombre = ent.equipo.Where(s => s.idequipo == _equip.equipo_fk).
                        //Select(s => s.s_equipo_numero_serie).First();

                        _equip.equipo_nombre = GetPersonalizedNameForEquipoNombre(_equip.equipo_fk);
                    }
                    catch (Exception ex)
                    {
                        string err = ex.Message;
                    }
                }
                else
                {
                    _equip.equipo_nombre = "";
                    _equip.equipo        = null;
                }

                //  Add new item
                bool isPrex = false;

                tCache          = (List <equipo_por_rack>)TempData["epr"];
                TempData["epr"] = tCache;

                foreach (equipo_por_rack sspe in tCache)
                {
                    if (sspe.equipo_fk == _equip.equipo_fk)
                    {
                        isPrex = true;
                    }
                }
                if (!isPrex)
                {
                    tCache = (List <equipo_por_rack>)TempData["epr"];
                    tCache.Add(_equip);
                    TempData["epr"] = tCache;
                }
            }


            return(Json(new[] { _equip }.ToDataSourceResult(request, ModelState)));
        }
        public ActionResult EditingInline_Update([DataSourceRequest] DataSourceRequest request, software_por_equipo soft)
        {
            List <software_por_equipo> tCache;

            cloudmanageEntities ent = new cloudmanageEntities();

            if (soft != null && ModelState.IsValid)
            {
                //     ses.Update(soft);
                if (soft.software_fk > 0)
                {
                    soft.software_nombre = ent.software.Where(s => s.idsoftware == soft.software_fk).Select(s => s.nombre).First();
                }
                else
                {
                    soft.software_nombre = "";
                }



                //  Add new item
                bool isPrex = false;

                tCache          = (List <software_por_equipo>)TempData["spe"];
                TempData["spe"] = tCache;

                for (int i = 0; i < tCache.Count; i++)
                {
                    if (tCache[i].software_fk == soft.software_fk)
                    {
                        tCache[i] = soft;   // Replace updated item.
                        isPrex    = true;
                    }
                }

                TempData["spe"] = tCache;



                if (!isPrex)
                {
                    tCache = (List <software_por_equipo>)TempData["spe"];
                    tCache.Add(soft);
                    TempData["spe"] = tCache;
                }
                else   // Update fields
                {
                }
            }



            return(Json(new[] { soft }.ToDataSourceResult(request, ModelState)));
        }
示例#3
0
        public ActionResult EditingInline_Update([DataSourceRequest] DataSourceRequest request, equipo_por_rack _equip)
        {
            List <equipo_por_rack> tCache;

            cloudmanageEntities ent = new cloudmanageEntities();

            if (_equip != null && ModelState.IsValid)
            {
                //     ers.Update(_equip);
                if (_equip.equipo_fk > 0)
                {
                    _equip.equipo_nombre = GetPersonalizedNameForEquipoNombre(_equip.equipo_fk);      //  ent.equipo.Where(s => s.idequipo == _equip.equipo_fk).Select(s => s.s_equipo_numero_serie).First();
                }
                else
                {
                    _equip.equipo_nombre = "";
                }



                //  Add new item
                bool isPrex = false;

                tCache          = (List <equipo_por_rack>)TempData["epr"];
                TempData["epr"] = tCache;

                for (int i = 0; i < tCache.Count; i++)
                {
                    if (tCache[i].equipo_fk == _equip.equipo_fk)
                    {
                        tCache[i] = _equip;   // Replace updated item.
                        isPrex    = true;
                    }
                }

                TempData["epr"] = tCache;



                if (!isPrex)
                {
                    tCache = (List <equipo_por_rack>)TempData["epr"];
                    tCache.Add(_equip);
                    TempData["epr"] = tCache;
                }
                else   // Update fields
                {
                }
            }



            return(Json(new[] { _equip }.ToDataSourceResult(request, ModelState)));
        }
        public ActionResult EditingInline_Create([DataSourceRequest] DataSourceRequest request, software_por_equipo soft)
        {
            List <software_por_equipo> tCache;

            cloudmanageEntities ent = new cloudmanageEntities();

            if (soft != null && ModelState.IsValid)
            {
                // Update internal field for software_fk
                if (Int32.TryParse(soft.software_nombre, out int tval))
                {
                    soft.software_fk = tval;
                }

                // If valid software_fk  update software_nombre
                if (soft.software_fk > 0)
                {
                    soft.software_nombre = ent.software.Where(s => s.idsoftware == soft.software_fk).
                                           Select(s => s.nombre).First();
                }
                else
                {
                    soft.software_nombre = "";
                    soft.software        = null;
                }

                //  Add new item
                bool isPrex = false;

                tCache          = (List <software_por_equipo>)TempData["spe"];
                TempData["spe"] = tCache;

                foreach (software_por_equipo sspe in tCache)
                {
                    if (sspe.software_fk == soft.software_fk)
                    {
                        isPrex = true;
                    }
                }
                if (!isPrex)
                {
                    tCache = (List <software_por_equipo>)TempData["spe"];
                    tCache.Add(soft);
                    TempData["spe"] = tCache;
                }
            }


            return(Json(new[] { soft }.ToDataSourceResult(request, ModelState)));
        }
示例#5
0
        public JsonResult Treeread(int?id)
        {
            using (var Context = new cloudmanageEntities())
            {
                var cQuery = Context.ubicacion.Select(c => new HierarchicalViewModel
                {
                    ID             = c.idubicacion,
                    Name           = c.nombre,
                    ParentID       = null,
                    HasChildren    = (c.rack.Any() || c.equipo.Any()),  // c.rack.Any(),
                    SpriteCssClass = "fa fa-map-marker"
                })

                             .Union(Context.rack.Select(r => new HierarchicalViewModel
                {
                    ID             = r.idrack,
                    Name           = r.nombre,
                    ParentID       = r.ubicacion_fk,
                    HasChildren    = r.equipo_por_rack.Any(),
                    SpriteCssClass = "fa fa-server"
                }))

                             .Union(Context.equipo.Select(q => new HierarchicalViewModel
                {
                    ID             = q.idequipo,
                    Name           = q.s_equipo_numero_serie + " " + q.marca_modelo.marca_modelo_string,
                    ParentID       = q.ubicacion_fk,
                    HasChildren    = false,
                    SpriteCssClass = "fa fa-desktop"
                }));

                var result = cQuery.ToList()
                             .Where(x => id.HasValue ? x.ParentID == id : x.ParentID == null)
                             .Select(item => new
                {
                    id   = item.ID,
                    Name = item.Name,
                    //  expanded = item.Expanded,
                    expanded       = false, //(item.SpriteCssClass == "fa fa-map-marker"),
                    hasChildren    = item.HasChildren,
                    spriteCssClass = item.SpriteCssClass,
                });

                JsonResult jr = Json(result, JsonRequestBehavior.AllowGet);

                return(jr);
            }
        }
        private void PopulateSoftware()
        {
            var dataContext = new cloudmanageEntities();
            var softwares   = dataContext.software
                              .Select(c => new software
            {
                idsoftware = c.idsoftware,
                nombre     = c.nombre
            })
                              .OrderBy(e => e.nombre);

            ViewData["softwares"]       = softwares;
            ViewData["defaultSoftware"] = dataContext.software.First();

            ViewBag.softwares = new SelectList(db.software, "idsoftware", "nombre");
        }
        private void PopulatePuertos()
        {
            var dataContext = new cloudmanageEntities();
            var puertos     = dataContext.puerto
                              .Select(c => new puerto
            {
                idpuerto = c.idpuerto,
                nombre   = c.nombre
            })
                              .OrderBy(e => e.nombre);

            ViewData["puertos"]       = puertos;
            ViewData["defaultPuerto"] = dataContext.puerto.First();

            ViewBag.puertos = new SelectList(db.puerto, "idpuerto", "nombre");
        }
示例#8
0
        private void PopulateEquipos()
        {
            var dataContext = new cloudmanageEntities();
            var equipos     = dataContext.equipo
                              .Select(c => new equipo
            {
                idequipo = c.idequipo,
                s_equipo_numero_serie = c.s_equipo_numero_serie
            })
                              .OrderBy(e => e.s_equipo_numero_serie);

            ViewData["equipos"]       = equipos;
            ViewData["defaultEquipo"] = dataContext.equipo.First();

            //*****//  ViewBag.equipos = new SelectList(db.equipo, "idequipo", "s_equipo_numero_serie");
        }
        public JsonResult ReadSoftware()
        {
            var dataContext = new cloudmanageEntities();
            var softwares   = dataContext.software
                              .Select(c => new software
            {
                idsoftware = c.idsoftware,
                nombre     = c.nombre
            })
                              .OrderBy(e => e.nombre);

            //var softwares = db.software.Include(s => s.tipo_de_software);


            ViewData["softwares"]       = softwares;
            ViewData["defaultSoftware"] = dataContext.software.First();

            JsonResult s = Json(softwares, JsonRequestBehavior.AllowGet);

            string ss = s.ToString();

            return(s);
        }
示例#10
0
        public JsonResult Treereadfilter(int?id, string filterBy, string filterVal, string expandedNodes)
        {
            bool isFilterSettedUp = false;
            // "{\"9\":true}"
            string expNum = expandedNodes.Replace("\"", "").
                            Replace(":", "").Replace("{", "").Replace("}", "").Replace("true", "");

            string[] jsExpandedNode = new string[0];
            if (expNum != "undefined")
            {
                jsExpandedNode = expNum.Split(',');
            }



            string filterMarca       = "";
            string filterProveedor   = "";
            string filterResponsable = "";
            string filterUbicacion   = "";
            string filterCategoria   = ""; // Tipo,  ej: ruteador


            // Check object to search for

            switch (filterBy)
            {
            case "ubicacion":
                filterUbicacion = filterVal;
                break;

            case "marca":
                filterMarca      = filterVal;
                isFilterSettedUp = true;
                break;

            case "proveedor":
                filterProveedor  = filterVal;
                isFilterSettedUp = true;
                break;

            case "responsable":
                filterResponsable = filterVal;
                isFilterSettedUp  = true;
                break;

            case "categoria":
                filterCategoria  = filterVal;
                isFilterSettedUp = true;
                break;
            }

            if (filterVal == "")
            {
                isFilterSettedUp = false;
            }

            using (var Context = new cloudmanageEntities())
            {
                var cQuery = Context.ubicacion.
                             Where(s => s.nombre.Contains(filterUbicacion)).
                             Select(c => new HierarchicalViewModel
                {
                    ID             = c.idubicacion,
                    Name           = c.nombre,
                    ParentID       = null,
                    HasChildren    = (c.rack.Any() || c.equipo.Any()),  // c.rack.Any(),
                    SpriteCssClass = "fa fa-map-marker"
                })

                             .Union(Context.rack.
                                    // Where(r => r.proveedor.nombre_comercial.Contains(filterProveedor)).
                                    Select(r => new HierarchicalViewModel
                {
                    ID             = r.idrack,
                    Name           = r.nombre,
                    ParentID       = r.ubicacion_fk,
                    HasChildren    = false,            // r.equipo_por_rack.Any(),
                    SpriteCssClass = "fa fa-server"
                }))

                             .Union(Context.equipo.
                                    Where(s => s.proveedor.nombre_comercial.Contains(filterProveedor)).
                                    Where(t => t.marca_modelo.marca.ToUpper().Contains(filterMarca.ToUpper()) || t.marca_modelo.modelo.ToUpper().Contains(filterMarca.ToUpper())).
                                    Where(t => t.responsable.nombre.Contains(filterResponsable)).
                                    Where(t => t.tipo_de_equipo.categoria.Contains(filterCategoria)).
                                    Where(t => t.equipo_por_rack.Count <= 0).
                                    Select(q => new HierarchicalViewModel
                {
                    ID = q.idequipo,

                    Name           = q.s_equipo_numero_serie + " - " + q.marca_modelo.marca + " - " + q.marca_modelo.modelo,
                    ParentID       = q.ubicacion_fk,
                    HasChildren    = false,
                    SpriteCssClass = "fa fa-desktop"
                }));

                var result = cQuery.ToList()
                             .Where(x => id.HasValue ? x.ParentID == id : x.ParentID == null)
                             .Select(item => new
                {
                    id   = item.ID,
                    Name = item.Name,
                    //  expanded = item.Expanded,
                    // expanded = isFilterSettedUp,     // false,    //(item.SpriteCssClass == "fa fa-map-marker"),
                    // expanded = true,
                    expanded       = expandedFunction(jsExpandedNode, item.ID.ToString(), filterVal),
                    hasChildren    = item.HasChildren,
                    spriteCssClass = item.SpriteCssClass,
                });

                JsonResult jr = Json(result, JsonRequestBehavior.AllowGet);

                return(jr);
            }
        }
        public ActionResult Edit([Bind(Include = "idequipo,ubicacion_fk,tipo_de_equipo_fk,marca_modelo_fk,s_equipo_numero_serie,descripcion,altura_u,prof_inch,es_contenedor,s_equipo_fecha_configuracion,responsable_fk,es_propio,comentarios,path_imagen,es_activo,es_virtual,proveedor_fk,atributo_por_equipo")] equipo equipo)
        {
            ViewBag.softwares = new SelectList(db.software, "idsoftware", "nombre");
            ViewBag.puertos   = new SelectList(db.puerto, "idpuerto", "nombre");

            ViewBag.listaAtributos = (List <Inventario.Models.atributo>)db.atributo.ToList();
            SetRegExDictionary();


            if (ModelState.IsValid)
            {
                using (var dbDinamo = new cloudmanageEntities())
                {
                    foreach (atributo_por_equipo ar in equipo.atributo_por_equipo)
                    {
                        if (dbDinamo.atributo_por_equipo.Find(ar.atributo_fk, ar.equipo_fk) != null)
                        {
                            db.Entry(ar).State = EntityState.Modified;
                        }
                        else
                        {
                            db.Entry(ar).State = EntityState.Added;
                        }
                    }
                }


                db.Entry(equipo).State = EntityState.Modified;
                db.SaveChanges();


                /*Software por equipo*/
                if (TempData["spe"] != null)
                {
                    using (var dbDinamo = new cloudmanageEntities())
                    {
                        foreach (software_por_equipo _spe in (List <software_por_equipo>)TempData["spe"])
                        {
                            if (dbDinamo.software_por_equipo.Find(_spe.equipo_fk, _spe.software_fk) != null)
                            {
                                _spe.equipo   = null;
                                _spe.software = null;


                                if (_spe.observaciones == "DELETED")
                                {
                                    db.Entry(_spe).State = EntityState.Deleted;
                                }
                                else
                                {
                                    db.Entry(_spe).State = EntityState.Modified;
                                }
                            }
                            else
                            {
                                software_por_equipo newItem = new software_por_equipo();

                                newItem.software      = null;
                                newItem.software_fk   = _spe.software_fk;
                                newItem.equipo_fk     = equipo.idequipo;
                                newItem.observaciones = _spe.observaciones;

                                db.Entry(newItem).State = EntityState.Added;
                            }
                        }
                    }
                }


                /*Puerto por equipo*/
                if (TempData["ppe"] != null && ((List <puerto_por_equipo>)TempData["ppe"]).Count > 0)
                {
                    using (var dbDinamo = new cloudmanageEntities())
                    {
                        foreach (puerto_por_equipo _ppe in (List <puerto_por_equipo>)TempData["ppe"])
                        {
                            if (dbDinamo.puerto_por_equipo.Find(_ppe.equipo_fk, _ppe.puerto_fk) != null)
                            {
                                _ppe.equipo = null;
                                _ppe.puerto = null;


                                if (_ppe.numero_de_puertos == "DELETED")
                                {
                                    db.Entry(_ppe).State = EntityState.Deleted;
                                }
                                else
                                {
                                    db.Entry(_ppe).State = EntityState.Modified;
                                }
                            }
                            else
                            {
                                puerto_por_equipo newItem = new puerto_por_equipo();

                                newItem.puerto            = null;
                                newItem.puerto_fk         = _ppe.puerto_fk;
                                newItem.equipo_fk         = equipo.idequipo;
                                newItem.numero_de_puertos = _ppe.numero_de_puertos;

                                db.Entry(newItem).State = EntityState.Added;
                            }
                        }
                    }
                }

                db.SaveChanges();



                return(RedirectToAction("Index"));
            }
            ViewBag.marca_modelo_fk   = new SelectList(db.marca_modelo, "idmarca_modelo", "marca_modelo_string", equipo.marca_modelo_fk);
            ViewBag.proveedor_fk      = new SelectList(db.proveedor, "idproveedor", "nombre_comercial", equipo.proveedor_fk);
            ViewBag.responsable_fk    = new SelectList(db.responsable, "idresponsable", "cedula_ruc", equipo.responsable_fk);
            ViewBag.tipo_de_equipo_fk = new SelectList(db.tipo_de_equipo, "idtipo_de_equipo", "categoria", equipo.tipo_de_equipo_fk);
            ViewBag.ubicacion_fk      = new SelectList(db.ubicacion, "idubicacion", "nombre", equipo.ubicacion_fk);

            return(View(equipo));
        }
        public ActionResult Edit([Bind(Include = "idrack,codigo,nombre,ubicacion_fk,orden,altura_u,prof_inch,proveedor_fk")] rack rack)
        {
            //*****//  ViewBag.equipos = new SelectList(db.equipo, "idequipo", "s_equipo_numero_serie");   //*****//

            if (ModelState.IsValid)
            {
                //*****// down


                db.Entry(rack).State = EntityState.Modified;
                db.SaveChanges();


                /*Equipo por rack*/
                if (TempData["epr"] != null)
                {
                    using (var dbDinamo = new cloudmanageEntities())
                    {
                        foreach (equipo_por_rack _epr in (List <equipo_por_rack>)TempData["epr"])
                        {
                            if (dbDinamo.equipo_por_rack.Find(_epr.equipo_fk, _epr.rack_fk) != null)
                            {
                                _epr.equipo = null;
                                _epr.rack   = null;


                                if (_epr.observaciones == "DELETED")
                                {
                                    db.Entry(_epr).State = EntityState.Deleted;
                                }
                                else
                                {
                                    db.Entry(_epr).State = EntityState.Modified;
                                }
                            }
                            else
                            {
                                equipo_por_rack newItem = new equipo_por_rack();

                                newItem.equipo    = null;
                                newItem.equipo_fk = _epr.equipo_fk;
                                newItem.rack_fk   = rack.idrack;
                                // newItem.observaciones = _epr.observaciones;
                                newItem.inicia_u = _epr.inicia_u;

                                db.Entry(newItem).State = EntityState.Added;
                            }
                        }
                    }
                }

                //*****// up

                db.SaveChanges();



                // Get contained equipos
                rack racky = db.rack.Find(rack.idrack);          // db.rack.Include(s => s.equipo_por_rack).FirstOrDefault(x => x.idrack == rack.idrack);
                if (racky == null)
                {
                    return(HttpNotFound());
                }
                equipo        tempOne     = new equipo();
                List <equipo> equiposRack = new List <equipo>();
                foreach (equipo_por_rack _exr in racky.equipo_por_rack)
                {
                    _exr.equipo      = db.equipo.Find(_exr.equipo_fk);
                    tempOne          = new equipo();
                    tempOne.idequipo = _exr.equipo.idequipo;
                    tempOne.altura_u = _exr.equipo.altura_u;
                    tempOne.s_equipo_numero_serie = _exr.equipo.s_equipo_numero_serie + " " + _exr.equipo.marca_modelo.modelo + " (" + _exr.equipo.altura_u + "U)";
                    tempOne.comentarios           = _exr.inicia_u.ToString(); //OJO//

                    equiposRack.Add(tempOne);
                }
                ViewBag.equiposRack = equiposRack;


                // Recover current existent values.
                List <equipo_por_rack> exr = racky.equipo_por_rack.ToList();    //OJO//
                TempData["epr"] = exr;


                // GENERAL BEHAVIOR OK   return RedirectToAction("Index");
                // New Behavior
                ViewBag.proveedor_fk = new SelectList(db.proveedor, "idproveedor", "nombre_comercial", rack.proveedor_fk);
                ViewBag.ubicacion_fk = new SelectList(db.ubicacion, "idubicacion", "nombre", rack.ubicacion_fk);
                ViewBag.equipos      = GetEquiposSelectList();
                return(View(rack));
                // End new behavior
            }
            ViewBag.proveedor_fk = new SelectList(db.proveedor, "idproveedor", "nombre_comercial", rack.proveedor_fk);
            ViewBag.ubicacion_fk = new SelectList(db.ubicacion, "idubicacion", "nombre", rack.ubicacion_fk);
            return(View(rack));
        }