Pārlūkot izejas kodu

修改故障和曲线计算

LC 2 mēneši atpakaļ
vecāks
revīzija
ba1f341942

+ 1 - 1
Core/TcpServerFrame.cs

@@ -569,7 +569,7 @@ namespace SWRIS.Core
             var faultData = ReceiveFaultData(buffer);
             if (faultData != null)
             {
-                var equipmentData = App.Config.Equipments.FirstOrDefault(c => c.IpAddress == client.IpAddress);
+                var equipmentData = App.DataCenter.Equipments.FirstOrDefault(c => c.IpAddress == client.IpAddress);
                 if (equipmentData != null)
                 {
                     equipmentData.InUseSensor = faultData.WorkingSensors;

+ 12 - 9
MainWindow.xaml.cs

@@ -226,18 +226,21 @@ namespace SWRIS
                 {
                     equipmentData.Faults.Add(e.FaultData.FaultType, e.FaultData);
                 }
-                if (equipmentData.Messages.Any())
-                {
-                    equipmentData.Messages.Clear();
-                }
-                foreach (var fault in equipmentData.Faults)
+
+                Application.Current.Dispatcher.Invoke(() =>
                 {
-                    if (fault.Value != null)
+                    if (equipmentData.Messages.Any())
                     {
-                        equipmentData.Messages.Add(fault.Value.ToString());
+                        equipmentData.Messages.Clear();
                     }
-
-                }
+                    foreach (var fault in equipmentData.Faults)
+                    {
+                        if (fault.Value != null)
+                        {
+                            equipmentData.Messages.Add(fault.Value.ToString());
+                        }
+                    }
+                });
             }
         }
         /// <summary>

+ 0 - 3
Mapping.cs

@@ -29,7 +29,6 @@ namespace SWRIS
             equipmentModel.WireSurfaceType = (WireSurfaceType)equipmentSettingViewModel.WireSurfaceType;
             equipmentModel.RopeCoreType = (RopeCoreType)equipmentSettingViewModel.RopeCoreType;
             equipmentModel.DisableAlarm = equipmentSettingViewModel.DisableAlarm;
-            equipmentModel.InUseSensor = equipmentSettingViewModel.InUseSensor;
             // 如果源Parameter为null,确保目标Parameter不为null
             if (equipmentSettingViewModel.Parameter == null)
             {
@@ -106,7 +105,6 @@ namespace SWRIS
             equipmentSettingViewModel.WireSurfaceType = (int)equipmentModel.WireSurfaceType;
             equipmentSettingViewModel.RopeCoreType = (int)equipmentModel.RopeCoreType;
             equipmentSettingViewModel.DisableAlarm = equipmentModel.DisableAlarm;
-            equipmentSettingViewModel.InUseSensor = equipmentModel.InUseSensor;
             // 如果源Parameter为null,确保目标Parameter不为null
             if (equipmentModel.Parameter == null)
             {
@@ -162,7 +160,6 @@ namespace SWRIS
             equipmentDataModel.SerialNo = equipmentModel.SerialNo;
             equipmentDataModel.LiftHightRatio = equipmentModel.LiftHightRatio;
             equipmentDataModel.DisableAlarm = equipmentModel.DisableAlarm;
-            equipmentDataModel.InUseSensor = equipmentModel.InUseSensor;
             // 如果有Parameter数据,设置相关属性
             if (equipmentModel.Parameter != null)
             {

+ 1 - 4
Models/EquipmentModel.cs

@@ -53,10 +53,7 @@ namespace SWRIS.Models
         /// 禁用报警
         /// </summary>
         public bool DisableAlarm { get; set; }
-        /// <summary>
-        /// 在用传感器
-        /// </summary>
-        public int[] InUseSensor { get; set; } = new int[] { 1, 2, 3, 4 };
+
         /// <summary>
         /// 参数
         /// </summary>

+ 8 - 1
Pages/RealTime/TwoRopesPage.xaml.cs

@@ -1,9 +1,12 @@
-using SWRIS.Events;
+using HslCommunication.Profinet.Panasonic.Helper;
+using SWRIS.Events;
 using SWRIS.Extensions;
 using SWRIS.Models.ViewModel;
 using SWRIS.Repository;
 using System.Linq;
+using System.Threading;
 using System.Threading.Tasks;
+using System.Windows;
 using System.Windows.Controls;
 
 namespace SWRIS.Pages.RealTime
@@ -27,11 +30,15 @@ namespace SWRIS.Pages.RealTime
                 SecondEquipmentData = App.DataCenter.Equipments[1],
                 Records = _recordRepository.GetLastRecords().ToSimpleRecordDtos()
             };
+ 
             TwoRopesView.FirstEquipment = App.Config.Equipments.First(c => c.IpAddress == TwoRopesView.FirstEquipmentData.IpAddress);
             TwoRopesView.SecondEquipment = App.Config.Equipments.First(c => c.IpAddress == TwoRopesView.SecondEquipmentData.IpAddress);
+
             DataContext = TwoRopesView;
             App.TcpServer.LiveStreamReceived += TcpServer_LiveStreamReceived;
+
         }
+
         private void OneRopePage_Loaded(object sender, System.Windows.RoutedEventArgs e)
         {
             if (TwoRopesView.FirstEquipmentData.ChartSource != null)