예제 #1
0
        public string QuitMatch(MatchParameter2Model match)
        {
            string               result       = "";
            MessageModel         message      = new MessageModel();
            JavaScriptSerializer jss          = new JavaScriptSerializer();
            HashSet <object>     returnResult = new HashSet <object>();

            //取消报名参赛
            using (HiGame_V1Entities context = new HiGame_V1Entities())
            {
                db_User user = User.GetUserByPhoneNumber(match.PhoneNumber);
                //判断是否队长,队员不可报名
                var team = context.db_Team.Where(c => c.TeamID == match.TeamID).
                           Where(c => c.CreateUserID == user.UserID).
                           FirstOrDefault();
                if (team == null)
                {
                    message.MessageCode = MESSAGE.CANNOTQUITMATCH_CODE;
                    message.Message     = MESSAGE.CANNOTQUITMATCH;
                }
                else
                {
                    db_GameRecord gameRecord = context.db_GameRecord.
                                               Where(c => c.GameID == match.MatchID).
                                               Where(c => c.TeamID == match.TeamID).FirstOrDefault();

                    //删除队伍已报名信息
                    if (gameRecord != null)
                    {
                        context.db_GameRecord.Remove(gameRecord);
                        context.SaveChanges();
                    }
                    message.MessageCode = MESSAGE.OK_CODE;
                    message.Message     = MESSAGE.OK;
                }
            }
            returnResult.Add(message);
            result = jss.Serialize(returnResult);
            return(result);
        }
예제 #2
0
        public string JoinMatch(MatchParameter2Model match)
        {
            string               result       = "";
            MessageModel         message      = new MessageModel();
            JavaScriptSerializer jss          = new JavaScriptSerializer();
            HashSet <object>     returnResult = new HashSet <object>();

            //报名参赛
            using (HiGame_V1Entities context = new HiGame_V1Entities())
            {
                db_User user = User.GetUserByPhoneNumber(match.PhoneNumber);
                if (user != null)
                {
                    //判断是否队长,队员不可报名
                    var team = context.db_Team.Where(c => c.TeamID == match.TeamID).
                               Where(c => c.CreateUserID == user.UserID).
                               FirstOrDefault();
                    if (team == null)
                    {
                        message.MessageCode = MESSAGE.CANNOTJOINMATCH_CODE;
                        message.Message     = MESSAGE.CANNOTJOINMATCH;
                    }
                    else
                    {
                        //判断队伍是否满5人
                        var teamCount = context.db_TeamUser.Where(c => c.TeamID == match.TeamID).ToList().Count;
                        if (teamCount < 4)
                        {
                            message.MessageCode = MESSAGE.TEAMUSERNOTENOUGH_CODE;
                            message.Message     = MESSAGE.TEAMUSERNOTENOUGH;
                        }
                        else
                        {
                            //判断报名队伍数是否已满
                            if (Team.IsBoBoFull(match) == true)
                            {
                                //判断队伍是否已报名
                                db_GameRecord gameRecord = new db_GameRecord();
                                gameRecord.BoBoID    = match.BoBoID;
                                gameRecord.GameID    = match.MatchID;
                                gameRecord.TeamID    = match.TeamID;
                                gameRecord.ApplyTIme = DateTime.Now;
                                gameRecord.UserID    = user.UserID;
                                gameRecord.IsCancel  = 0;
                                gameRecord.State     = 0;
                                context.db_GameRecord.Add(gameRecord);
                                context.SaveChanges();
                                message.MessageCode = MESSAGE.OK_CODE;
                                message.Message     = MESSAGE.OK;
                            }
                            else
                            {
                                //名额已满
                                message.MessageCode = MESSAGE.MATCHFULL_CODE;
                                message.Message     = MESSAGE.MATCHFULL;
                            }
                        }
                    }
                }
                else
                {
                    //用户未存在
                    message.MessageCode = MESSAGE.NOUSER_CODE;
                    message.Message     = MESSAGE.NOUSER;
                }
            }
            returnResult.Add(message);
            result = jss.Serialize(returnResult);
            return(result);
        }