Exemplo n.º 1
0
        public bool SaveSetting(GameSetting setting)
        {
            if (this.ReadDB.Exists <GameSetting>(t => t.Code == setting.Code && t.ID != setting.ID))
            {
                return(this.FaildMessage("代码重复"));
            }
            using (DbExecutor db = NewExecutor(IsolationLevel.ReadUncommitted))
            {
                if (db.Exists <GameSetting>(t => t.ID == setting.ID))
                {
                    db.Update(setting);
                }
                else
                {
                    db.InsertIdentity(setting);

                    //保存游戏时默认开启所有商户该游戏
                    IEnumerable <Site> list = ReadDB.ReadList <Site>();
                    foreach (Site site in list)
                    {
                        SiteGameSetting siteGameSetting = new SiteGameSetting()
                        {
                            SiteID = site.ID,
                            GameID = setting.ID,
                            Status = SiteGameSetting.SiteGameStatus.Open
                        };

                        siteGameSetting.Add(db);
                    }
                }

                db.Commit();
            }
            return(this.AccountInfo.Log(LogType.Setting, $"保存游戏设置:{setting.Name}"));
        }
Exemplo n.º 2
0
        /// <summary>
        /// 加载游戏配置
        /// </summary>
        public bool LoadSiteGameSetting(int siteId)
        {
            using (DbExecutor db = NewExecutor(IsolationLevel.ReadUncommitted))
            {
                IEnumerable <GameSetting> list = ReadDB.ReadList <GameSetting>(t => t.Status != GameStatus.Close);

                foreach (GameSetting gameSetting in list)
                {
                    if (this.ReadDB.Exists <SiteGameSetting>(t => t.SiteID == siteId && t.GameID == gameSetting.ID))
                    {
                        continue;
                    }
                    SiteGameSetting siteGameSetting = new SiteGameSetting()
                    {
                        SiteID = siteId,
                        GameID = gameSetting.ID,
                        Status = SiteGameStatus.Open
                    };

                    siteGameSetting.Add(db);
                }

                db.Commit();
            }

            return(this.AccountInfo.Log(SystemAdminLog.LogType.Site, $"加载商户游戏配置成功{siteId}"));
        }
Exemplo n.º 3
0
        /// <summary>
        /// 保存游戏配置
        /// </summary>
        public bool SaveSiteGameSetting(int Id, SiteGameStatus status, decimal rate, byte sort)
        {
            SiteGameSetting sitegamesetting = new SiteGameSetting()
            {
                ID     = Id,
                Status = status,
                Rate   = rate,
                Sort   = sort
            };

            this.WriteDB.Update <SiteGameSetting>(sitegamesetting, t => t.ID == Id, t => t.Status, t => t.Rate, t => t.Sort);

            return(this.AccountInfo.Log(SystemAdminLog.LogType.Site, $"修改商户游戏配置成功{Id}"));
        }
Exemplo n.º 4
0
        /// <summary>
        /// 为商户游戏买分
        /// </summary>
        public bool SitePayMul(string IDs, decimal money)
        {
            string[] ids = IDs.Split("|");
            if (ids.Length == 0)
            {
                return(this.FaildMessage("请选择需要买分的游戏"));
            }

            using (DbExecutor db = NewExecutor(IsolationLevel.ReadUncommitted))
            {
                foreach (string id in ids)
                {
                    if (string.IsNullOrEmpty(id))
                    {
                        continue;
                    }

                    int             temp            = int.Parse(id);
                    SiteGameSetting sitegamesetting = this.ReadDB.ReadInfo <SiteGameSetting>(t => t.ID == temp);
                    sitegamesetting.Paid   += money;
                    sitegamesetting.Credit += money;

                    //添加买分日志
                    CreditLog creditLog = new CreditLog()
                    {
                        GameID       = sitegamesetting.GameID,
                        SiteID       = sitegamesetting.SiteID,
                        Type         = CreditLog.ChangeType.Add,
                        ChangeCredit = money,
                        Balance      = sitegamesetting.Paid,
                        OrderID      = sitegamesetting.ID.ToString(),
                        CreateAt     = DateTime.Now
                    };
                    sitegamesetting.Update(db, t => t.Paid, t => t.Credit);

                    creditLog.Add(db);
                }

                db.Commit();
            }
            return(this.AccountInfo.Log(SystemAdminLog.LogType.Site, $"买分成功"));
        }
Exemplo n.º 5
0
        /// <summary>
        /// 为商户游戏买分
        /// </summary>
        public bool SitePay(int Id, decimal money)
        {
            SiteGameSetting sitegamesetting = this.ReadDB.ReadInfo <SiteGameSetting>(t => t.ID == Id);

            if (sitegamesetting == null)
            {
                return(this.FaildMessage("买分错误"));
            }
            if (money == 0)
            {
                return(this.FaildMessage("金额不能为0"));
            }

            sitegamesetting.Paid   += money;
            sitegamesetting.Credit += money;

            //添加买分日志
            CreditLog creditLog = new CreditLog()
            {
                GameID       = sitegamesetting.GameID,
                SiteID       = sitegamesetting.SiteID,
                Type         = CreditLog.ChangeType.Add,
                ChangeCredit = money,
                Balance      = sitegamesetting.Paid,
                OrderID      = sitegamesetting.ID.ToString(),
                CreateAt     = DateTime.Now
            };

            using (DbExecutor db = NewExecutor(IsolationLevel.ReadUncommitted))
            {
                sitegamesetting.Update(db, t => t.Paid, t => t.Credit);

                creditLog.Add(db);

                db.Commit();
            }
            return(this.AccountInfo.Log(SystemAdminLog.LogType.Site, $"修改商户游戏配置成功{Id}"));
        }