public ActionResult CreateIntervention(CreateNewInterventionViewModel viewModel)
        {
            try
            {
                siteEngineerHelper.CreateIntervention(viewModel.clientId, viewModel.interventionTypeId, viewModel.interventionCost, viewModel.interventionHours);
                ModelState.AddModelError("success", "Intervention Created Successfully!");
            }
            catch (Exception ex)
            {
                ModelState.AddModelError(string.Empty, ex);
            }
            var clients    = siteEngineerHelper.ListCurrentClients();
            var listItems3 = new List <ListItem>();

            foreach (var client in clients)
            {
                listItems3.Add(new ListItem {
                    Text = client.ClientName, Value = client.ClientId.ToString()
                });
            }
            ViewBag.clients = new SelectList(listItems3, "Value", "Text", listItems3.Where(i => i.Value.Equals(viewModel.clientId)).Select(i => i));
            var interventionTypes2 = siteEngineerHelper.ListInterventionTypes();
            var listItems4         = new List <ListItem>();

            foreach (var type in interventionTypes2)
            {
                listItems4.Add(new ListItem {
                    Text = type.InterventionTypeName, Value = type.InterventionTypeId.ToString()
                });
            }
            ViewBag.interventionTypes = new SelectList(listItems4, "Value", "Text", listItems4.Where(i => i.Value.Equals(viewModel.interventionTypeId)).Select(i => i));
            return(View(viewModel));
        }
        /// <summary>
        /// This method is used for the view page of creating interventions
        /// </summary>
        /// <returns>View</returns>
        public ActionResult CreateIntervention()
        {
            var viewModel = new CreateNewInterventionViewModel();

            try
            {
                var clients = siteEngineerHelper.ListCurrentClients();
                if (clients.Count == 0)
                {
                    Exception ex = new NoClientCreatedException();
                    ModelState.AddModelError("alert", ex.Message);
                }
                var listItems = new List <ListItem>();
                foreach (var client in clients)
                {
                    listItems.Add(new ListItem {
                        Text = client.ClientName, Value = client.ClientId.ToString()
                    });
                }
                ViewBag.clients = new SelectList(listItems, "Value", "Text");
                var interventionTypes = siteEngineerHelper.ListInterventionTypes();
                var listItems2        = new List <ListItem>();
                foreach (var type in interventionTypes)
                {
                    listItems2.Add(new ListItem {
                        Text = type.InterventionTypeName, Value = type.InterventionTypeId.ToString()
                    });
                }
                ViewBag.interventionTypes   = new SelectList(listItems2, "Value", "Text", interventionTypes.FirstOrDefault());
                viewModel.interventionCost  = interventionTypes.FirstOrDefault().InterventionTypeCost;
                viewModel.interventionHours = interventionTypes.FirstOrDefault().InterventionTypeHours;
            }
            catch (Exception ex)
            {
                ModelState.AddModelError(string.Empty, ex);
            }
            return(View(viewModel));
        }