示例#1
0
        public ActionResult ProjectWizard(ProjectWizardVM model)
        {
            #region Fail Cases
            if (model.Name == null)
            {
                TempData["ProjectErrors"] += "<p class=\"text-danger\">You must define a Project Name</p>";
            }
            if (model.Details == null)
            {
                TempData["ProjectErrors"] += "<p class=\"text-danger\">You must define Project Details</p>";
            }
            if (model.ProjectManagerId == null)
            {
                TempData["ProjectErrors"] += "<p class=\"text-danger\">You must select a Project Manager</p>";
            }
            if (model.DeveloperIds.Count == 0)
            {
                TempData["ProjectErrors"] += "<p  class=\"text-danger\">You must select at least one Developer</p>";
            }
            if (model.SubmitterIds.Count == 0)
            {
                TempData["ProjectErrors"] += "<p  class=\"text-danger\">You must select at least one Submitter</p>";
            }
            #endregion
            if (ModelState.IsValid)
            {
                Project project = new Project();
                if (db.Projects.Any(p => p.Name == model.Name))
                {
                    TempData["ProjectErrors"] += "<p  class=\"text-danger\">A Project with this name already exists</p>";
                    return(Redirect(Request.UrlReferrer.ToString()));
                }
                project.Name       = model.Name;
                project.Details    = model.Details;
                project.Created    = DateTime.Now;
                project.IsArchived = false;
                db.Projects.Add(project);
                db.SaveChanges();
                TempData["ProjectErrors"] += "Success";

                projHelp.AddUserToProject(model.ProjectManagerId, project.Id);
                foreach (var userId in model.DeveloperIds)
                {
                    projHelp.AddUserToProject(userId, project.Id);
                }
                foreach (var userId in model.SubmitterIds)
                {
                    projHelp.AddUserToProject(userId, project.Id);
                }

                //return Redirect(returnUrl);
                return(Redirect(Request.UrlReferrer.ToString()));
            }
            else
            {
                return(Redirect(Request.UrlReferrer.ToString()));
            }
        }
示例#2
0
        public ActionResult ProjectWizard(ProjectWizardVM model)
        {
            #region fail cases
            ViewBag.Errors = "";
            if (model.ProjectManagerId == null)
            {
                ViewBag.Errors += "<p> You must select a Project Manager</p>";
            }
            if (model.DeveloperIds.Count < 1)
            {
                ViewBag.Errors += "<p> You must select at least one Developer </p>";
            }
            if (model.SubmitterIds.Count < 1)
            {
                ViewBag.Errors += "<p> You must select at least one Submmiter</p>";
            }
            if (ViewBag.Errors.Length > 0)
            {
                ViewBag.ProjectManagerId = new SelectList(roleHelper.UsersInRole("ProjectManager"), "Id", "FullName");
                ViewBag.DeveloperIds     = new MultiSelectList(roleHelper.UsersInRole("Developer"), "Id", "FullName");
                ViewBag.SubmitterIds     = new MultiSelectList(roleHelper.UsersInRole("Submitter"), "Id", "FullName");

                return(View(model));
            }
            #endregion
            if (ModelState.IsValid)
            {
                Project project = new Project();
                project.Name        = model.Name;
                project.Description = model.Description;
                project.Created     = DateTime.Now;
                project.DueDate     = DateTime.Now.AddDays(+100);
                project.IsArchive   = false;
                db.Projects.Add(project);
                db.SaveChanges();
                projectHelper.AddUserToProject(model.ProjectManagerId, project.Id);
                foreach (var userId in model.DeveloperIds)
                {
                    projectHelper.AddUserToProject(userId, project.Id);
                }
                foreach (var userId in model.SubmitterIds)
                {
                    projectHelper.AddUserToProject(userId, project.Id);
                }

                notificationHelper.NewProjectCreated(project);
                return(RedirectToAction("Index"));
            }
            else
            {
                ViewBag.ProjectManagerId = new SelectList(roleHelper.UsersInRole("ProjectManager"), "Id", "FullName");
                ViewBag.DeveloperIds     = new MultiSelectList(roleHelper.UsersInRole("Developer"), "Id", "FullName");
                ViewBag.SubmitterIds     = new MultiSelectList(roleHelper.UsersInRole("Submitter"), "Id", "FullName");

                return(View(model));
            }
        }
