Esempio n. 1
0
        /// <summary>
        /// 初始化玩家信息
        /// </summary>
        /// <param name="bet"></param>
        private void initBet(WebSiteAbstractClass bet)
        {
            bet.set_OddsRangeBad(dblAcceptedOddDifferentBad);
               bet.set_OddsRangeBetter(dblAcceptedOddDifferentBetter);
               bet.get_BetQueueList().SetInfo(intBetCreateExpiredMin, intBetOddsExpiredSec);
               bet.set_BetQueueMaxAttempt(intBetAttempt);
               bet.set_SpiderMethod(EnumCollection.eSpiderMethod.Full);
               bet.set_Name(bet.get_WebsiteName() + "_" + bet.get_AccountID());

               bet.set_IsToTryFuzzy(false);
               bet.set_IsToTryManualMatching(false);
               bet.set_IsSearchUsingSingleName(true);
               bet.set_IsToGetMatchResultList(false);

               bet.IsCanGetSoccer = true;
               bet.IsCanGetBasketball = true;
               bet.IsCanGetTennis = true;
               bet.IsCanGetFootball = true;
               bet.IsCanGetBaseball = true;
               //bet.IsCanGetBilliards  = true;
               //bet.IsCanGetBadminton = true;
        }
Esempio n. 2
0
        /// <summary>
        ///  当投注额大于单场赛事限制投注额时,进行二分法投注
        /// </summary>
        /// <param name="gamerSite">博彩网</param>
        /// <param name="message">下注消息</param>
        /// <param name="currentBet">当前下注对象</param>
        private void TryBetAgain(WebSiteAbstractClass gamerSite, string message, AgentToClientBet currentBet)
        {
            if (message.Contains(IBC_STAKE_DESC) ||
                message.Contains(SBO_STAKE_DESC) ||
                message.Contains(IBC_BETCREDIT_DESC) ||
                message.Contains(SBO_BETCREDIT_DESC) ||
                currentBet.get_SourceAgentMemberBet().BetFailCount > ConstUtil.BET_FAIL_COUNT)
            {
                PlayerBetLog log = setBetLogMessage(message);
                DataServiceAdapter.SavePlayerBetLog(log);
                currentBet.set_IsRemoved(true);
            }
            else if (message.Contains(IBC_PERLIMIT) || message.Contains(SBO_PERLIMIT))
            {
                int betAmount = currentBet.get_TargetAmount();
                String[] arrays = message.Split(SPLIT);
                // 当单场赛事投注达到限制投注额时,将赌注降低为原来的一半进行下注
                if (arrays.Length == 2)
                {
                    betAmount = Conversions.ToInteger(arrays[1]) / 2;
                }
                currentBet.set_TargetAmount(betAmount);
                currentBet.set_BetAmountValue(MARK_VALUE);

                if (!gamerSite.get_IsGettingFullOdds())
                {
                    gamerSite.GetOddsFromServer();
                }
                List<MatchNew> newMatchNews = gamerSite.get_MatchListFull();
                MatchNew oldMatchNew = currentBet.get_TargetClientMatch();
                foreach (var newMatchNew in newMatchNews)
                {
                    // 取最新的赛事数据
                    if (oldMatchNew.get_FT_ID() == newMatchNew.get_FT_ID())
                    {
                        currentBet.set_TargetClientMatch(newMatchNew);
                        break;
                    }
                }
            }
            gamerSite.get_BetQueueList().UpdateBetMatchInfo(currentBet);
        }