Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        public void SaveBetRecords()
        {
            try
            {
                using (var db = new SQLiteDB())
                {
                    //var max = db.BetScoreRecords.Max(b => b.SessionIndex);

                    //var last_acc = db.FrontAccounts.FirstOrDefault(a => a.IsClear == false);
                    //if (last_acc != null)
                    //{
                    //    var time = last_acc.CreateTime;
                    //    if (max >= 29)
                    //    {
                    //        var range = db.BetScoreRecords.Where(b => (max - b.SessionIndex) > 0
                    //        && b.CreateTime < time);

                    //        if (range != null)
                    //        {
                    //            db.BetScoreRecords.RemoveRange(range);
                    //        }
                    //    }
                    //}

                    var live_data = Game.Instance.BetBackLiveData;

                    var record = new BetScoreRecord()
                    {
                        CreateTime       = DateTime.Now,
                        SessionIndex     = live_data.SessionIndex,
                        RoundIndex       = live_data.RoundIndex,
                        DeskBanker       = live_data.DeskBanker,
                        DeskPlayer       = live_data.DeskPlayer,
                        DeskTie          = live_data.DeskTie,
                        Winner           = live_data.Winner,
                        JsonPlayerScores = live_data.JsonPlayerScores
                    };
                    var history = db.BetScoreRecords.FirstOrDefault(b => b.SessionIndex == record.SessionIndex &&
                                                                    b.RoundIndex == record.RoundIndex);
                    if (history != null)
                    {
                        db.BetScoreRecords.Remove(history);
                    }
                    db.BetScoreRecords.Add(record);
                    //db.BetScoreRecords.Add(record);
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
#if DEBUG
                MessageBox.Show(ex.Message + ex.StackTrace);
#endif
                MessageBox.Show("程序数据库故障,重启游戏或联系工程师");
            }
        }
Ejemplo n.º 2
0
 public void SaveNewSession(Session session)
 {
     if (session == null)
     {
         return;
     }
     try
     {
         using (var db = new SQLiteDB())
         {
             foreach (var round in session.RoundsOfSession)
             {
                 var record = new BetScoreRecord()
                 {
                     CreateTime       = DateTime.Now,
                     SessionIndex     = session.SessionId,
                     RoundIndex       = session.RoundsOfSession.IndexOf(round),
                     DeskBanker       = 0,
                     DeskPlayer       = 0,
                     DeskTie          = 0,
                     Winner           = (int)round.Winner.Item1,
                     JsonPlayerScores = ""
                 };
                 var history = db.BetScoreRecords.FirstOrDefault(b => b.SessionIndex == record.SessionIndex && b.RoundIndex == record.RoundIndex);
                 if (history != null)
                 {
                     db.BetScoreRecords.Remove(history);
                 }
                 db.BetScoreRecords.Add(record);
             }
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message + ex.StackTrace + ex.InnerException.Message);
     }
 }