1.删除EquipmentManager中Engmode相关程序段

2.优化上界面interlockbypass显示tips提示
This commit is contained in:
SIC1016\caipeilun 2023-08-31 17:26:43 +08:00
parent 1ed5d363fd
commit ce868c2b14
3 changed files with 65 additions and 22 deletions

View File

@ -489,7 +489,6 @@ namespace SicRT.Equipments.Systems
DATA.Subscribe("System.IsAutoRunning", () => IsRunning);//System.IsAutoRunning=>IsRunning绑定相同的值不同的地方用
DATA.Subscribe("System.Modules", () => _modules);
DATA.Subscribe("System.SignalTowerData", () => _mainSignalTower?.DeviceData);
DATA.Subscribe("System.IsEngMode", () => _isEngMode);
}
void SubscribeOperation()
@ -1390,20 +1389,9 @@ namespace SicRT.Equipments.Systems
MonitorPmTmInfo();
MonitorUPSAlarm();
//MonitorAETemp();
MonitorEngMode();
return true;
}
private bool _isEngMode;
private void MonitorEngMode()
{
var isBypassInterlock = SC.GetValue<bool>("System.BypassInterlock");
var isBypassEnableTable = SC.GetValue<bool>("System.BypassEnableTable");
_isEngMode = isBypassInterlock || isBypassEnableTable;
}
private void MonitorPmTmInfo()
{
if (_pm1SlitValve != null)

View File

@ -430,8 +430,8 @@
ModuleDescription="TM"
IsOnline="{Binding IsOnlineTM}"
Status="{Binding TMStatus}"
HasWarning="{Binding IsTMInterlockBypassed}"
WarningTip="Warning: Interlock bypassed"
HasWarning="{Binding IsTMWarning}"
WarningTip="{Binding TMWarningMessage}"
cal:Message.Attach="[SetOnline] = [Action SetModuleOnline($source, $eventArgs)];[SetOffline] = [Action SetModuleOffline($source, $eventArgs)]" />
<controls:ModuleStatusIndicator
Grid.Row="0"
@ -487,8 +487,8 @@
ModuleDescription="PM1"
IsOnline="{Binding IsOnlinePM1}"
Status="{Binding PM1Status}"
HasWarning="{Binding IsPM1InterlockBypassed}"
WarningTip="Warning: Interlock bypassed"
HasWarning="{Binding IsPM1Warning}"
WarningTip="{Binding PM1WarningMessage}"
cal:Message.Attach="[SetOnline] = [Action SetModuleOnline($source, $eventArgs)];[SetOffline] = [Action SetModuleOffline($source, $eventArgs)]" />
<controls:ModuleStatusIndicator
Grid.Row="1"
@ -497,9 +497,8 @@
ModuleName="PM2"
ModuleDescription="PM2"
IsOnline="{Binding IsOnlinePM2}"
Status="{Binding PM2Status}"
HasWarning="{Binding IsPM2InterlockBypassed}"
WarningTip="Warning: Interlock bypassed"
HasWarning="{Binding IsPM2Warning}"
WarningTip="{Binding PM2WarningMessage}"
cal:Message.Attach="[SetOnline] = [Action SetModuleOnline($source, $eventArgs)];[SetOffline] = [Action SetModuleOffline($source, $eventArgs)]" />
<controls:ModuleStatusIndicator
Grid.Row="1"

View File

@ -404,15 +404,71 @@ namespace SicUI.Client
public Visibility WarnEventsVisibility { get; set; }
[Subscription("PM1.IsInterlockBypassed")]
[Subscription("PM1.IsBypassInterlock")]
public bool IsPM1InterlockBypassed { get; set; }
[Subscription("PM2.IsInterlockBypassed")]
[Subscription("PM1.IsBypassEnableTable")]
public bool IsPM1EnableTableBypassed { get; set; }
public bool IsPM1Warning => IsPM1InterlockBypassed || IsPM1EnableTableBypassed;
public string PM1WarningMessage
{
get
{
if (IsPM1InterlockBypassed && IsPM1EnableTableBypassed)
return "PM1 Interlock and Enable Table are bypassed";
if (IsPM1InterlockBypassed)
return "PM1 Interlock is bypassed";
return "PM1 Enable Table is bypassed";
}
}
[Subscription("PM2.IsBypassInterlock")]
public bool IsPM2InterlockBypassed { get; set; }
[Subscription("TM.IsInterlockBypassed")]
[Subscription("PM2.IsBypassEnableTable")]
public bool IsPM2EnableTableBypassed { get; set; }
public bool IsPM2Warning => IsPM2InterlockBypassed || IsPM2EnableTableBypassed;
public string PM2WarningMessage
{
get
{
if (IsPM2InterlockBypassed && IsPM2EnableTableBypassed)
return "PM2 Interlock and Enable Table are bypassed";
if (IsPM2InterlockBypassed)
return "PM2 Interlock is bypassed";
return "PM2 Enable Table is bypassed";
}
}
[Subscription("TM.IsBypassInterlock")]
public bool IsTMInterlockBypassed { get; set; }
[Subscription("TM.IsBypassEnableTable")]
public bool IsTMEanbleTableBypassed { get; set; }
public bool IsTMWarning => IsTMInterlockBypassed || IsTMEanbleTableBypassed;
public string TMWarningMessage
{
get
{
if (IsTMInterlockBypassed && IsTMEanbleTableBypassed)
return "TM Interlock and Enable Table are bypassed";
if (IsTMInterlockBypassed)
return "TM Interlock is bypassed";
return "TM Enable Table is bypassed";
}
}
[Subscription("Rt.Status")]
public string RtStatus { get; set; }