ConvertHelper.cs 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. using ivf_tl_Entity.DebugEntitys;
  2. using ivf_tl_Entity.DTO;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Diagnostics;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Media.Imaging;
  10. namespace ivf_tl_Services
  11. {
  12. public class ConvertHelper
  13. {
  14. public TLSetting ConvertToTLSetting(tlInfoDTO tlInfo, tlSettingDTO tlSetting)
  15. {
  16. if (tlInfo == null) return null;
  17. TLSetting TLSetting = new TLSetting();
  18. TLSetting.id = tlInfo.id;
  19. TLSetting.tlSn = tlInfo.tlSn;
  20. TLSetting.tlName = tlInfo.tlName;
  21. TLSetting.state = tlInfo.state;
  22. TLSetting.online = tlInfo.online;
  23. TLSetting.softwareVersion = tlInfo.softwareVersion;
  24. TLSetting.protocolAddress = tlInfo.protocolAddress;
  25. TLSetting.installTime = tlInfo.installTime;
  26. TLSetting.address = tlInfo.address;
  27. TLSetting.socketIp = tlInfo.socketIp;
  28. TLSetting.socketPort = tlInfo.socketPort;
  29. TLSetting.alarmIp = tlInfo.alarmIp;
  30. TLSetting.alarmPort = tlInfo.alarmPort;
  31. TLSetting.mqttQueue = tlInfo.mqttQueue;
  32. TLSetting.kafkaTopic = tlInfo.kafkaTopic;
  33. TLSetting.remark = tlInfo.remark;
  34. if (tlSetting == null) return TLSetting;
  35. TLSetting.tmpDir = tlSetting.tmpDir;
  36. TLSetting.autoFocusTime = tlSetting.autoFocusTime;
  37. TLSetting.videoFps = tlSetting.videoFps;
  38. TLSetting.watermarking = tlSetting.watermarking;
  39. TLSetting.bufferBottlerPressureMax = tlSetting.bufferBottlerPressureMax;
  40. TLSetting.bufferBottlerPressureMin = tlSetting.bufferBottlerPressureMin;
  41. TLSetting.pressureAlarmMax = tlSetting.pressureAlarmMax;
  42. TLSetting.pressureAlarmMin = tlSetting.pressureAlarmMin;
  43. TLSetting.temperatureAlarmMax = tlSetting.temperatureAlarmMax;
  44. TLSetting.temperatureAlarmMin = tlSetting.temperatureAlarmMin;
  45. TLSetting.bufferBottlerAerationNum = tlSetting.bufferBottlerAerationNum;
  46. TLSetting.houseAerationNum = tlSetting.houseAerationNum;
  47. TLSetting.ventilationDelay = tlSetting.ventilationDelay;
  48. TLSetting.airSwapFrequency = tlSetting.airSwapFrequency;
  49. TLSetting.airSwapTime = tlSetting.airSwapTime;
  50. TLSetting.valueDelay = tlSetting.valueDelay;
  51. TLSetting.aerationDelay = tlSetting.aerationDelay;
  52. if (tlSetting.newAirSwap == 1)
  53. {
  54. TLSetting.newAirSwap = true;
  55. }
  56. TLSetting.motorDelay = tlSetting.motorDelay;
  57. TLSetting.verticalMotorPulseMax = tlSetting.verticalMotorPulseMax;
  58. TLSetting.photoIntervalPerRound = tlSetting.photoIntervalPerRound;
  59. TLSetting.lightOn = tlSetting.lightOn;
  60. TLSetting.keepDate = tlSetting.keepDate;
  61. TLSetting.heapDate = tlSetting.heapDate;
  62. TLSetting.mattingAlarmTimes = tlSetting.mattingAlarmTimes;
  63. TLSetting.houseDoorAlarmTime = tlSetting.houseDoorAlarmTime;
  64. TLSetting.temperatureAlarmTime = tlSetting.temperatureAlarmTime;
  65. TLSetting.pressureAlarmTime = tlSetting.pressureAlarmTime;
  66. TLSetting.chartThreshold = tlSetting.chartThreshold;
  67. TLSetting.saveSourcePic = TLSetting.saveSourcePic;
  68. if (tlSetting.compositeVideo == 1)
  69. {
  70. TLSetting.buildVideo = true;
  71. }
  72. return TLSetting;
  73. }
  74. public BitmapImage StringToBitmapImage(string imageurl)
  75. {
  76. try
  77. {
  78. BitmapImage bitImage = new BitmapImage();
  79. bitImage.BeginInit();
  80. bitImage.UriSource = new Uri(imageurl, UriKind.Absolute);
  81. bitImage.CacheOption = System.Windows.Media.Imaging.BitmapCacheOption.OnLoad;
  82. bitImage.EndInit();
  83. return bitImage;
  84. }
  85. catch (Exception ex)
  86. {
  87. return null;
  88. }
  89. }
  90. public BitmapImage StringToBitmapImage(string imageurl, Action<BitmapImage> h)
  91. {
  92. try
  93. {
  94. BitmapImage bitImage = new BitmapImage();
  95. bitImage.BeginInit();
  96. bitImage.UriSource = new Uri(imageurl, UriKind.Absolute);
  97. bitImage.CacheOption = System.Windows.Media.Imaging.BitmapCacheOption.OnLoad;
  98. bitImage.EndInit();
  99. bitImage.DecodeFailed += BitImage_DecodeFailed;
  100. bitImage.DownloadFailed += BitImage_DownloadFailed;
  101. bitImage.DownloadCompleted += BitImage_DownloadCompleted;
  102. return bitImage;
  103. }
  104. catch (Exception ex)
  105. {
  106. return null;
  107. }
  108. }
  109. private void BitImage_DownloadFailed(object? sender, System.Windows.Media.ExceptionEventArgs e)
  110. {
  111. Debug.WriteLine("BitImage_DownloadFailed");
  112. }
  113. private void BitImage_DecodeFailed(object? sender, System.Windows.Media.ExceptionEventArgs e)
  114. {
  115. Debug.WriteLine("BitImage_DecodeFailed");
  116. }
  117. private void BitImage_DownloadCompleted(object? sender, EventArgs e)
  118. {
  119. Debug.WriteLine("完成");
  120. }
  121. }
  122. }