Exemplo n.º 1
0
        /// <summary>
        /// 查询对阵详情
        /// </summary>
        /// <param name="guess"></param>
        public GuessVS GetVSDetail(Guess guess)
        {
            var cmd = CommandHelper.CreateProcedure <GameLoop>(text: "sp_GetGameOrderVSDetail");

            cmd.Params.Add(CommandHelper.CreateParam("@gameId", ""));
            cmd.Params.Add(CommandHelper.CreateParam("@knockOutAB", ""));
            cmd.Params.Add(CommandHelper.CreateParam("@orderId", guess.VsOrderId));
            cmd.Params.Add(CommandHelper.CreateParam("@groupId", ""));
            cmd.Params.Add(CommandHelper.CreateParam("@isExtra", ""));
            guess.VsOrderNo = 0;//排查后,此值用不到, 暂时屏蔽
            cmd.Params.Add(CommandHelper.CreateParam("@groupOrderNo", guess.VsOrderNo));
            cmd.Params.Add(CommandHelper.CreateParam("@GameLoopId", guess.VsGameLoopId));
            var result = DbContext.GetInstance().Execute(cmd);
            var obj    = result.FirstEntity <GameLoop>();

            GuessVS guessVS = new GuessVS();

            guessVS.LeftId      = obj.Team1Id.GetId();
            guessVS.LeftName    = obj.Team1Id.GetName();
            guessVS.LeftHeadUrl = obj.Team1HeadUrl;
            if (obj.IsTeam)
            {
                guessVS.LeftScore = obj.Team1;
            }
            else
            {
                guessVS.LeftScore = obj.Game1;
            }

            guessVS.RightId      = obj.Team2Id.GetId();
            guessVS.RightName    = obj.Team2Id.GetName();
            guessVS.RightHeadUrl = obj.Team2HeadUrl;
            if (obj.IsTeam)
            {
                guessVS.RightScore = obj.Team2;
            }
            else
            {
                guessVS.RightScore = obj.Game2;
            }

            guessVS.TableNumber     = obj.TableNo;
            guessVS.MasterJudgeName = obj.MasterJudgeId.GetName();
            guessVS.SecondJudgeName = obj.JudgeId.GetName();
            guessVS.BeginTime       = obj.BeginTime;
            guessVS.State           = obj.State.GetId();
            guessVS.GameId          = obj.GameId;
            //设置对阵左右两边的赔率
            guessVS.LeftOdds  = guess.VSLeftOdds;
            guessVS.RightOdds = guess.VsRightOdds;
            //设置几打几胜
            guessVS.WinNumber = obj.IsTeam ? obj.WinTeam : obj.WinGame;
            return(guessVS);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 设置猜中的比分和赔率到Guess实体上
        /// </summary>
        /// <param name="guess"></param>
        /// <param name="obj"></param>
        public void SetBingoScoreAndOdds(Guess guess, GuessVS obj)
        {
            var sql = @"
 SELECT * 
 FROM dbo.GuessScore
 WHERE GuessId=@GuessId
	AND  LeftScore=@LeftScore
	AND RightScore=@RightScore
";
            var cmd = CommandHelper.CreateText <GuessScore>(FetchType.Fetch, sql);

            cmd.Params.Add("@GuessId", guess.Id);
            cmd.Params.Add("@LeftScore", obj.LeftScore);
            cmd.Params.Add("@RightScore", obj.RightScore);
            var result     = DbContext.GetInstance().Execute(cmd);
            var guessScore = result.FirstEntity <GuessScore>();

            guess.BingoLeftScore  = guessScore.LeftScore;
            guess.BingoRightScore = guessScore.RightScore;
            guess.BingoScoreOdds  = guessScore.Odds;
        }
Exemplo n.º 3
0
 /// <summary>
 /// 设置胜方的Id 和赔率到Guess 实体上
 /// </summary>
 /// <param name="guess"></param>
 /// <param name="obj"></param>
 public void SetVictoryIdAndOdds(Guess guess, GuessVS obj)
 {
     //获取胜方Id
     if (obj.LeftScore > obj.RightScore)
     {
         guess.VictoryId = obj.LeftId;
     }
     else
     {
         guess.VictoryId = obj.RightId;
     }
     //获取胜方赔率
     if (guess.VictoryId == obj.LeftId)
     {
         guess.VictoryOdds = guess.VSLeftOdds;
     }
     else
     {
         guess.VictoryOdds = guess.VsRightOdds;
     }
 }
Exemplo n.º 4
0
        /// <summary>
        /// 比分竞猜结算
        /// </summary>
        /// <param name="guess"></param>
        public Response ScoreSettlement(Guess guess, GuessVS guessVS)
        {
            Response rsp = ResultHelper.CreateResponse();

            //取出猜中的比分和赔率, 赋到guess 实体上
            GuessHelper.Instance.SetBingoScoreAndOdds(guess, guessVS);
            //查出胜方用户列表, 进行返钱
            var bingoBetList = GetGuessScoreBetList(guess);

            if (bingoBetList.Count > 0)
            {
                rsp = BackYueDouToUser(bingoBetList, guess, guess.BingoScoreOdds);
            }
            //增减庄家的悦豆
            var totalYuedou      = GuessHelper.Instance.GetGuessTotalYueDouByType(guess.Id, GuessDic.Score); //比分投注的总悦豆
            var bingoTotalYueDou = GuessHelper.Instance.GetBingoScoreTotalYueDou(guess);                     //猜中比分的总悦豆
            var declareDeposit   = Convert.ToInt32(guess.ScoreDeclarerDeposit);

            rsp = AddOrSubDeclarerYueDou(guess, totalYuedou
                                         , bingoTotalYueDou, declareDeposit, GuessDic.DeclarerScore);
            SystemHelper.CheckResponseIfError(rsp);
            return(rsp);
        }
Exemplo n.º 5
0
        /// <summary>
        /// 胜负竞猜结算
        /// </summary>
        /// <param name="guess"></param>
        public Response VictoryDefeatSettlement(Guess guess, GuessVS guessVS)
        {
            Response rsp = ResultHelper.CreateResponse();

            //取出胜方的Id和赔率, 赋到guess 实体上
            GuessHelper.Instance.SetVictoryIdAndOdds(guess, guessVS);
            //查出胜方用户列表, 进行返钱
            var victoryBetList = GetGuessVictoryDefeatBetList(guess.VictoryId, guess.Id);

            if (victoryBetList.Count > 0)
            {
                rsp = BackYueDouToUser(victoryBetList, guess, guess.VictoryOdds);
            }
            //增减庄家的悦豆
            var totalYuedou      = GuessHelper.Instance.GetGuessTotalYueDouByType(guess.Id, GuessDic.VictoryDefeat); //胜负投注的总悦豆
            var bingoTotalYueDou = GuessHelper.Instance.GetVictoryOrDefeatTotalYueDou(guess.Id, guess.VictoryId);    //胜方总悦豆
            var declareDeposit   = Convert.ToInt32(guess.VictoryDefeatDeclarerDeposit);

            rsp = AddOrSubDeclarerYueDou(guess, totalYuedou
                                         , bingoTotalYueDou, declareDeposit, GuessDic.DeclarerVictoryDefeat);
            SystemHelper.CheckResponseIfError(rsp);
            return(rsp);
        }