// POST: MemberJoinProjects/Delete/5 //[ValidateAntiForgeryToken] public ActionResult DeleteMember(MemberJoinProject memberJoinProject, string id, string oid, string pid) { var mem = db.MemberJoinProjects.Where(m => m.ProjectID == pid && m.MemberIDJoin == id && m.MemberIDOwner == oid).FirstOrDefault(); db.MemberJoinProjects.Remove(mem); db.SaveChanges(); var member = db.MemberJoinProjects.Where(m => m.ProjectID == pid && m.MemberIDOwner == oid).FirstOrDefault(); return(RedirectToAction("CreateW", new { ProjectID = pid, MemberID = oid })); }
public ActionResult CreateW(ApiAuthRegister data, MemberJoinProject memberJoinProject, string MemberID, string ProjectID, string emailorgname) { var project = db.Projects.First(x => x.ProjectID == ProjectID); ViewBag.ProjectName = project.ProjectName; if (Validator.IsValidEmail(emailorgname)) { var gro = db.Members.Where(x => x.Email == emailorgname).FirstOrDefault(); if (gro == null) { //寄送email //data= ViewBag.Message = "此使用者未註冊會員"; return(RedirectToAction("CreateW", new { ProjectID, MemberID })); } else { memberJoinProject.ProjectID = ProjectID; memberJoinProject.MemberIDOwner = MemberID; memberJoinProject.SharePerID = Share.Share; memberJoinProject.MemberIDJoin = gro.MemberID; bool exists = db.MemberJoinProjects.Any(m => m.MemberIDOwner == MemberID && m.ProjectID == ProjectID && m.MemberIDJoin == gro.MemberID); db.MemberJoinProjects.Add(memberJoinProject); if (exists == true) { return(RedirectToAction("CreateW", new { ProjectID, MemberID })); } } } else { bool groupexist = db.Groups.Any(x => x.GroupName == emailorgname); if (groupexist == false) { ViewBag.Message = "此群組不存在"; } else { var gro = db.Groups.First(x => x.GroupName == emailorgname); IEnumerable <GroupMember> groupmemberList = db.GroupMembers.Where(m => m.MemberIDOwner == MemberID && m.GroupID == gro.GroupID); //var groupmemberList = db.GroupMembers.Where(m => m.MemberIDOwner == MemberID && m.GroupID == gro.GroupID); bool exists = db.MemberJoinProjects.Any(m => m.MemberIDOwner == MemberID && m.ProjectID == ProjectID && m.MemberIDJoin == gro.MemberID); if (exists == true) { return(RedirectToAction("CreateW", new { ProjectID, MemberID })); } else { foreach (var item in groupmemberList) { MemberJoinProject m = new MemberJoinProject() { MemberIDJoin = item.MemberIDInGroup, ProjectID = ProjectID, MemberIDOwner = MemberID, SharePerID = Share.Share }; db.MemberJoinProjects.Add(m); } db.SaveChanges(); } //db.SaveChanges(); } } db.SaveChanges(); var memberJoinProjects = db.MemberJoinProjects.Include(m => m.Member).Include(m => m.Project).Where(m => m.MemberIDOwner == MemberID && m.ProjectID == ProjectID); return(RedirectToAction("CreateW", new { ProjectID, MemberID })); }