Example #1
0
        public async Task <IActionResult> Edit(int id, [Bind("IncidentId,CustomerId,ProductId,TechnicianId,title,Description,Dateopened,Dateclosed")] IncidentsViewModel incidentVM)
        {
            if (id != incidentVM.IncidentId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    Incident incident = new Incident();
                    incident = _mapper.Map <Incident>(incidentVM);

                    _context.Update(incident);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!IncidentExists(incidentVM.IncidentId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["CustomerId"]   = new SelectList(_context.Customers, "CustomerId", "Address", incidentVM.CustomerId);
            ViewData["ProductId"]    = new SelectList(_context.Products, "ProductId", "Code", incidentVM.ProductId);
            ViewData["TechnicianId"] = new SelectList(_context.Technicians, "TechnicianId", "Technicianemail", incidentVM.TechnicianId);
            return(View(incidentVM));
        }
Example #2
0
        // GET: Incidents/Details/5
        /// <summary>
        /// Widok detali incydentu.
        /// </summary>
        /// <param name="id">ID incydentu.</param>
        /// <returns>Widok detali incydentu lub listę incydentów przy braku uprawnień.</returns>
        public ActionResult Details(int?id)
        {
            bool authorized = false;

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Incident incident = db.Incidents.Find(id);

            if (incident == null)
            {
                return(HttpNotFound());
            }

            IncidentsViewModel viewModel = new IncidentsViewModel();

            viewModel.ID             = incident.ID;
            viewModel.About          = incident.About;
            viewModel.AddDate        = incident.AddDate;
            viewModel.Address        = incident.Address;
            viewModel.City           = incident.City;
            viewModel.DateOfIncident = incident.DateOfIncident;
            viewModel.Lat            = incident.Lat;
            viewModel.Long           = incident.Long;
            viewModel.TimeOfIncident = incident.TimeOfIncident;
            viewModel.Type           = incident.Type;
            viewModel.ZipCode        = incident.ZipCode;
            viewModel.Participants   = db.Participants.Where(p => p.incidentID == incident.ID);

            var incidentRoles = db.ServiceParticipations.Where(s => s.IncidentId == id);

            //(from roles in db.ServiceParticipations where roles.IncidentId == id select roles.RoleId);
            viewModel.Roles = GetRoles();
            foreach (RoleViewModel r in viewModel.Roles)
            {
                foreach (var i in incidentRoles)
                {
                    if (r.RoleId == i.RoleId)
                    {
                        r.Selected = true;
                        if (User.IsInRole(r.RoleName))
                        {
                            authorized          = true;
                            viewModel.confirmed = i.confirmed;
                        }
                    }
                }
            }

            if (authorized)
            {
                return(View(viewModel));
            }
            else
            {
                return(RedirectToAction("Index"));
            }
        }
Example #3
0
        public ActionResult Create([Bind(Include = "ID,AddDate,DateOfIncident,TimeOfIncident,Type,About,Lat,Long,Address,City,ZipCode,Roles")] IncidentsViewModel incidentView)
        {
            if (ModelState.IsValid)
            {
                Incident incident = new Incident();
                var      query    = (from t in db.IncidentTypes where t.Name.Equals(incidentView.Type) select t.TypeID).FirstOrDefault();
                incident.TypeID         = query;
                incident.About          = incidentView.About;
                incident.AddDate        = incidentView.AddDate;
                incident.Address        = incidentView.Address;
                incident.City           = incidentView.City;
                incident.DateOfIncident = incidentView.DateOfIncident;
                incident.Lat            = incidentView.Lat;
                incident.Long           = incidentView.Long;
                incident.TimeOfIncident = incidentView.TimeOfIncident;
                incident.Type           = incidentView.Type;
                incident.ZipCode        = incidentView.ZipCode;
                db.Incidents.Add(incident);
                foreach (RoleViewModel r in incidentView.Roles)
                {
                    if (r.Selected == true)
                    {
                        ServiceParticipation part = new ServiceParticipation();
                        var role = appDb.Roles.SingleOrDefault(o => o.Id == r.RoleId);
                        part.RoleName   = role.Name;
                        part.RoleId     = r.RoleId;
                        part.IncidentId = incidentView.ID;
                        if (User.IsInRole(r.RoleName))
                        {
                            part.confirmed = true;
                        }
                        else
                        {
                            part.confirmed = false;
                        }
                        db.ServiceParticipations.Add(part);
                    }
                }
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            List <SelectListItem> li = new List <SelectListItem>();
            var allTypes             = from types in db.IncidentTypes select types;

            foreach (var type in allTypes)
            {
                li.Add(new SelectListItem {
                    Text = type.Name, Value = type.Name
                });
            }

            ViewData["Types"] = li;

            return(View(incidentView));
        }
Example #4
0
        public ItemsPage()
        {
            InitializeComponent();

            _registrationService    = RegistrationService.Instance;
            _restService            = RestService.Instance;
            _incidentUpdateRegistry = IncidentUpdateRegistry.Instance;

            BindingContext = _viewModel = new IncidentsViewModel(new Command(LoadScopeIfNotBusyYet));
        }
Example #5
0
        public ActionResult Edit([Bind(Include = "ID,AddDate,DateOfIncident,TimeOfIncident,Type,About,Lat,Long,Address,City,ZipCode,Roles")] IncidentsViewModel incidentView)
        {
            if (ModelState.IsValid)
            {
                Incident incident = new Incident();
                var      query    = (from t in db.IncidentTypes where t.Name.Equals(incidentView.Type) select t.TypeID).FirstOrDefault();
                incident.ID              = incidentView.ID;
                incident.TypeID          = query;
                incident.About           = incidentView.About;
                incident.AddDate         = incidentView.AddDate;
                incident.Address         = incidentView.Address;
                incident.City            = incidentView.City;
                incident.DateOfIncident  = incidentView.DateOfIncident;
                incident.Lat             = incidentView.Lat;
                incident.Long            = incidentView.Long;
                incident.TimeOfIncident  = incidentView.TimeOfIncident;
                incident.Type            = incidentView.Type;
                incident.ZipCode         = incidentView.ZipCode;
                db.Entry(incident).State = EntityState.Modified;
                var services = db.ServiceParticipations.Where(s => s.IncidentId == incidentView.ID);
                foreach (var s in services)
                {
                    db.ServiceParticipations.Remove(s);
                }
                foreach (RoleViewModel r in incidentView.Roles)
                {
                    if (r.Selected == true)
                    {
                        ServiceParticipation part = new ServiceParticipation();
                        var role = appDb.Roles.SingleOrDefault(o => o.Id == r.RoleId);
                        part.RoleName   = role.Name;
                        part.RoleId     = r.RoleId;
                        part.IncidentId = incidentView.ID;
                        if (User.IsInRole(r.RoleName))
                        {
                            part.confirmed = true;
                        }
                        else
                        {
                            part.confirmed = false;
                        }
                        db.ServiceParticipations.Add(part);
                        //db.SaveChanges();
                    }
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(incidentView));
        }
Example #6
0
        public async Task <IActionResult> Create([Bind("IncidentId,CustomerId,ProductId,TechnicianId,title,Description,Dateopened,Dateclosed")] IncidentsViewModel incidentVM)
        {
            if (ModelState.IsValid)
            {
                Incident incident = new Incident();
                incident = _mapper.Map <Incident>(incidentVM);
                _context.Add(incident);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["CustomerId"]   = new SelectList(_context.Customers, "CustomerId", "Address", incidentVM.CustomerId);
            ViewData["ProductId"]    = new SelectList(_context.Products, "ProductId", "Code", incidentVM.ProductId);
            ViewData["TechnicianId"] = new SelectList(_context.Technicians, "TechnicianId", "Technicianemail", incidentVM.TechnicianId);
            return(View(incidentVM));
        }
        // GET: ListIncidentsP2
        public IActionResult ListIncidentsP3()
        {
            var incidentsViewModel = new IncidentsViewModel()
            {
                Incidents = _context.Incident
                            .Include(i => i.Creator)
                            .Include(i => i.FEAssigned)
                            .Include(i => i.IncidentPriority)
                            .Include(i => i.IncidentStatus)
                            .Include(i => i.IncidentType)
                            .Include(i => i.Receiver)
                            .Include(i => i.PurchaseOrder)
                            .Include(i => i.Site).Where(i => i.IncidentPriorityId == 3).Where(i => i.IncidentStatusId < 3)
                            .ToList()
            };

            return(View(incidentsViewModel));
        }
Example #8
0
        public IActionResult List(String filter)
        {
            var incidentOptions = new QueryOptions <Incident>
            {
                Includes = "Customer, Product, Technician"
            };

            if (filter == null || filter == "All")
            {
                //var incident = context.Incidents.Include(m=>m.Customer).Include(m=>m.Product).Include(m => m.Technician).OrderBy(m => m.IncidentID).ToList();
                incidentOptions.OrderBy = c => c.Title;
                var incidents = new IncidentsViewModel
                {
                    Incidents     = (List <Incident>)data.Incidents.List(incidentOptions),
                    IncidentTitle = " Incident Manager"
                };
                ViewBag.ALink = "All";
                return(View("list", incidents));
            }
            else if (filter == "Open")
            {
                incidentOptions.Where   = c => c.DateClosed == null;
                incidentOptions.OrderBy = c => c.Title;
                var incidents = new IncidentsViewModel
                {
                    Incidents     = (List <Incident>)data.Incidents.List(incidentOptions),
                    IncidentTitle = " Incident Manager"
                };
                ViewBag.ALink = "Open";
                return(View("list", incidents));
            }
            else
            {
                incidentOptions.Where   = c => c.DateClosed == null;
                incidentOptions.OrderBy = c => c.Title;
                var incidents = new IncidentsViewModel
                {
                    Incidents     = (List <Incident>)data.Incidents.List(incidentOptions),
                    IncidentTitle = " Incident Manager"
                };
                ViewBag.ALink = "Unassigned";
                return(View("list", incidents));
            }
        }
Example #9
0
        public ActionResult CreateIncident(string address)
        {
            List <SelectListItem> li = new List <SelectListItem>();
            var query = from types in db.IncidentTypes select types;

            foreach (var type in query)
            {
                li.Add(new SelectListItem {
                    Text = type.Name, Value = type.Name
                });
            }

            ViewData["Types"] = li;

            IncidentsViewModel newIncident = new IncidentsViewModel();

            newIncident.AddDate        = DateTime.Today.Date;
            newIncident.DateOfIncident = DateTime.Today.Date;
            newIncident.TimeOfIncident = DateTime.Today.TimeOfDay;
            newIncident.Roles          = GetRoles();

            if (address != "")
            {
                char[]   separators  = { ',' };
                string[] fullAddress = address.Split(separators);


                if (fullAddress[1].Any(char.IsDigit))
                {
                    newIncident.ZipCode = fullAddress[1].Substring(0, 7).Trim();
                    newIncident.City    = fullAddress[1].Substring(8).Trim();
                }
                else
                {
                    newIncident.ZipCode = "XX-XXX";
                    newIncident.City    = fullAddress[1].Trim();
                }

                newIncident.Address = fullAddress[0].Trim();
            }

            return(View("Create", newIncident));
        }
Example #10
0
        // GET: Incidents/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var incident = await _context.Incidents.FindAsync(id);

            IncidentsViewModel incidentsViewModel = _mapper.Map <IncidentsViewModel>(incident);

            if (incident == null)
            {
                return(NotFound());
            }
            ViewData["CustomerId"]   = new SelectList(_context.Customers, "CustomerId", "Address", incident.CustomerId);
            ViewData["ProductId"]    = new SelectList(_context.Products, "ProductId", "Code", incident.ProductId);
            ViewData["TechnicianId"] = new SelectList(_context.Technicians, "TechnicianId", "Technicianemail", incident.TechnicianId);
            return(View(incidentsViewModel));
        }
Example #11
0
        /// <summary>
        /// Widok strony głównej z listą incydentów i opcjami filtrowania incydentów z danego okresu.
        /// </summary>
        /// <returns>
        /// Widok strony głównej z listą incydentów.
        /// </returns>
        public ActionResult Index()
        {
            DateTime incidentsFromDate = DateTime.Now.AddDays(-30);
            DateTime incidentsToDate   = DateTime.Now;

            ViewBag.endDate   = incidentsToDate.ToString("dd/M/yyyy", CultureInfo.InvariantCulture);
            ViewBag.startDate = incidentsFromDate.ToString("dd/M/yyyy", CultureInfo.InvariantCulture);

            List <IncidentsViewModel> list = new List <IncidentsViewModel>();

            var incidents = (from i in db.Incidents
                             where (i.DateOfIncident >= incidentsFromDate) && (i.DateOfIncident <= incidentsToDate)
                             select i).ToList();

            if (incidents != null)
            {
                foreach (Incident i in incidents)
                {
                    var services = db.ServiceParticipations.Where(p => p.IncidentId == i.ID);
                    foreach (var s in services)
                    {
                        if (User.IsInRole(s.RoleName) || User.IsInRole("Viewer"))
                        {
                            IncidentsViewModel model = new IncidentsViewModel();
                            IncidentType       type  = dbt.IncidentTypes.SingleOrDefault(t => t.TypeID == i.TypeID);
                            model.ID             = i.ID;
                            model.Address        = i.Address;
                            model.City           = i.City;
                            model.Lat            = i.Lat;
                            model.Long           = i.Long;
                            model.Type           = i.Type;
                            model.IconUrl        = type.IconUrl;
                            model.DateOfIncident = i.DateOfIncident;
                            list.Add(model);
                            break;
                        }
                    }
                }
            }
            return(View(list));
        }
Example #12
0
        // GET: Incidents/Details/5
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var incident = await _context.Incidents
                           .Include(i => i.Customer)
                           .Include(i => i.Product)
                           .Include(i => i.Technician)
                           .FirstOrDefaultAsync(m => m.IncidentId == id);

            if (incident == null)
            {
                return(NotFound());
            }
            IncidentsViewModel incidentsViewModel = _mapper.Map <IncidentsViewModel>(incident);

            return(View(incidentsViewModel));
        }
Example #13
0
        // GET: Incidents/Create
        /// <summary>
        /// Widok tworzenia incydentu.
        /// </summary>
        /// <returns>Widok tworzenia incydentu z modelem uzupełnionym datami oraz listą typów incydentów.</returns>
        public ActionResult Create()
        {
            IncidentsViewModel newIncident = new IncidentsViewModel();

            newIncident.AddDate        = DateTime.Today.Date;
            newIncident.DateOfIncident = DateTime.Today.Date;
            newIncident.TimeOfIncident = DateTime.Today.TimeOfDay;
            newIncident.Roles          = GetRoles();

            List <SelectListItem> li = new List <SelectListItem>();
            var query = from types in db.IncidentTypes select types;

            foreach (var type in query)
            {
                li.Add(new SelectListItem {
                    Text = type.Name, Value = type.Name
                });
            }
            ViewData["Types"] = li;

            return(this.View(newIncident));
        }
Example #14
0
        public ActionResult Edit(int id)
        {
            var incident = _context.Incidents.SingleOrDefault(i => i.Id == id);

            if (incident == null)
            {
                return(HttpNotFound());
            }

            var viewModel = new IncidentsViewModel();

            viewModel.Incident = new Incident
            {
                Id       = incident.Id,                 // Created automatically in Database
                Name     = incident.Name,
                Title    = incident.Title,
                Severity = incident.Severity,
                Status   = incident.Status
            };

            return(PartialView(viewModel));
        }
Example #15
0
        public ActionResult Save(Incident incident)
        {
            if (!ModelState.IsValid)
            {
                var viewModel = new IncidentsViewModel
                {
                    Incident = incident
                };

                return(View("Edit", viewModel));
            }

            if (incident.Id == 0)
            {
                var lastItemInDb = _context.Incidents.ToList().Last();
                int num          = Convert.ToInt32(lastItemInDb.Name.Replace("PR-", ""));
                num          += 1;
                incident.Name = "PR-" + num;
                _context.Incidents.Add(incident);                                       // Add New Incident
            }
            else if (Request.Form["delete"] == "true")
            {
                var incidentInDb = _context.Incidents.Single(c => c.Id == incident.Id);
                _context.Incidents.Remove(incidentInDb);                                // Delete Incident
            }
            else
            {
                var incidentInDb = _context.Incidents.Single(c => c.Id == incident.Id); // Edit Incident
                incidentInDb.Title    = incident.Title;
                incidentInDb.Severity = incident.Severity;
                incidentInDb.Status   = incident.Status;
            }

            _context.SaveChanges();                                                     // Update Database due to e.g. Add, Delete or Modify

            return(RedirectToAction("Index", "Home"));
        }
Example #16
0
        // GET: Incidents
        /// <summary>
        /// Widok główny z listą incydentów.
        /// </summary>
        /// <returns>Widok z listą incydentów.</returns>
        public ActionResult Index()
        {
            List <IncidentsViewModel> list = new List <IncidentsViewModel>();
            var incidents = db.Incidents;

            if (incidents != null)
            {
                foreach (Incident i in incidents)
                {
                    var services = db.ServiceParticipations.Where(p => p.IncidentId == i.ID);
                    foreach (var s in services)
                    {
                        if (User.IsInRole(s.RoleName) || User.IsInRole("Viewer"))
                        {
                            IncidentsViewModel model = new IncidentsViewModel();
                            IncidentType       type  = dbt.IncidentTypes.SingleOrDefault(t => t.TypeID == i.TypeID);
                            model.ID             = i.ID;
                            model.AddDate        = i.AddDate;
                            model.DateOfIncident = i.DateOfIncident;
                            model.TimeOfIncident = i.TimeOfIncident;
                            model.Address        = i.Address;
                            model.City           = i.City;
                            model.ZipCode        = i.ZipCode;
                            model.Lat            = i.Lat;
                            model.Long           = i.Long;
                            model.Type           = i.Type;
                            model.IconUrl        = type.IconUrl;
                            model.confirmed      = s.confirmed;
                            list.Add(model);
                            break;
                        }
                    }
                }
            }
            return(View(list));
        }
Example #17
0
        // GET: Incidents/Edit/5
        /// <summary>
        /// Widok edycji incydentów.
        /// </summary>
        /// <param name="id">ID incydentu.</param>
        /// <returns>Widok edycji incydentu lub listy incydentów przy braku uprawnień.</returns>
        public ActionResult Edit(int?id)
        {
            bool authorized = false;

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Incident incident = db.Incidents.Find(id);

            incident.Lat.ToString().Replace(",", ".");
            incident.Long.ToString().Replace(",", ".");
            IncidentsViewModel viewModel = new IncidentsViewModel();

            viewModel.ID             = incident.ID;
            viewModel.About          = incident.About;
            viewModel.AddDate        = incident.AddDate;
            viewModel.Address        = incident.Address;
            viewModel.City           = incident.City;
            viewModel.DateOfIncident = incident.DateOfIncident;
            viewModel.Lat            = incident.Lat;
            viewModel.Long           = incident.Long;
            viewModel.TimeOfIncident = incident.TimeOfIncident;
            viewModel.Type           = incident.Type;
            var incidentRoles = db.ServiceParticipations.Where(s => s.IncidentId == id);

            //     (from roles in db.ServiceParticipations where roles.IncidentId == id select roles.RoleId);
            viewModel.Roles = GetRoles();
            foreach (RoleViewModel r in viewModel.Roles)
            {
                foreach (var i in incidentRoles)
                {
                    if (r.RoleId == i.RoleId)
                    {
                        r.Selected = true;
                        if (User.IsInRole(r.RoleName) && i.confirmed == true)
                        {
                            authorized = true;
                        }
                    }
                }
            }
            if (incident == null)
            {
                return(HttpNotFound());
            }
            List <SelectListItem> li = new List <SelectListItem>();
            var query = from types in db.IncidentTypes select types;

            foreach (var type in query)
            {
                li.Add(new SelectListItem {
                    Text = type.Name, Value = type.Name
                });
            }

            ViewData["Types"] = li;

            if (authorized)
            {
                return(View(viewModel));
            }
            else
            {
                return(RedirectToAction("Index"));
            }
        }
Example #18
0
        // GET: Portal
        public ActionResult Index()
        {
            Contact user = (Contact)
                           context.Retrieve(
                "contact", (Guid)Session["guid"], new Microsoft.Xrm.Sdk.Query.ColumnSet(true));

            IQueryable <Incident> incidents =
                context.IncidentSet
                .Where(a => a.CustomerId.Equals(user.ContactId))
                .Select(row => row);

            string userName = user.FullName;

            ViewBag.User = userName;


            List <IncidentsViewModel> IncidentsList = new List <IncidentsViewModel>();

            foreach (Incident item in incidents)
            {
                IncidentsViewModel ivm = new IncidentsViewModel();
                ivm.IncidentID     = item.IncidentId.ToString();
                ivm.CaseNumber     = item.TicketNumber;
                ivm.Client         = item.CustomerId.Name;
                ivm.DateOfCreation = item.CreatedOn.HasValue ? item.CreatedOn.Value.ToLocalTime().ToString("yyyy-MM-dd HH:mm") : "";
                ivm.State          = item.StateCode.Value == 1 ? "Aktywna" : "Nieaktywna";

                IncidentsList.Add(ivm);
            }

            ViewBag.Incidents = incidents;

            #region codeBehind
            //var xrm = new XrmServiceContext("Xrm");
            //var cases = xrm.IncidentSet;
            //if (Session["field2"] == null)
            //{
            //    if (Session["czyklient"] != null)
            //    {
            //        cases = xrm.IncidentSet
            //           .Where(c => ((c.CustomerId.Id == Contact.ContactId) || (c.expl_Przedstawiciel.Id == Contact.ContactId)) && c.IncidentStageCode.Value != 969330000);
            //    }
            //    else if (Session["czykonto"] != null)
            //    {
            //        cases = xrm.IncidentSet
            //               .Where(c => (c.CustomerId.Id == kontoid) && c.IncidentStageCode.Value != 969330000);
            //    }
            //    else
            //    {
            //        cases = xrm.IncidentSet
            //             .Where(c => ((c.CustomerId.Id == Contact.ContactId) || (c.expl_Przedstawiciel.Id == Contact.ContactId)) && c.IncidentStageCode.Value != 969330000);
            //    }
            //}
            //else

            //    cases = xrm.IncidentSet
            //        .Where(c => (c.expl_Polisa.Id == (Guid)Session["field2"]));

            #endregion codeBehind


            return(View(IncidentsList));
        }
Example #19
0
        public IncidentsPage()
        {
            InitializeComponent();

            BindingContext = viewModel = new IncidentsViewModel();
        }
Example #20
0
        public ActionResult Index(int page = 1, string search = "")
        {
            IEnumerable <Incident> incidents         = null;
            IEnumerable <Incident> incidentsFiltered = null;

            if (page < 1)
            {
                page = 1;
            }

            // Catch SqlException or any Exception e.g. Database connection Error etc
            try
            {
                int pageSize       = 10;
                int excludeEntries = (pageSize * page) - pageSize;

                if (search != "")
                {
                    incidentsFiltered = _context.Incidents
                                        .Where(s => s.Title.Contains(search.ToLower()));

                    var temp = incidentsFiltered.ToList();
                }
                else
                {
                    incidentsFiltered = _context.Incidents;
                }

                // Paging
                incidents = incidentsFiltered
                            .OrderBy(i => i.Id)
                            .Skip(excludeEntries)
                            .Take(pageSize);
            }
            catch (Exception)
            {
                // Handled in View over the Model == null
            }

            if (incidents != null)
            {
                var pageIncidents = new IncidentsViewModel()
                {
                    Incidents  = incidents,
                    Minor      = incidentsFiltered.ToList().FindAll(incident => incident.Severity == Severity.Minor).Count(),
                    Major      = incidentsFiltered.ToList().FindAll(incident => incident.Severity == Severity.Major).Count(),
                    Critical   = incidentsFiltered.ToList().FindAll(incident => incident.Severity == Severity.Critical).Count(),
                    Open       = incidentsFiltered.ToList().FindAll(incident => incident.Status == Status.Open).Count(),
                    InProgress = incidentsFiltered.ToList().FindAll(incident => incident.Status == Status.InProgress).Count(),
                    Resolved   = incidentsFiltered.ToList().FindAll(incident => incident.Status == Status.Resolved).Count(),
                    Closed     = incidentsFiltered.ToList().FindAll(incident => incident.Status == Status.Closed).Count()
                };

                ViewData["page"]   = page;
                ViewData["search"] = search;

                return(View(pageIncidents));
            }

            return(View());
        }
 public IncidentsPage()
 {
     InitializeComponent();
     Title          = "Reported Incidents";
     BindingContext = _viewModel = new IncidentsViewModel();
 }