schangxiang@126.com
2024-12-19 4422008672f79f74841e11f20430c5e76686e293
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
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.Core.Common.CommandTrees.ExpressionBuilder;
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
{
    /// <summary>
    /// 定时删除数据
    /// </summary>
    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> dataCaptureConfig)
        {
        }
 
        public override void DataCaptureStart()
        {
            while (true)
            {
                try
                {
                    //Thread.Sleep(8 * 60 * 60 * 1000);//每天8小时一次 
                    Thread.Sleep(20 * 60 * 1000);//20分钟执行一次
 
                    //每天凌晨1、3、5、6执行一次
                    var hour = DateTime.Now.Hour;
                    if (!(hour == 1 || hour == 3 || hour == 5 || hour == 6))
                    {
                        continue;
                    }
 
                    try
                    {
                        LogTextHelper.BatchDeleteLog();
 
                        Log4NetHelper.WriteInfoLog(logType, $"定时删除日志数据成功:");
                    }
                    catch (Exception ex)
                    {
                        Log4NetHelper.WriteErrorLog(logType, $"定时删除日志数据异常:", ex);
                    }
 
                    try
                    {
                        ClearDataHandler.Delete_WorkPieceInfoLog(7);
 
                        ClearDataHandler.Delete_WorkPieceLog(4);
 
                        ClearDataHandler.Delete_AccessInterfaceLogForRequest(7);
 
                        ClearDataHandler.Delete_QualityDataInfoLog(7);
 
                        ClearDataHandler.Delete_sys_log_op(7);
 
                        ClearDataHandler.Delete_sys_log_ex(7);
 
                        ClearDataHandler.Delete_EquipmentWorkingLog(7);
 
                        Log4NetHelper.WriteInfoLog(logType, $"定时删除表数据成功:");
                    }
                    catch (Exception ex)
                    {
                        Log4NetHelper.WriteErrorLog(logType, $"定时删除表数据成功:", ex);
                    }
 
 
 
                }
                catch (Exception ex)
                {
                    Log4NetHelper.WriteErrorLog(logType, $"定时删除数据异常:", ex);
                }
                finally
                {
                }
            }
        }
 
    }
}