renmingwang
2026-03-25 6d56bf4daf08c4c7c6d193d98ed0b547dc473451
ÏîÄ¿´úÂë/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/Task_HtyService.cs
@@ -10,4 +10,46 @@
    public Task_HtyService(IRepository<Dt_Task_Hty> BaseDal) : base(BaseDal)
    {
    }
    /// <summary>
    /// åˆ é™¤æŒ‡å®šæ—¥æœŸä¹‹å‰çš„历史任务数据
    /// </summary>
    /// <param name="keepMonths">保留的月数,默认为3个月(本月+后两个月)</param>
    /// <returns>删除的记录数</returns>
    public int DeleteOldTaskHistory(int keepMonths = 3)
    {
        try
        {
            // è®¡ç®—保留日期:当前日期减去keepMonths个月
            DateTime keepDate = DateTime.Now.AddMonths(-keepMonths);
            // å…ˆæŸ¥è¯¢å‡ºè¦åˆ é™¤çš„æ•°æ®
            List<Dt_Task_Hty> tasksToDelete = BaseDal.QueryData().Where(x => x.CreateDate < keepDate).ToList();
            // å¦‚果没有要删除的数据,直接返回0
            if (tasksToDelete.Count == 0)
            {
                return 0;
            }
            // åˆ é™¤æŸ¥è¯¢å‡ºçš„历史记录
            bool result = BaseDal.DeleteData(tasksToDelete);
            return result ? tasksToDelete.Count : 0;
        }
        catch (Exception ex)
        {
            // è®°å½•异常日志
            //Console.WriteLine($"删除历史任务记录失败: {ex.Message}");
            return 0;
        }
    }
    /// <summary>
    /// å®šæ—¶ä»»åŠ¡è°ƒç”¨çš„åŽ†å²ä»»åŠ¡åˆ é™¤æ–¹æ³•
    /// </summary>
    public void Task_Hty_Job()
    {
        // åˆ é™¤3个月之前的历史任务数据,保留本月和后两个月的数据
        DeleteOldTaskHistory(3);
    }
}