diff --git a/Correlator/Util/MessengerToken.cs b/Correlator/Util/MessengerToken.cs index a70f6d5..023fad2 100644 --- a/Correlator/Util/MessengerToken.cs +++ b/Correlator/Util/MessengerToken.cs @@ -4,8 +4,8 @@ { #region Message 普通消息 - public const string SensorADevStatus = "202211150102"; - public const string SensorBDevStatus = "202211150103"; + public const string RedSensorStatus = "202211150102"; + public const string BlueSensorStatus = "202211150103"; public const string HomePageSignal = "202211150104"; public const string HomePageDeviceData = "202212190101"; public const string EditMaterialName = "202212110101"; diff --git a/Correlator/Util/MessengerToken.cs b/Correlator/Util/MessengerToken.cs index a70f6d5..023fad2 100644 --- a/Correlator/Util/MessengerToken.cs +++ b/Correlator/Util/MessengerToken.cs @@ -4,8 +4,8 @@ { #region Message 普通消息 - public const string SensorADevStatus = "202211150102"; - public const string SensorBDevStatus = "202211150103"; + public const string RedSensorStatus = "202211150102"; + public const string BlueSensorStatus = "202211150103"; public const string HomePageSignal = "202211150104"; public const string HomePageDeviceData = "202212190101"; public const string EditMaterialName = "202212110101"; diff --git a/Correlator/View/HomePageProWindow.xaml b/Correlator/View/HomePageProWindow.xaml index 012363b..4387eb6 100644 --- a/Correlator/View/HomePageProWindow.xaml +++ b/Correlator/View/HomePageProWindow.xaml @@ -663,7 +663,7 @@ HorizontalAlignment="Right" Foreground="Red" Text="传感器故障" - Visibility="{Binding BlueTransmitterState, ConverterParameter=1, Converter={StaticResource VisibilityConverter}}" /> + Visibility="{Binding BlueTransmitterState, ConverterParameter=0, Converter={StaticResource VisibilityConverter}}" /> diff --git a/Correlator/Util/MessengerToken.cs b/Correlator/Util/MessengerToken.cs index a70f6d5..023fad2 100644 --- a/Correlator/Util/MessengerToken.cs +++ b/Correlator/Util/MessengerToken.cs @@ -4,8 +4,8 @@ { #region Message 普通消息 - public const string SensorADevStatus = "202211150102"; - public const string SensorBDevStatus = "202211150103"; + public const string RedSensorStatus = "202211150102"; + public const string BlueSensorStatus = "202211150103"; public const string HomePageSignal = "202211150104"; public const string HomePageDeviceData = "202212190101"; public const string EditMaterialName = "202212110101"; diff --git a/Correlator/View/HomePageProWindow.xaml b/Correlator/View/HomePageProWindow.xaml index 012363b..4387eb6 100644 --- a/Correlator/View/HomePageProWindow.xaml +++ b/Correlator/View/HomePageProWindow.xaml @@ -663,7 +663,7 @@ HorizontalAlignment="Right" Foreground="Red" Text="传感器故障" - Visibility="{Binding BlueTransmitterState, ConverterParameter=1, Converter={StaticResource VisibilityConverter}}" /> + Visibility="{Binding BlueTransmitterState, ConverterParameter=0, Converter={StaticResource VisibilityConverter}}" /> diff --git a/Correlator/ViewModel/HomePageProViewModel.cs b/Correlator/ViewModel/HomePageProViewModel.cs index ba520be..66c407f 100644 --- a/Correlator/ViewModel/HomePageProViewModel.cs +++ b/Correlator/ViewModel/HomePageProViewModel.cs @@ -6,6 +6,7 @@ using System.Text.RegularExpressions; using System.Windows; using System.Windows.Threading; +using Correlator.SensorHubTag; using Correlator.Service; using Correlator.Util; using Correlator.View; @@ -13,6 +14,7 @@ using GalaSoft.MvvmLight.Command; using GalaSoft.MvvmLight.Messaging; using HandyControl.Controls; +using Newtonsoft.Json; using ComboBox = System.Windows.Controls.ComboBox; using MessageBox = HandyControl.Controls.MessageBox; @@ -409,6 +411,8 @@ public HomePageProViewModel(IPipeMaterialDataService dataService) { + RegisterMessage(); + TimerTick(); _pipeMaterialsArray = new ObservableCollection(); @@ -424,6 +428,40 @@ } /// + /// 消息监听注册 + /// + private void RegisterMessage() + { + Messenger.Default.Register(this, MessengerToken.RedSensorStatus, dev => + { + "HomePageProViewModel".WriteLog("Red Sensor收到消息:" + JsonConvert.SerializeObject(dev)); + + RedTransmitterBattery = Convert.ToDouble(dev.Cell); + var signalIntensity = Convert.ToInt32(dev.Signal).ToIntensity(); + RedTransmitterSignalIntensity = signalIntensity; + var sensorStatus = dev.Status == "1"; + RedTransmitterState = sensorStatus; + //将信号A数据缓存到FlowStatus + FlowStatus.SensorASignalIntensity = signalIntensity; + FlowStatus.SensorAIsEnable = sensorStatus; + }); + + Messenger.Default.Register(this, MessengerToken.BlueSensorStatus, dev => + { + "HomePageProViewModel".WriteLog("Blue Sensor收到消息:" + JsonConvert.SerializeObject(dev)); + + BlueTransmitterBattery = Convert.ToDouble(dev.Cell); + var signalIntensity = Convert.ToInt32(dev.Signal).ToIntensity(); + BlueTransmitterSignalIntensity = signalIntensity; + var sensorStatus = dev.Status == "1"; + BlueTransmitterState = sensorStatus; + //将信号B数据缓存到FlowStatus + FlowStatus.SensorBSignalIntensity = signalIntensity; + FlowStatus.SensorBIsEnable = sensorStatus; + }); + } + + /// /// 各种定时器 /// private void TimerTick() diff --git a/Correlator/Util/MessengerToken.cs b/Correlator/Util/MessengerToken.cs index a70f6d5..023fad2 100644 --- a/Correlator/Util/MessengerToken.cs +++ b/Correlator/Util/MessengerToken.cs @@ -4,8 +4,8 @@ { #region Message 普通消息 - public const string SensorADevStatus = "202211150102"; - public const string SensorBDevStatus = "202211150103"; + public const string RedSensorStatus = "202211150102"; + public const string BlueSensorStatus = "202211150103"; public const string HomePageSignal = "202211150104"; public const string HomePageDeviceData = "202212190101"; public const string EditMaterialName = "202212110101"; diff --git a/Correlator/View/HomePageProWindow.xaml b/Correlator/View/HomePageProWindow.xaml index 012363b..4387eb6 100644 --- a/Correlator/View/HomePageProWindow.xaml +++ b/Correlator/View/HomePageProWindow.xaml @@ -663,7 +663,7 @@ HorizontalAlignment="Right" Foreground="Red" Text="传感器故障" - Visibility="{Binding BlueTransmitterState, ConverterParameter=1, Converter={StaticResource VisibilityConverter}}" /> + Visibility="{Binding BlueTransmitterState, ConverterParameter=0, Converter={StaticResource VisibilityConverter}}" /> diff --git a/Correlator/ViewModel/HomePageProViewModel.cs b/Correlator/ViewModel/HomePageProViewModel.cs index ba520be..66c407f 100644 --- a/Correlator/ViewModel/HomePageProViewModel.cs +++ b/Correlator/ViewModel/HomePageProViewModel.cs @@ -6,6 +6,7 @@ using System.Text.RegularExpressions; using System.Windows; using System.Windows.Threading; +using Correlator.SensorHubTag; using Correlator.Service; using Correlator.Util; using Correlator.View; @@ -13,6 +14,7 @@ using GalaSoft.MvvmLight.Command; using GalaSoft.MvvmLight.Messaging; using HandyControl.Controls; +using Newtonsoft.Json; using ComboBox = System.Windows.Controls.ComboBox; using MessageBox = HandyControl.Controls.MessageBox; @@ -409,6 +411,8 @@ public HomePageProViewModel(IPipeMaterialDataService dataService) { + RegisterMessage(); + TimerTick(); _pipeMaterialsArray = new ObservableCollection(); @@ -424,6 +428,40 @@ } /// + /// 消息监听注册 + /// + private void RegisterMessage() + { + Messenger.Default.Register(this, MessengerToken.RedSensorStatus, dev => + { + "HomePageProViewModel".WriteLog("Red Sensor收到消息:" + JsonConvert.SerializeObject(dev)); + + RedTransmitterBattery = Convert.ToDouble(dev.Cell); + var signalIntensity = Convert.ToInt32(dev.Signal).ToIntensity(); + RedTransmitterSignalIntensity = signalIntensity; + var sensorStatus = dev.Status == "1"; + RedTransmitterState = sensorStatus; + //将信号A数据缓存到FlowStatus + FlowStatus.SensorASignalIntensity = signalIntensity; + FlowStatus.SensorAIsEnable = sensorStatus; + }); + + Messenger.Default.Register(this, MessengerToken.BlueSensorStatus, dev => + { + "HomePageProViewModel".WriteLog("Blue Sensor收到消息:" + JsonConvert.SerializeObject(dev)); + + BlueTransmitterBattery = Convert.ToDouble(dev.Cell); + var signalIntensity = Convert.ToInt32(dev.Signal).ToIntensity(); + BlueTransmitterSignalIntensity = signalIntensity; + var sensorStatus = dev.Status == "1"; + BlueTransmitterState = sensorStatus; + //将信号B数据缓存到FlowStatus + FlowStatus.SensorBSignalIntensity = signalIntensity; + FlowStatus.SensorBIsEnable = sensorStatus; + }); + } + + /// /// 各种定时器 /// private void TimerTick() diff --git a/Correlator/ViewModel/HomePageViewModel.cs b/Correlator/ViewModel/HomePageViewModel.cs index 2a15ace..79a3f2b 100644 --- a/Correlator/ViewModel/HomePageViewModel.cs +++ b/Correlator/ViewModel/HomePageViewModel.cs @@ -532,7 +532,7 @@ /// private void RegisterMessage() { - Messenger.Default.Register(this, MessengerToken.SensorADevStatus, dev => + Messenger.Default.Register(this, MessengerToken.RedSensorStatus, dev => { "HomePageViewModel".WriteLog("SensorA收到消息:" + JsonConvert.SerializeObject(dev)); @@ -546,7 +546,7 @@ FlowStatus.SensorAIsEnable = sensorStatus; }); - Messenger.Default.Register(this, MessengerToken.SensorBDevStatus, dev => + Messenger.Default.Register(this, MessengerToken.BlueSensorStatus, dev => { "HomePageViewModel".WriteLog("SensorB收到消息:" + JsonConvert.SerializeObject(dev));