DeleteDBRecordThread.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. using EInk.Dtos;
  2. using EInk.Models;
  3. using EInk.Tools;
  4. using Newtonsoft.Json;
  5. using SqlSugar;
  6. namespace EInk.TaskThread
  7. {
  8. public class DeleteDBRecordThread
  9. {
  10. private readonly ISqlSugarClient _db;
  11. public static int daysago;
  12. public DeleteDBRecordThread(ISqlSugarClient db, int daysago)
  13. {
  14. _db = db;
  15. DeleteDBRecordThread.daysago = daysago;
  16. }
  17. public void DeleteThreadStart()
  18. {
  19. Thread t = new Thread(DeleteTask);
  20. t.Start(_db);
  21. }
  22. static void DeleteTask(object db)
  23. {
  24. ISqlSugarClient _db = (ISqlSugarClient)db;
  25. while (true)
  26. {
  27. try
  28. {
  29. int days = DeleteDBRecordThread.daysago;
  30. DateTime now = DateTime.Now;
  31. if (now.Hour==8 && now.Minute==0)
  32. {
  33. LogerHelper.RecordLogTxt($"DeleteTask, DeleteLot2Lot3Data Before {now.AddDays(-DeleteDBRecordThread.daysago).ToString()}, {_db.Deleteable<Lot2Lot3Model>().Where(x => x.create_time < now.AddDays(-DeleteDBRecordThread.daysago)).ExecuteCommand()}");
  34. LogerHelper.RecordLogTxt($"DeleteTask, DeleteColourCastData Before {now.AddDays(-DeleteDBRecordThread.daysago).ToString()}, {_db.Deleteable<ColourCastModel>().Where(x => x.create_time < now.AddDays(-DeleteDBRecordThread.daysago)).ExecuteCommand()}");
  35. }
  36. }
  37. catch (Exception ex)
  38. {
  39. LogerHelper.RecordLogTxt("DeleteTask," + ex.Message);
  40. }
  41. finally
  42. {
  43. Thread.Sleep(1000 * 60);
  44. }
  45. }
  46. }
  47. }
  48. }