示例#3
0
        public ActionResult ProjectWizard()
        {
            ViewBag.ProjectManagerId = new SelectList(roleHelper.UsersInRole("ProjectManager"), "Id", "FullName");
            ViewBag.DeveloperIds     = new MultiSelectList(roleHelper.UsersInRole("Developer"), "Id", "FullName");
            ViewBag.SubmitterIds     = new MultiSelectList(roleHelper.UsersInRole("Submitter"), "Id", "FullName");
            ViewBag.Errors           = "";
            var model = new ProjectWizardVM();

            return(View(model));
        }
        public ActionResult ProjectWizard(ProjectWizardVM model)
        {
            ViewBag.Errors = "";
            if (model.ProjectManagerId == null)
            {
                ViewBag.Errors += "<p>You must select a project Manager</p>";
            }
            if (model.DeveloperIds.Count == 0)
            {
                ViewBag.Errors += "<p>You must select at least one Developer</p>";
            }
            if (model.SubmitterIds.Count == 0)
            {
                ViewBag.Errors += "<p>You must select at least one Submitter</p>";
            }
            if (ViewBag.Errors.Length > 0)
            {
                ViewBag.ProjectManagerId = new SelectList(roleHelper.UsersInRole("ProjectManager"), "Id", "FullName");
                ViewBag.DeveloperIds     = new MultiSelectList(roleHelper.UsersInRole("Developer"), "Id", "FullName");
                ViewBag.SubmitterIds     = new MultiSelectList(roleHelper.UsersInRole("Submitter"), "Id", "FullName");
                return(RedirectToAction("Index", "Home"));
            }
            if (ModelState.IsValid)
            {
                Project project = new Project();
                project.Name       = model.Name;
                project.IsArchived = false;
                project.Created    = DateTime.Now;
                db.Projects.Add(project);
                db.SaveChanges();

                projectHelper.AddUserToProject(model.ProjectManagerId, project.Id);
                foreach (var userId in model.DeveloperIds)
                {
                    projectHelper.AddUserToProject(userId, project.Id);
                }
                foreach (var userId in model.SubmitterIds)
                {
                    projectHelper.AddUserToProject(userId, project.Id);
                }

                return(RedirectToAction("Details", "Projects", new { project.Id }));
            }
            else
            {
                ViewBag.ProjectManagerId = new SelectList(roleHelper.UsersInRole("ProjectManager"), "Id", "FullName");
                ViewBag.DeveloperIds     = new MultiSelectList(roleHelper.UsersInRole("Developer"), "Id", "FullName");
                ViewBag.SubmitterIds     = new MultiSelectList(roleHelper.UsersInRole("Submitter"), "Id", "FullName");
                return(View(model));
            }
        }
示例#5
0
        public ActionResult ProjectWizard(ProjectWizardVM model)
        {
            #region Fail Cases
            ViewBag.Erros = "";
            if (model.ProjectManagerId == null)
            {
                ViewBag.Errors += "<p>Please select a Project Manger.</p>";
            }
            if (model.DeveloperIds.Count == 0)
            {
                ViewBag.Erros += "<p>Please select at least one Developer.</p>";
            }
            if (model.SubmitterIds.Count == 0)
            {
                ViewBag.Error += "<p>Please select at least one Submitter.</p>";
            }

            #endregion

            if (ModelState.IsValid)
            {
                Project project = new Project();
                project.Name       = model.Name;
                project.Created    = DateTime.Now;
                project.IsArchived = false;
                db.Projects.Add(project);
                db.SaveChanges();
                projectHelper.AddUserToProject(User.Identity.GetUserId(), project.Id);

                projectHelper.AddUserToProject(model.ProjectManagerId, project.Id);
                foreach (var userId in model.DeveloperIds)
                {
                    projectHelper.AddUserToProject(userId, project.Id);
                }
                foreach (var userId in model.SubmitterIds)
                {
                    projectHelper.AddUserToProject(userId, project.Id);
                }

                return(RedirectToAction("Index"));
            }
            else
            {
                ViewBag.ProjectManagerId = new SelectList(rolesHelper.UsersInRole("Project Manager"), "Id", "FullName");
                ViewBag.DeveloperIds     = new MultiSelectList(rolesHelper.UsersInRole("Developer"), "Id", "FullName");
                ViewBag.SubmitterIds     = new MultiSelectList(rolesHelper.UsersInRole("Submitter"), "Id", "FullName");
                return(View(model));
            }
        }