예제 #1
0
        public ActionResult EditInterventionState(InterventionViewModel interventionmodel)
        {
            string            interventionState  = interventionmodel.SelectedState;
            InterventionState interventionStatus = new InterventionState();

            Enum.TryParse(interventionState, out interventionStatus);
            int interventionStateInt   = (int)interventionStatus;
            InterventionState newState = (InterventionState)interventionStateInt;

            if (Engineer.updateInterventionState(interventionmodel.Id, newState))
            {
                var interventionList = Engineer.GetAllInterventions(Engineer.getDetail().Id).ToList();
                var interventions    = new List <InterventionViewModel>();
                BindIntervention(interventionList, interventions);
                var model = new SiteEngineerViewInterventionModel()
                {
                    Interventions = interventions
                };
                return(View("InterventionList", model));
            }
            else
            {
                ViewBag.error = "Operation failed, either the state is wrong or you are not authorized";
                Intervention          intervention = Engineer.getNonGuidInterventionById(interventionmodel.Id);
                InterventionViewModel model        = BindSingleIntervention(intervention);
                return(View(model));
            }
        }
예제 #2
0
        /// <summary>
        /// Display the create intervention form
        /// GET:~/SiteEngineer/SiteEngineer/CreateIntervention
        /// </summary>
        /// <returns></returns>
        public ActionResult CreateIntervention()
        {
            var Clients         = Engineer.getClients();
            var viewClientsList = new List <SelectListItem>();

            foreach (var client in Clients)
            {
                viewClientsList.Add(new SelectListItem()
                {
                    Text = client.Name, Value = client.Id.ToString()
                });
            }

            var InterventionTypes     = Engineer.getInterventionTypes();
            var viewInterventionTypes = new List <SelectListItem>();

            foreach (var type in InterventionTypes)
            {
                viewInterventionTypes.Add(new SelectListItem()
                {
                    Text = type.Name.ToString(), Value = type.Id.ToString()
                });
            }
            var model = new SiteEngineerViewInterventionModel()
            {
                ViewInterventionTypeList = viewInterventionTypes, ViewClientsList = viewClientsList
            };

            return(View(model));
        }
예제 #3
0
        // GET: SiteEngineer/InterventionList
        /// <summary>
        /// Display a list of interventions
        /// GET:~/SiteEngineer/SiteEngineer/InterventionList
        /// </summary>
        /// <returns></returns>
        public ActionResult InterventionList()
        {
            Guid enigerrId        = Engineer.getDetail().Id;
            var  interventionList = Engineer.GetAllInterventions(Engineer.getDetail().Id).ToList();

            var interventions = new List <InterventionViewModel>();

            BindIntervention(interventionList, interventions);
            var model = new SiteEngineerViewInterventionModel()
            {
                Interventions = interventions
            };

            return(View(model));
        }
예제 #4
0
        public ActionResult CreateIntervention(SiteEngineerViewInterventionModel viewmodel)
        {
            if (ModelState.IsValid)
            {
                decimal           hours         = (decimal)viewmodel.Intervention.Hours;
                decimal           costs         = (decimal)viewmodel.Intervention.Costs;
                int               lifeRemaining = 100;
                string            comments      = viewmodel.Intervention.Comments;
                InterventionState state         = InterventionState.Proposed;

                Guid     clientId        = new Guid(viewmodel.SelectedClient);
                DateTime dateCreate      = DateTime.Now;
                DateTime dateFinish      = (DateTime)viewmodel.Intervention.DateFinish;
                DateTime dateRecentVisit = DateTime.Now;


                Guid         createdBy        = (Guid)Engineer.getDetail().Id;
                Guid         typeId           = new Guid(viewmodel.SelectedType);
                Intervention new_intervention = new Intervention(hours, costs, lifeRemaining, comments, state,
                                                                 dateCreate, dateFinish, dateRecentVisit, typeId, clientId, createdBy, null);
                Engineer.createIntervention(new_intervention);

                var interventionList = Engineer.getInterventionsByClient(clientId).ToList();
                var interventions    = new List <InterventionViewModel>();
                BindIntervention(interventionList, interventions);

                Client          client       = Engineer.getClientById(clientId);
                ClientViewModel clientVmodel = new ClientViewModel();
                clientVmodel = BindSingleClient(client);
                var model = new SiteEngineerViewClientModel()
                {
                    Interventions = interventions, Client = clientVmodel
                };
                return(View("ClientDetails", model));
            }
            return(View());
        }
예제 #5
0
        public ActionResult InterventionList(SiteEngineerViewInterventionModel model)
        {
            InterventionViewModel selectedIntervention = model.Intervention;

            return(View("EditIntervention", selectedIntervention));
        }