using iWare_SCADA_BusinessLogical.BLL; using iWare_SCADA_BusinessLogical.Utils; using iWare_SCADA_Model; using iWare_SCADA_Model.MiddleModel; using log4net; using System; using System.Collections.Generic; using System.Data.Entity.Core.Common.CommandTrees; using System.Data.Entity.Validation; using System.Data.SqlTypes; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Web.UI.WebControls; using System.Windows.Forms; namespace iWare_SCADA_BusinessLogical { /// /// 定时删除数据 /// public class DeleteDataHandler : DataCaptureHandler { public static readonly DeleteDataHandler Instance = new DeleteDataHandler(); public static readonly LogType logType = LogType.DeleteData; public DeleteDataHandler() { } public override string WorkingProcedure { get { return _dataCaptureConfig.WorkingProcedure; } } public override string DataCapturePointCode { get { return _dataCaptureConfig.DataCapturePointCode; } } public override string DataCapturePointCname { get { return _dataCaptureConfig.DataCapturePointCname; } } public override void RefreshDataList(List dataCaptureConfig) { } public override void DataCaptureStart() { while (true) { try { try { LogTextHelper.BatchDeleteLog(); Log4NetHelper.WriteInfoLog(logType, $"定时删除日志数据成功:"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"定时删除日志数据异常:", ex); } try { ClearDataHandler.Delete_WorkPieceInfoLog(7); ClearDataHandler.Delete_WorkPieceLog(7); Log4NetHelper.WriteInfoLog(logType, $"定时删除表数据成功:"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"定时删除表数据成功:", ex); } //处理OP60的数据 try { LogTextHelper.BatchDeleteLog(@"Q:\Measuring_Data_df_Copy", 20); Log4NetHelper.WriteInfoLog(logType, $"处理OP60的数据(Q:\\Measuring_Data_df_Copy)-定时删除数据成功:"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"处理OP60的数据(Q:\\Measuring_Data_df_Copy)-定时删除数据异常:", ex); } try { LogTextHelper.BatchDeleteLog(@"Q:\Measuring_Data_dfq", 20); Log4NetHelper.WriteInfoLog(logType, $"处理OP60的数据(Q:\\Measuring_Data_dfq)-定时删除数据"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"处理OP60的数据(Q:\\Measuring_Data_dfq)-定时删除数据异常:", ex); } //处理OP80的数据 try { LogTextHelper.BatchDeleteLog(@"X:\CA4GC20TD_COPY", 20); Log4NetHelper.WriteInfoLog(logType, $"处理OP80的数据(X:\\CA4GC20TD_COPY)-定时删除数据:"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"处理OP80的数据(X:\\CA4GC20TD_COPY)-定时删除数据异常:", ex); } try { LogTextHelper.BatchDeleteLog(@"X:\CA4GC20TD_Error", 60); Log4NetHelper.WriteInfoLog(logType, $"处理OP80的数据(X:\\CA4GC20TD_Error)-定时删除数据:"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"处理OP80的数据(X:\\CA4GC20TD_Error)-定时删除数据异常:", ex); } try { LogTextHelper.BatchDeleteLog(@"X:\CA4GC20TD_NoNum", 60); Log4NetHelper.WriteInfoLog(logType, $"处理OP80的数据(X:\\CA4GC20TD_NoNum)-定时删除数据"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"处理OP80的数据(X:\\CA4GC20TD_NoNum)-定时删除数据异常:", ex); } try { //处理OP20的数据 LogTextHelper.BatchDeleteLog(@"W:\", 20); Log4NetHelper.WriteInfoLog(logType, $"处理OP20的数据-定时删除数据:"); } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"处理OP20的数据-定时删除数据异常:", ex); } Thread.Sleep(8 * 60 * 60 * 1000);//每天8小时一次 } catch (Exception ex) { Log4NetHelper.WriteErrorLog(logType, $"定时删除数据异常:", ex); } finally { } } } } }