Exemplo n.º 1
0
        public override async Task <GNTeam> Insert(GNContact userContact, object entity)
        {
            LogUtil.LogMethod(logger, MethodBase.GetCurrentMethod());

            GNTeam team = await base.Insert(userContact, entity);

            var teamManagerRole = (await this.aspNetRoleService.FindAll()).SingleOrDefault(r => r.Name == "TEAM_MANAGER");

            GNTeamMember teamMember = new GNTeamMember()
            {
                GNTeamId         = team.Id,
                GNContactId      = team.GNContactId,
                Team             = await Find(userContact, team.Id),
                Contact          = db.GNContacts.Find(team.GNContactId),
                AssignDate       = DateTime.Now,
                CreateDateTime   = DateTime.Now,
                CreatedBy        = userContact.Id,
                CreatedByContact = db.GNContacts.Find(userContact.Id)
            };

            db.GNTeamMembers.Add(teamMember);
            await db.SaveChangesAsync();

            return(team);
        }
        public ActionResult AddContactToTeam(Guid teamId, Guid contactId)
        {
            auditResult = audit.LogEvent(UserContact, contactId, this.ENTITY, this.Request.UserHostAddress, "ADD_CONTACT_TO_TEAM " + teamId.ToString());

            GNTeamMember teamMember = DoAddContactToTeam(teamId, contactId);

            if (teamMember != null)
            {
                return(RedirectToAction("Index", "Contacts", new { teamId = teamId }));
            }
            else
            {
                throw new Exception("Unable to add team member.");
            }
        }
        private GNTeamMember DoAddContactToTeam(Guid teamId, Guid contactId)
        {
            GNTeamMember teamMember =
                new GNTeamMember
            {
                GNContactId    = contactId,
                GNTeamId       = teamId,
                AssignDate     = DateTime.Now,
                CreatedBy      = UserContact.Id,
                CreateDateTime = DateTime.Now
            };

            this.db.GNTeamMembers.Add(teamMember);

            this.db.SaveChanges();

            return(teamMember);
        }