public async Task <IActionResult> DeleteMemberFromProject(int id, ProjectAddViewModel project) { if (ModelState.IsValid) { var proj = await _context.Projects.SingleOrDefaultAsync(c => c.ProjectID == id); var client = await _context.Members.SingleOrDefaultAsync(c => c.ID == project.SelectID); var cliToAdd = new ProjectPerson { Project = proj, ProjectID = project.PAVID, Person = client, PersonID = client.ID }; _context.ProjectPersons.Remove(cliToAdd); await _context.SaveChangesAsync(); return(RedirectToRoute("removeFromProj")); } return(NotFound()); }
public async Task <IActionResult> AddClientToProject(int id, ProjectAddViewModel project) { if (ModelState.IsValid) { var proj = await _context.Projects.SingleOrDefaultAsync(c => c.ProjectID == id); var client = await _context.Clients.SingleOrDefaultAsync(c => c.ID == project.SelectID); var cliToAdd = new ProjectPerson { Project = proj, ProjectID = project.PAVID, Person = client, PersonID = client.ID }; _context.ProjectPersons.Add(cliToAdd); await _context.SaveChangesAsync(); return(RedirectToRoute(new { controller = "Project", action = "Details", id = id })); } return(NotFound()); }
public async Task <IActionResult> ProjectAdd(ProjectAddViewModel model) { if (_ticketService.AddProject(model.Name, model.Description) == null) { return(View()); } await _projectRolesService.SetProjectRole(model.Name, User.Identity.Name, Models.Enums.eProjectRoles.Manager); await reLoginUser(); var project = _ticketService.GetProjects().Single(ll => ll.Name == model.Name); return(RedirectToAction(actionName: "projectDetail", controllerName: "Project", new { project.Id })); }
public IHttpActionResult Post(ProjectAddViewModel project) { if (!ModelState.IsValid) { return(BadRequest("Invalid data.")); } try { ProjectDTO projectDto = new ProjectDTO(); Mapping.Mapping.Map(project, projectDto); _projectService.AddProject(projectDto); } catch (ValidationException e) { } return(Ok()); }
public async Task <IActionResult> ProjectAddNew(int id, Project project) { project = await _context.Projects.FindAsync(id); if (project == null) { return(NotFound()); } var projP = _sorter.MembersClientsNotInProject(_context, project); var memSort = projP.Members; var cliSort = projP.Clients; List <SelectListItem> memberList = new List <SelectListItem>(); List <SelectListItem> clientList = new List <SelectListItem>(); foreach (var m in memSort) { memberList.Add(new SelectListItem { Value = m.ID.ToString(), Text = m.ToString() }); } foreach (var c in cliSort) { clientList.Add(new SelectListItem { Value = c.ID.ToString(), Text = c.ToString() }); } var projDetails = new ProjectAddViewModel() { PAVID = id, NewProject = project, MemberList = memberList, ClientList = clientList }; return(View(projDetails)); }
public ProjectAddViewModel AddProject(ProjectAddViewModel mavm) { //首先验证用户是否有权限进行操作 bool bRet = new UserService().IsAuthProject(mavm.Account, mavm.Token, mavm.ParentId, 2); if (!bRet) { mavm.Success = false; mavm.Message = "用户没有添加项目的权限"; return(mavm); } #region 验证用户权限 废弃 /* * UserModel um = new UserRepository().Find(mavm.Account); * //非管理员 * //注:此处存在问题,需斟酌一下 * if (um.UserRole.Role.IsAdmin != 1) * { * //验证用户在最高一层项目上是否有权限 * var m = um.UserRole.Role.RoleProject.Where(a => a.ProjectId == mavm.ParentId); * if (m.Count() > 0) * { * var n = m.Select(a => a.TypeId != 0); * if (n.Count() == 0) * { * mavm.Success = false; * mavm.Message = "用户没有添加项目的权限"; * return mavm; * } * } * }*/ #endregion //验证此项目是否已存在 ProjectModel mm = new ProjectModel(); mm.ProjectName = mavm.ProjectName; mm.Token = mavm.Token; if (mavm.ParentId == 0) { mm.ParentId = null; } else { mm.ParentId = mavm.ParentId; } mm.ProjectType = (ProjectType)mavm.ProjectType; mm.Cate = 0; mm.level = 0; mm.Type = 0; mm.StartTime = DateTime.Now; //检测是否终端节点,如果是终端节点则不允许再添加节点 if (mm.ParentId.HasValue) { ProjectModel mf = _mr.Find(mm.ParentId.Value); if (mf.ProjectType == (ProjectType)2) { mavm.Success = false; mavm.Message = "终端节点下不允许添加节点"; return(mavm); } } ProjectModel mr = _mr.FindByName(mm); if (mr != null) { mavm.Success = false; mavm.Message = "已存在此项目"; return(mavm); } _mr.Add(mm); mavm.Success = true; mavm.Message = "添加项目成功"; return(mavm); }
public ProjectAddViewModel ProjectAdd(ProjectAddViewModel mavm) { ProjectService ms = new ProjectService(); return(ms.AddProject(mavm)); }