Example #1
0
        public ActionResult AddResearchgroupMember(ResearchgroupMemberViewModel RGMemberVM)
        {
            if (ModelState.IsValid)
            {
                if (RGMemberVM.StartTime > RGMemberVM.EndTime)
                {
                    ModelState.AddModelError(string.Empty, "Start date must be before end date");

                    var users = db.UserProfiles
                                .Where(c => c.Status == "Current" && db.Careerhistories.Where(ch => ch.InstitutionInstitutionID == RGMemberVM.InstitutionID && ch.Status == "Current" && (ch.EndTime == null || ch.EndTime > DateTime.Now)).Select(ch => ch.UserProfileUserId).Contains(c.UserId))
                                .ToList()
                                .OrderBy(c => c.UserName)
                                .Select(s => new
                    {
                        UserId = s.UserId,
                        Name   = string.Format("{0} {1} ({2})", s.ForeName, s.SurName, s.Email)
                    });

                    ViewBag.UserList = new SelectList(users.AsEnumerable(), "UserId", "Name");
                    ViewBag.ResearchgroupRoleList = new SelectList(db.Options.Where(o => o.OptionFields.OptionFieldName == "User Role In Research group" && o.Status == "Current").AsEnumerable(), "OptionID", "OptionValue");

                    return(View(RGMemberVM));
                }

                UserInResearchgroup userinresearchgroup = new UserInResearchgroup();

                userinresearchgroup.UserProfileUserId            = RGMemberVM.UserID;
                userinresearchgroup.UserRoleinResearchgroupID    = RGMemberVM.UserRoleInResearchgroupID;
                userinresearchgroup.ResearchgroupResearchgroupID = RGMemberVM.ResearchgroupID;

                userinresearchgroup.StartTime = RGMemberVM.StartTime;
                userinresearchgroup.EndTime   = RGMemberVM.EndTime;

                userinresearchgroup.LastUpdatedBy = (int)Membership.GetUser().ProviderUserKey;
                userinresearchgroup.CreatedBy     = (int)Membership.GetUser().ProviderUserKey;
                userinresearchgroup.CreatedOn     = DateTimeOffset.Now;

                db.UserInResearchgroups.Add(userinresearchgroup);
                db.SaveChanges();

                return(RedirectToAction("ResearchgroupMembers", new { researchgroupid = RGMemberVM.ResearchgroupID }));
            }

            var userlist = db.UserProfiles
                           .Where(c => c.Status == "Current" && db.Careerhistories.Where(ch => ch.InstitutionInstitutionID == RGMemberVM.InstitutionID && ch.Status == "Current" && (ch.EndTime == null || ch.EndTime > DateTime.Now)).Select(ch => ch.UserProfileUserId).Contains(c.UserId))
                           .ToList()
                           .OrderBy(c => c.UserName)
                           .Select(s => new
            {
                UserId = s.UserId,
                Name   = string.Format("{0} {1} ({2})", s.ForeName, s.SurName, s.Email)
            });

            ViewBag.UserList = new SelectList(userlist.AsEnumerable(), "UserId", "Name");

            return(View(RGMemberVM));
        }
Example #2
0
        public ActionResult DeleteResearchgroupMember(int researchgroupmemberid = 0)
        {
            UserInResearchgroup userinresearchgroup = db.UserInResearchgroups.Find(researchgroupmemberid);

            if (userinresearchgroup == null)
            {
                return(HttpNotFound());
            }

            userinresearchgroup.Status        = "Deleted";
            userinresearchgroup.LastUpdatedBy = (int)Membership.GetUser().ProviderUserKey;

            db.SaveChanges();
            return(RedirectToAction("ResearchgroupMembers", new { researchgroupid = userinresearchgroup.Researchgroups.ResearchgroupID }));
        }
Example #3
0
        //
        // GET: /Researchgroup/EditResearchgroupMember/5

        public ActionResult EditResearchgroupMember(int researchgroupmemberid = 0)
        {
            UserInResearchgroup userinresearchgroup = db.UserInResearchgroups.Find(researchgroupmemberid);

            if (userinresearchgroup == null)
            {
                return(HttpNotFound());
            }

            ResearchgroupMemberViewModel uirVM = new ResearchgroupMemberViewModel()
            {
                UserInResearchgroupID = userinresearchgroup.UserInResearchgroupID,
                ResearchgroupID       = userinresearchgroup.ResearchgroupResearchgroupID,
                UserID   = userinresearchgroup.UserProfileUserId,
                UserName = userinresearchgroup.UserProfiles.UserName + " (" + userinresearchgroup.UserProfiles.SurName + ", " + userinresearchgroup.UserProfiles.ForeName + ")",
                UserRoleInResearchgroupID = userinresearchgroup.UserRoleinResearchgroupID,
                InstitutionID             = userinresearchgroup.Researchgroups.InstitutionInstitutionID,
                StartTime = userinresearchgroup.StartTime,
                EndTime   = userinresearchgroup.EndTime,
            };

            var users = db.UserProfiles
                        .Where(c => c.Status == "Current" && db.Careerhistories.Where(ch => ch.InstitutionInstitutionID == uirVM.InstitutionID && ch.Status == "Current" && (ch.EndTime == null || ch.EndTime > DateTime.Now)).Select(ch => ch.UserProfileUserId).Contains(c.UserId))
                        .ToList()
                        .OrderBy(c => c.UserName)
                        .Select(s => new
            {
                UserId = s.UserId,
                Name   = string.Format("{0} {1} ({2})", s.ForeName, s.SurName, s.Email)
            });

            ViewBag.UserList = new SelectList(users.AsEnumerable(), "UserId", "Name", uirVM.UserID);
            ViewBag.ResearchgroupRoleList = new SelectList(db.Options.Where(o => o.OptionFields.OptionFieldName == "User Role In Research group" && o.Status == "Current").AsEnumerable(), "OptionID", "OptionValue");

            return(View(uirVM));
        }