| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | 
							- using DBHelper;
 
- using Microsoft.EntityFrameworkCore;
 
- using System;
 
- using System.ComponentModel;
 
- using WCS.Core;
 
- using WCS.Entity;
 
- namespace WCS.Service
 
- {
 
-     [Description("数据清理")]
 
-     internal class DataClearHandler : LogicHandler
 
-     {
 
-         public override void Start()
 
-         {
 
-         }
 
-         private DateTime last = DateTime.MinValue;
 
-         public override void Update(double milliseconds)
 
-         {
 
-             if ((DateTime.Now - last).TotalMilliseconds < 1000 * 60 * 60 * 24)
 
-                 return;
 
-             last = DateTime.Now;
 
-             DB.Do(db =>
 
-             {
 
-                 db.Default.Database.ExecuteSqlRaw("delete WCS_EXCEPTION where datediff(dd,UPDATETIME,getdate())>7");
 
-                 var ps = db.Default.GetType().GetProperties();
 
-                 foreach (var p in ps)
 
-                 {
 
-                     if (!p.PropertyType.IsGenericType)
 
-                         continue;
 
-                     var tType = p.PropertyType.GenericTypeArguments[0];
 
-                     if (!tType.IsSubclassOf(typeof(WCS_PROTOCOLDATA)))
 
-                         continue;
 
-                     var sSql = $"Delete {tType.Name} where datediff(dd,Frame,getdate())>7";
 
-                     db.Default.Database.ExecuteSqlRaw(sSql);
 
-                     DBHelper.DbLog.DB_CLEAN(sSql);
 
-                 }
 
-             });
 
-         }
 
-     }
 
- }
 
 
  |