Explorar o código

添加恢复原始交易没有统计上的数据

lcl hai 1 ano
pai
achega
3779051416
Modificáronse 2 ficheiros con 41 adicións e 0 borrados
  1. 40 0
      AppStart/Helper/SycnSpServer/SycnSpTradeService.cs
  2. 1 0
      Startup.cs

+ 40 - 0
AppStart/Helper/SycnSpServer/SycnSpTradeService.cs

@@ -577,6 +577,46 @@ namespace MySystem
             }
             }
         }
         }
 
 
+        public void StartTradeStatus()
+        {
+            Thread th = new Thread(StartTradeStatusDo);
+            th.IsBackground = true;
+            th.Start();
+        }
+
+        public void StartTradeStatusDo()
+        {
+            while (true)
+            {
+                try
+                {
+                    WebCMSEntities spdb = new WebCMSEntities();
+                    DateTime start = DateTime.Now.AddDays(-10);
+                    int StartId = int.Parse(function.CheckInt(function.ReadInstance("/SycnSp/TradeRecordId.txt")));
+                    IQueryable<TradeRecord> trades = spdb.TradeRecord.Where(m => m.Id >= StartId && m.CreateDate >= start && m.Status == 0).OrderBy(m => m.CreateDate).Take(20);
+                    foreach (TradeRecord trade in trades.ToList())
+                    {
+                        TradeRecord edit = spdb.TradeRecord.FirstOrDefault(m => m.Id == trade.Id);
+                        if (edit != null)
+                        {
+                            edit.Status = 1;
+                            spdb.SaveChanges();
+                        }
+                    }
+                    spdb.Dispose();
+                }
+                catch (Exception ex)
+                {
+                    function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "恢复原始交易没有统计上的数据异常");
+                }
+                Thread.Sleep(600000);
+            }
+        }
+
+
+
+
+
         //机具激活逻辑
         //机具激活逻辑
         public void ActPos(PxcModels.WebCMSEntities db, PxcModels.PosMachinesTwo pos, decimal CheckMoney, int CheckDays, bool PrizeFlag = true, string ActivationTime = "")
         public void ActPos(PxcModels.WebCMSEntities db, PxcModels.PosMachinesTwo pos, decimal CheckMoney, int CheckDays, bool PrizeFlag = true, string ActivationTime = "")
         {
         {

+ 1 - 0
Startup.cs

@@ -171,6 +171,7 @@ namespace MySystem
                 SycnSpMerchantService.Instance.Start(); //同步SP商户数据
                 SycnSpMerchantService.Instance.Start(); //同步SP商户数据
                 SycnSpActiveService.Instance.Start(); //同步SP激活数据
                 SycnSpActiveService.Instance.Start(); //同步SP激活数据
                 SycnSpTradeService.Instance.Start(); //同步SP交易数据
                 SycnSpTradeService.Instance.Start(); //同步SP交易数据
+                SycnSpTradeService.Instance.StartTradeStatus(); //恢复原始交易没有统计上的数据
                 SycnSpChangeBindService.Instance.Start(); //同步SP换绑数据
                 SycnSpChangeBindService.Instance.Start(); //同步SP换绑数据
                 SycnSpUnBindService.Instance.Start(); //同步SP解绑数据
                 SycnSpUnBindService.Instance.Start(); //同步SP解绑数据
                 SycnSpMerchantRecordService.Instance.Start(); //同步SP商户记录数据
                 SycnSpMerchantRecordService.Instance.Start(); //同步SP商户记录数据