using WcsMain.ExtendMethod;
using WcsMain.DataBase.Dao;
using WcsMain.WcsAttribute.AutoFacAttribute;
using System.Reflection;
using SqlSugar;
using WcsMain.WcsAttribute.Clear;
using WcsMain.Common;
namespace WcsMain.Business.CommonAction;
///
/// 清理数据类
///
[Component]
public class ClearData(AppWmsTaskDao wmsTaskDao, AppWcsTaskDao wcsTaskDao, AppApiRequestDao apiRequestDao,
AppApiAcceptDao apiAcceptDao, AppElTagTaskDao elTagTaskDao, AppConveyTaskDao conveyTaskDao, AppScanRecordDao scanRecordDao)
{
///
/// 扫描清理数据库
///
public void ClearDataBase()
{
var assembly = Assembly.GetExecutingAssembly();
var types = assembly.GetTypes();
if (types.Length == 0) return;
foreach (Type type in types)
{
var sqlSuagarTableAttribute = type.GetCustomAttribute();
if (sqlSuagarTableAttribute == null) continue;
var clearTableAttribute = type.GetCustomAttribute();
if(clearTableAttribute == null) continue;
var tableName = sqlSuagarTableAttribute.TableName; // 表名
var timeColumn = clearTableAttribute.TimeColumn; // 时间字段
var saveDays = clearTableAttribute.SaveDays; // 需要保存的天数
try
{
int deleteCount = CommonTool.DbServe.Deleteable