Browse Source

重推机制

lcl 2 months ago
parent
commit
aff4248b77
3 changed files with 23 additions and 4 deletions
  1. 1 1
      Startup.cs
  2. 3 1
      Util/Queue/PosPushHelper.cs
  3. 19 2
      Util/Queue/PosRePushHelper.cs

+ 1 - 1
Startup.cs

@@ -102,7 +102,7 @@ namespace MySystem
                     pattern: "{controller=Home}/{action=Index}/{Id?}");
             });
 
-            // StartHelper.Instance.Start(); //开启线程
+            StartHelper.Instance.Start(); //开启线程
             // TestHelper.Instance.Start();
         }
         

+ 3 - 1
Util/Queue/PosPushHelper.cs

@@ -110,9 +110,10 @@ namespace MySystem
                 SaveToDb(dataContent, encryptContent, dataType, res);
                 return;
             }
+            SaveToDb(dataContent, encryptContent, dataType, res, 1);
         }
 
-        public void SaveToDb(string content, string encryptContent, string dataType, string backContent)
+        public void SaveToDb(string content, string encryptContent, string dataType, string backContent, int status = 0)
         {
             WebCMSEntities db = new WebCMSEntities();
             db.PushPosRecord.Add(new PushPosRecord()
@@ -122,6 +123,7 @@ namespace MySystem
                 DataType = dataType,
                 EncryptContent = encryptContent,
                 BackContent = backContent,
+                Status = status,
             });
             db.SaveChanges();
             db.Dispose();

+ 19 - 2
Util/Queue/PosRePushHelper.cs

@@ -48,7 +48,7 @@ namespace MySystem
             string url = "";
             WebCMSEntities db = new WebCMSEntities();
             DateTime check = DateTime.Now.AddMinutes(-3);
-            List<PushPosRecord> list = db.PushPosRecord.Where(m => m.CreateDate >= check).OrderBy(m => m.Id).ToList();
+            List<PushPosRecord> list = db.PushPosRecord.Where(m => m.CreateDate >= check && m.Status < 1).OrderBy(m => m.Id).Take(200).ToList();
             foreach(PushPosRecord sub in list)
             {
                 string dataType = sub.DataType;
@@ -66,11 +66,28 @@ namespace MySystem
                         PushPosRecord edit = db.PushPosRecord.FirstOrDefault(m => m.Id == sub.Id);
                         if(edit != null)
                         {
-                            db.PushPosRecord.Remove(edit);
+                            edit.Status = 1;
+                        }
+                    }
+                    else
+                    {
+                        PushPosRecord edit = db.PushPosRecord.FirstOrDefault(m => m.Id == sub.Id);
+                        if(edit != null)
+                        {
+                            edit.Status = -1;
                         }
                     }
                 }
+                else
+                {
+                    PushPosRecord edit = db.PushPosRecord.FirstOrDefault(m => m.Id == sub.Id);
+                    if(edit != null)
+                    {
+                        edit.Status = -2;
+                    }
+                }
             }
+            db.SaveChanges();
             db.Dispose();
         }