DeleteDBRecordThread.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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. private int daysago;
  12. public DeleteDBRecordThread(ISqlSugarClient db, int daysago)
  13. {
  14. _db = db;
  15. this.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. DateTime now = DateTime.Now;
  30. if (now.Hour==8 && now.Minute==0)
  31. {
  32. _db.Deleteable<Lot2Lot3Model>().Where(x => x.create_time < now.AddDays(-2)).ExecuteCommand();
  33. LogerHelper.RecordLogTxt("DeleteTask");
  34. }
  35. }
  36. catch (Exception ex)
  37. {
  38. LogerHelper.RecordLogTxt("DeleteTask," + ex.Message);
  39. }
  40. finally
  41. {
  42. Thread.Sleep(1000 * 60);
  43. }
  44. }
  45. }
  46. }
  47. }