Startup.cs 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using EInk.TaskThread;
  2. using Microsoft.AspNetCore.Builder;
  3. using SqlSugar;
  4. namespace EInk.Lot2Lot3
  5. {
  6. public class ReadLot2Filter : IStartupFilter
  7. {
  8. private readonly ISqlSugarClient _db = new SqlSugarClient(new ConnectionConfig()
  9. {
  10. DbType = DbType.PostgreSQL,
  11. ConnectionString = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("TargetDbConnectionString"),
  12. IsAutoCloseConnection = true
  13. });
  14. private readonly ISqlSugarClient _local_db = new SqlSugarClient(new ConnectionConfig()
  15. {
  16. DbType = DbType.PostgreSQL,
  17. ConnectionString = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("LocalDbConnectionString"),
  18. IsAutoCloseConnection = true
  19. });
  20. public Action<IApplicationBuilder> Configure(Action<IApplicationBuilder> next)
  21. {
  22. ReadLot2Thread readLot2 = new ReadLot2Thread(_db, _local_db);
  23. if (new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("ReadLot2Thread") =="on")
  24. {
  25. readLot2.ReadThreadStart();
  26. }
  27. return app => next(app);
  28. }
  29. }
  30. public class SendLot2Lot3Filter : IStartupFilter
  31. {
  32. private readonly ISqlSugarClient _db = new SqlSugarClient(new ConnectionConfig()
  33. {
  34. DbType = DbType.PostgreSQL,
  35. ConnectionString = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("LocalDbConnectionString"),
  36. IsAutoCloseConnection = true
  37. });
  38. public Action<IApplicationBuilder> Configure(Action<IApplicationBuilder> next)
  39. {
  40. SendLot2Lot3Thread sendLot2Lot3 = new SendLot2Lot3Thread(_db);
  41. if (new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("SendLot2Lot3Thread") == "on")
  42. {
  43. sendLot2Lot3.SendThreadStart();
  44. }
  45. return app => next(app);
  46. }
  47. }
  48. public class DeleteDBRecordFilter : IStartupFilter
  49. {
  50. private readonly ISqlSugarClient _db = new SqlSugarClient(new ConnectionConfig()
  51. {
  52. DbType = DbType.PostgreSQL,
  53. ConnectionString = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("LocalDbConnectionString"),
  54. IsAutoCloseConnection = true
  55. });
  56. public Action<IApplicationBuilder> Configure(Action<IApplicationBuilder> next)
  57. {
  58. DeleteDBRecordThread deleterecord = new DeleteDBRecordThread(_db);
  59. if (new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: true, reloadOnChange: true).Build().GetValue<string>("DeleteDBRecordhread") == "on")
  60. {
  61. deleterecord.DeleteThreadStart();
  62. }
  63. return app => next(app);
  64. }
  65. }
  66. }