Example #1
0
    private void PlayBigSmall()
    {
        DataSet ds = new BCW.Baccarat.BLL.BJL_Room().GetList("TOP 5 *", "state=0 AND Total_Now>LowTotal Order by NEWID()");

        if (ds != null && ds.Tables[0].Rows.Count > 0)
        {
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                int  id       = int.Parse(ds.Tables[0].Rows[i]["ID"].ToString());
                long SmallPay = Int64.Parse(ds.Tables[0].Rows[i]["LowTotal"].ToString()); //最小下注
                long BigPay   = Int64.Parse(ds.Tables[0].Rows[i]["BigPay"].ToString());   //最高下注

                long PayCent = GetPayCent();

                int k = 0;
                while (PayCent < SmallPay || PayCent > BigPay)
                {
                    long vPayCent = GetPayCent();
                    PayCent = vPayCent;

                    k++;

                    if (k > 200)
                    {
                        PayCent = SmallPay;
                        break;
                    }
                }
                int meid = GetUsID();
                PlayBigSmallInfo(meid, id, PayCent);
            }
        }
    }
Example #2
0
    public void Open()
    {
        if (new BCW.Baccarat.BLL.BJL_Play().Exists())
        {
            //派奖
            DataSet ds = new BCW.Baccarat.BLL.BJL_Play().GetList("*", "HunterPoint='' AND type=0 ORDER BY ID ASC");
            if (ds != null && ds.Tables[0].Rows.Count > 0)
            {
                #region
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    int RoomID     = int.Parse(ds.Tables[0].Rows[i]["RoomID"].ToString());
                    int Play_Table = int.Parse(ds.Tables[0].Rows[i]["Play_Table"].ToString());
                    int ID         = int.Parse(ds.Tables[0].Rows[i]["ID"].ToString());

                    //查询是否已开奖
                    BCW.Baccarat.Model.BJL_Play aa = new BCW.Baccarat.BLL.BJL_Play().GetBJL_Play2(ID);
                    if (aa.type == 0)
                    {
                        //根据房间的桌面查第一个下注的时间
                        DateTime Oldbettime = new BCW.Baccarat.BLL.BJL_Play().GetMinBetTime(RoomID, (Play_Table));
                        if (Oldbettime.AddSeconds((Times + 8)) < DateTime.Now)
                        {
                            BCW.Baccarat.Model.BJL_Card card = new BCW.Baccarat.BLL.BJL_Card().GetCardMessage(RoomID, Play_Table);
                            new BCW.Baccarat.BLL.BJL_Play().update_zd("BankerPoker='" + card.BankerPoker + "',HunterPoker='" + card.HunterPoker + "',BankerPoint=" + card.BankerPoint + ",HunterPoint=" + card.HunterPoint + "", "RoomID=" + RoomID + " and Play_Table=" + (Play_Table) + "");
                            //派奖
                            _price(RoomID, Play_Table);
                            Response.Write("已开奖第" + RoomID + "桌第" + Play_Table + "个房间.ok1<br/>");
                        }
                        else
                        {
                            Response.Write("请等待开奖:第" + RoomID + "桌第" + Play_Table + "个房间准备开奖.还有" + DT.DateDiff(Oldbettime.AddSeconds(Times + 8), DateTime.Now, 4) + "秒.ok1<br/>");
                        }
                    }
                }
                #endregion
            }

            //判断最低下注是否低于彩池,如果是,则封庄
            DataSet ds1 = new BCW.Baccarat.BLL.BJL_Room().GetList("*", "Total_Now<LowTotal and state=0");
            if (ds1 != null && ds1.Tables[0].Rows.Count > 0)
            {
                #region
                for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
                {
                    int  ID        = int.Parse(ds1.Tables[0].Rows[i]["ID"].ToString());
                    int  UsID      = int.Parse(ds1.Tables[0].Rows[i]["UsID"].ToString());
                    long LowTotal  = Convert.ToInt64(ds1.Tables[0].Rows[i]["LowTotal"].ToString());
                    long Total_Now = Convert.ToInt64(ds1.Tables[0].Rows[i]["Total_Now"].ToString());
                    if (Total_Now < LowTotal)
                    {
                        new BCW.Baccarat.BLL.BJL_Room().update_zd("state=1", "ID=" + ID + "");
                        if (Total_Now > 0)//退回给庄家
                        {
                            new BCW.BLL.User().UpdateiGold(UsID, new BCW.BLL.User().GetUsName(UsID), Total_Now, "你在" + GameName + "第" + ID + "桌系统自动封庄,系统退还剩余彩池" + Total_Now + ub.Get("SiteBz") + "-标识房间ID" + ID + "");
                            new BCW.BLL.Guest().Add(1, UsID, new BCW.BLL.User().GetUsName(UsID), "你在" + GameName + "第" + ID + "桌系统自动封庄,系统退还剩余彩池" + Total_Now + ub.Get("SiteBz") + ".[url=/bbs/game/bjl.aspx]进入" + GameName + "[/url]");
                        }
                        else
                        {
                            if ((new BCW.BLL.User().GetGold(UsID) + Total_Now) > 0)//够钱扣
                            {
                                new BCW.BLL.User().UpdateiGold(UsID, new BCW.BLL.User().GetUsName(UsID), -Total_Now, "你在" + GameName + "第" + ID + "桌的彩池已低于0,系统自动补扣" + Total_Now + "-标识房间ID" + ID + "");
                                new BCW.BLL.Guest().Add(1, UsID, new BCW.BLL.User().GetUsName(UsID), "你在" + GameName + "第" + ID + "桌的彩池已低于0,系统自动从你账户补扣" + Total_Now + ub.Get("SiteBz") + ".[url=/bbs/game/bjl.aspx]进入" + GameName + "[/url]");
                            }
                            else
                            {
                                BCW.Model.Gameowe owe = new BCW.Model.Gameowe();
                                owe.Types   = 1;
                                owe.UsID    = UsID;
                                owe.UsName  = new BCW.BLL.User().GetUsName(UsID);
                                owe.Content = "你在" + GameName + "第" + ID + "桌的彩池已低于0,你欠下系统的" + (Total_Now + new BCW.BLL.User().GetGold(UsID)) + "" + ub.Get("SiteBz") + ".";
                                owe.OweCent = Total_Now + new BCW.BLL.User().GetGold(UsID);
                                owe.BzType  = 12;//百家乐封庄记录type的id
                                owe.EnId    = ID;
                                owe.AddTime = DateTime.Now;
                                new BCW.BLL.Gameowe().Add(owe);
                                new BCW.BLL.User().UpdateIsFreeze(UsID, 1);

                                //发送内线
                                string strGuess = "你在" + GameName + "第" + ID + "桌的彩池已低于0,你欠下系统的" + (Total_Now + new BCW.BLL.User().GetGold(UsID)) + "" + ub.Get("SiteBz") + ".[br]根据您的帐户数额,实扣" + new BCW.BLL.User().GetGold(UsID) + "" + ub.Get("SiteBz") + ".[br]您的" + ub.Get("SiteBz") + "不足,系统将您帐户冻结。";
                                new BCW.BLL.Guest().Add(1, UsID, new BCW.BLL.User().GetUsName(UsID), strGuess);
                                string bb = "" + new BCW.BLL.User().GetUsName(UsID) + "(" + UsID + ")在" + GameName + "第" + ID + "桌的彩池已低于0,欠下系统" + Total_Now + new BCW.BLL.User().GetGold(UsID) + "" + ub.Get("SiteBz") + ",系统已自动冻结TA的帐户.";
                                new BCW.BLL.Guest().Add(1, 10086, new BCW.BLL.User().GetUsName(10086), bb);
                            }
                        }
                    }
                }
                #endregion
            }

            //超过玩的局数
            DataSet ds2 = new BCW.Baccarat.BLL.BJL_Room().GetList2("*", "a LEFT JOIN tb_BJL_Play b ON a.UsID=b.UsID AND b.Play_Table>=" + RoomTime2 + " AND a.state=0");
            if (ds2 != null && ds2.Tables[0].Rows.Count > 0)
            {
                #region
                for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
                {
                    int  ID        = int.Parse(ds2.Tables[0].Rows[i]["ID"].ToString());
                    int  UsID      = int.Parse(ds2.Tables[0].Rows[i]["UsID"].ToString());
                    long LowTotal  = Convert.ToInt64(ds2.Tables[0].Rows[i]["LowTotal"].ToString());
                    long Total_Now = Convert.ToInt64(ds2.Tables[0].Rows[i]["Total_Now"].ToString());

                    new BCW.Baccarat.BLL.BJL_Room().update_zd("state=1", "ID=" + ID + "");
                    if (Total_Now > 0)//退回给庄家
                    {
                        new BCW.BLL.User().UpdateiGold(UsID, new BCW.BLL.User().GetUsName(UsID), Total_Now, "你在" + GameName + "第" + ID + "桌的已达到最高局数,系统自动封庄,退还" + Total_Now + "-标识房间ID" + ID + "");
                        new BCW.BLL.Guest().Add(1, UsID, new BCW.BLL.User().GetUsName(UsID), "你在" + GameName + "第" + ID + "桌的已达到最高局数,系统自动封庄,退还" + Total_Now + ub.Get("SiteBz") + ".[url=/bbs/game/bjl.aspx]进入" + GameName + "[/url]");
                    }
                }
                #endregion
            }
        }
        else
        {
            Response.Write("暂无房间需要开奖.ok1");
        }
    }