public ActionResult MaintenanceEdit([Bind(Include = "OrderId,Person, Description, facilities_Id, lastMaintenance")] maintenance maintenance)
        {
            if (ModelState.IsValid)
            {
                db.maintenance.Add(maintenance);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.facilities_Id = new SelectList(db.facilities, "Id", "Name", maintenance.facilities_Id);
            return(View(maintenance));
        }
Beispiel #2
0
        public ActionResult FacilityDetails(int?id)
        {
            if (id == null) //Error handling if "int? id" is missing from the link.
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            // Fetches the current row id selected in the table Client_Conection
            foreach (var item2 in db.Client_Conection.Where(c => c.user == id.ToString()))
            {
                IpClient = item2.ip;
            }
            // Fetches the current row id seleted in the table facilities and sets the facility IP to
            // the Client IP.
            foreach (var item in db.facilities.Where(c => c.Id == id))
            {
                item.IP = IpClient;
            }

            // Saves the changes to the DB
            db.SaveChanges();


            using (var db = new Models.watermentdbEntities())
            {
                var model = new MainViewModel
                {
                    //Getting desired data from the database, and returning it to the view.
                    Alarms     = db.alarms.Where(x => x.equipments_facilities_Id == id).Where(o => o.Status == "Active").OrderByDescending(x => x.AlarmOccured).ToList(),
                    Facilites  = db.facilities.Where(c => c.Id == id).ToList(),
                    Countries  = db.countries.ToList(),
                    Locations  = db.locations.ToList(),
                    Users      = db.User.ToList(),
                    Equipments = db.equipments.Where(x => x.facilities_Id == id).ToList(),
                };

                return(View(model));
            }
        }
        // GET: Main
        public ActionResult Index(int?id, string sortOrder)
        {
            //Compare user IDs and updates IP adresses.
            foreach (var item in db.facilities)
            {
                item.IP = "";
                foreach (var item2 in db2.Client_Conection.Where(c => c.user == item.Id.ToString()))
                {
                    item.IP = item2.ip;
                }
            }
            // Fetches the current row id seleted in the table facilities and sets the facility IP to
            // the Client IP.
            foreach (var item in db.facilities)
            {
                IpFacility = item.IP;

                if (PingHost(IpFacility) == true)
                {
                    item.FacilityStatus_Id = 2;
                }
                else
                {
                    item.FacilityStatus_Id = 1;
                }
            }
            db.SaveChanges();

            using (var db1 = new Models.watermentdbEntities())

            {
                var model = new MainViewModel
                {
                    //Getting desired data from the database, and returning it to the view.
                    Countries   = db.countries.Where(c => c.continents.Id == id).ToList(),
                    Alarms      = db.alarms.Where(o => o.Status == "Active").ToList(),
                    Equipment   = db.equipments.Include(c => c.alarms).Include(c => c.facilities).ToList(),
                    Locations   = db.locations.ToList(),
                    Maintenance = db.maintenance.OrderBy(x => x.LastMaintenance).Take(10).ToList(),
                    Facilites   = db.facilities.ToList(),

                    NumberOfFacilities = db.facilities.Count(),
                    NumberOnline       = db.facilities.Where(x => x.FacilityStatus_Id == 2).Count(),
                    NumberOffline      = db.facilities.Where(x => x.FacilityStatus_Id == 1).Count(),
                    noAlarms           = db.alarms.Where(x => x.Status == "Active").Count(),
                };
                return(View(model));
            }
        }