Ejemplo n.º 1
0
        public ActionResult MarkAsDone(int id)
        {
            var logic           = new SRLogic();
            var markasdonemodel = new MarkAsDoneViewModel();
            var result          = GetLoggedInUser(new[] { Role.Cleaner, Role.Engineer, Role.HeadCleaner, Role.HeadEngineer });

            if (result is ActionResult)
            {
                return(result as ActionResult);
            }
            var user = (User)result;


            if (user.Role == Role.HeadEngineer || user.Role == Role.Engineer)
            {
                var servicetomarkasdone = logic.GetRepairToEdit(id);
                markasdonemodel.RepairMarkAsDone = servicetomarkasdone;
                markasdonemodel.Serviceid        = servicetomarkasdone.Id;
            }
            if (user.Role == Role.HeadCleaner || user.Role == Role.Cleaner)
            {
                var servicetomarkasdone = logic.GetCleaningToEdit(id);
                markasdonemodel.CleaningMarkAsDone = servicetomarkasdone;
                markasdonemodel.Serviceid          = servicetomarkasdone.Id;
            }
            markasdonemodel.User = user;
            return(View(markasdonemodel));
        }
Ejemplo n.º 2
0
        public ActionResult MarkAsDone(MarkAsDoneViewModel viewmodel)
        {
            var result = GetLoggedInUser(new[] { Role.Cleaner, Role.Engineer, Role.HeadCleaner, Role.HeadEngineer });

            if (result is ActionResult)
            {
                return(result as ActionResult);
            }
            var user = (User)result;

            if (user.Role == Role.HeadEngineer || user.Role == Role.Engineer)
            {
                var rlist          = _repo.GetRepairFromId(viewmodel.Serviceid);
                var repairtofinish = rlist.ElementAt(0);
                _repo.SetTramStatusToIdle(viewmodel.TramIdtoCarryOver);
                repairtofinish.EndDate  = DateTime.Now;
                repairtofinish.Solution = viewmodel.Solution;
                if (string.IsNullOrEmpty(viewmodel.Solution))
                {
                    viewmodel.Error            = "Fill the text field and try again!";
                    viewmodel.User             = user;
                    viewmodel.RepairMarkAsDone = repairtofinish;
                    return(View(viewmodel));
                }
                _repo.EditService(repairtofinish);
            }
            if (user.Role == Role.HeadCleaner || user.Role == Role.Cleaner)
            {
                var clist         = _repo.GetCleanFromId(viewmodel.Serviceid);
                var cleantofinish = clist.ElementAt(0);
                _repo.SetTramStatusToIdle(viewmodel.TramIdtoCarryOver);
                cleantofinish.EndDate  = DateTime.Now;
                cleantofinish.Comments = viewmodel.Comment;
                if (string.IsNullOrEmpty(viewmodel.Comment))
                {
                    viewmodel.Error = "Fill the text field and try again!";
                    viewmodel.User  = user;
                    viewmodel.CleaningMarkAsDone = cleantofinish;
                    return(View(viewmodel));
                }
                _repo.EditService(cleantofinish);
            }


            return(RedirectToAction("Index"));
        }