Exemple #1
0
        public IActionResult Post([FromBody] TeamChat chat)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var identity = (ClaimsIdentity)this.User.Identity;
            var claim    = identity.FindFirst(ClaimTypes.NameIdentifier);
            var team     = _context.TeamMembers.FirstOrDefault(t => t.UserID == claim.Value);

            chat.UserID    = claim.Value;
            chat.TeamID    = team.TeamID;
            chat.CreatedAt = DateTime.Now;

            try
            {
                _context.TeamChats.Add(chat);
                _context.SaveChanges();
            }
            catch (Exception e)
            {
            }

            return(Ok());
        }
        // public async Task<Team> AddTeam(Team newTeam,int roomId,string creatorId,int parentTeamId)
        // {


        //         newTeam.RoomId = roomId;
        //         newTeam.LeaderId = creatorId;
        //         newTeam.CreatedAt = DateTime.Now;
        //         newTeam.TeamCode = Guid.NewGuid();

        //         if(parentTeamId != 0)
        //         {
        //             newTeam.ParentTeamId = parentTeamId;
        //         }

        //         await teamRepository.SaveTeam(newTeam);
        //         await teamRepository.SaveChanges();

        //         TeamChat newTeamChat = new TeamChat()
        //         {
        //             ChatName = $" {newTeam.Name}/GroupChat ",
        //         };

        //         await teamChatService.CreateTeamChat(newTeamChat, newTeam.LeaderId, newTeam.Id);

        //         return newTeam;
        // }
        public async Task <Team> AddTeam(Team newTeam, int roomId, string authUserId, int parentTeamId)
        {
            newTeam.RoomId            = roomId;
            newTeam.LeaderId          = authUserId;
            newTeam.CreatedAt         = DateTime.Now;
            newTeam.IsActive          = true;
            newTeam.IsActiveTimeStamp = DateTime.Now;

            newTeam.TeamCode = Guid.NewGuid();

            if (parentTeamId != 0)
            {
                newTeam.ParentTeamId = parentTeamId;
            }

            await teamRepository.SaveTeam(newTeam);

            await teamRepository.SaveChanges();

            TeamChat newTeamChat = new TeamChat()
            {
                ChatName = $" {newTeam.Name}/GroupChat ",
            };

            await teamChatService.CreateTeamChat(newTeamChat, newTeam.LeaderId, newTeam.Id);

            return(newTeam);
        }
        public async Task <TeamChat> DeleteTeamChatByTeamId(int teamId)
        {
            TeamChat teamChat = await context.TeamChats.Where(Tc => Tc.TeamId == teamId).FirstOrDefaultAsync();

            if (teamChat != null)
            {
                context.TeamChats.Remove(teamChat);
            }
            return(teamChat);
        }
        public async Task <TeamChat> DeleteTeamChatById(int TeamChatId)
        {
            TeamChat teamChat = await context.TeamChats.FindAsync(TeamChatId);

            if (teamChat != null)
            {
                context.TeamChats.Remove(teamChat);
            }
            return(teamChat);
        }
Exemple #5
0
        public async Task <TeamChat> CreateTeamChat(TeamChat newTeamChat, string CreatorId, int TeamId)
        {
            if (newTeamChat != null)
            {
                newTeamChat.CreatorId = CreatorId;
                newTeamChat.TeamId    = TeamId;
                await teamChatRepository.SaveTeamChat(newTeamChat);

                await teamChatRepository.SaveChanges();

                return(newTeamChat);
            }
            return(null);
        }
 public async Task SaveTeamChat(TeamChat teamChat)
 {
     await context.TeamChats.AddAsync(teamChat);
 }