Browse Source

修改EFEM界面按键根据系统模式切换状态的逻辑

JET-GZX 1 day ago
parent
commit
6326ebb598

+ 10 - 10
VirgoUI/Models/Platform/EFEM/EFEMView.xaml

@@ -29,16 +29,16 @@
                 <ColumnDefinition Width="400"/>
             </Grid.ColumnDefinitions>
             <StackPanel Orientation="Horizontal" Margin="20" VerticalAlignment="Top" HorizontalAlignment="Left">
-                <local:FOUPFrontView UnitData="{Binding FOUPA}" Margin="0,0,0,0"></local:FOUPFrontView>
+                <local:FOUPFrontView UnitData="{Binding FOUPA}" Margin="0,0,0,0" IsEnabled="{Binding EfemViewEnable}"></local:FOUPFrontView>
 
             </StackPanel>
             <Grid Grid.Column="1">
                 <Canvas Grid.Row="0" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="180,-15,0,0">
 
-                    <parts1:EFEMTopView Height="540" Width="535" Canvas.Left="226" Canvas.Top="104"></parts1:EFEMTopView>
+                    <parts1:EFEMTopView Height="540" Width="535" Canvas.Left="226" Canvas.Top="104"  IsEnabled="{Binding EfemViewEnable}"></parts1:EFEMTopView>
                     <!--<parts1:EquipmentTopView x:Name="mf"  Canvas.Left="92" Canvas.Top="-8"/>
                     <parts1:SingleArmRobot Canvas.Left="400" Canvas.Top="310"  Wafer1="{Binding EfemRobotWafer2}" Wafer2="{Binding EfemRobotWafer1}"  RobotMoveInfo="{Binding EfemRobotMoveInfo}"/>-->
-                    <local:EFEMFrontView UnitData="{Binding EFEM}"  Canvas.Left="766" Canvas.Top="495"  />
+                    <local:EFEMFrontView UnitData="{Binding EFEM}"  Canvas.Left="766" Canvas.Top="495" IsEnabled="{Binding EfemViewEnable}"/>
 
                     <Grid Width="150" Canvas.Left="-74" Canvas.Top="560"  Visibility="{Binding CassetteDoorVisibility}">
                         <Grid.RowDefinitions>
@@ -58,7 +58,7 @@
                         </Border>
                     </Grid>
 
-                    <Grid Width="300" Canvas.Left="-74" Canvas.Top="390" >
+                    <Grid Width="300" Canvas.Left="-74" Canvas.Top="390" IsEnabled="{Binding EfemViewEnable}" >
                         <Grid.RowDefinitions>
                             <RowDefinition Height="24"/>
                             <RowDefinition Height="30"/>
@@ -200,7 +200,7 @@
 
                     </Grid>
 
-                    <Grid Canvas.Left="-74" Canvas.Top="269" Width="300" HorizontalAlignment="Left">
+                    <Grid Canvas.Left="-74" Canvas.Top="269" Width="300" HorizontalAlignment="Left" IsEnabled="{Binding EfemViewEnable}">
                         <Grid.RowDefinitions>
                             <RowDefinition Height="24"/>
                             <RowDefinition Height="35"/>
@@ -218,10 +218,10 @@
                             <TextBlock Text="Wafer Size" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>
                         </Border>
                         <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="1" Grid.Column="1" Padding="5,1">
-                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding EnableWaferSize}">
+                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
                                 <!--<TextBlock Text="{Binding WaferSizeAligner1}" TextAlignment="Center" Width="50" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>-->
 
-                                <RadioButton Content="{Binding SmallPinWaferSize}" Visibility="{Binding SmallPinWaferSize, Converter={StaticResource WaferSizeToVisibility}}"  Width="60" Height="24" Margin="4,0,0,0" Style="{DynamicResource OverviewRadioButton}" IsChecked="{Binding WaferSizeCooling1_3}">
+                                <RadioButton Content="{Binding SmallPinWaferSize}" Visibility="{Binding SmallPinWaferSize, Converter={StaticResource WaferSizeToVisibility}}" Width="60" Height="24" Margin="4,0,0,0" Style="{DynamicResource OverviewRadioButton}" IsChecked="{Binding WaferSizeCooling1_3}">
                                     <i:Interaction.Triggers>
                                         <i:EventTrigger EventName="Click">
                                             <cal:ActionMessage MethodName="SetWaferSize">
@@ -320,7 +320,7 @@
                             <TextBlock Text="Wafer Size" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>
                         </Border>
                         <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="1" Grid.Column="1" Padding="5,1">
-                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding EnableWaferSize}">
+                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding EfemViewEnable}">
                                 <!--<TextBlock Text="{Binding WaferSizePMA}" TextAlignment="Center" Width="50" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>-->
 
                                 <RadioButton Content="{Binding SmallPinWaferSize}" Visibility="{Binding SmallPinWaferSize, Converter={StaticResource WaferSizeToVisibility}}"  Width="60" Height="24" Margin="4,0,0,0" Style="{DynamicResource OverviewRadioButton}" IsChecked="{Binding WaferSizePMA_3}">
@@ -372,7 +372,7 @@
                     <RowDefinition />
                     <RowDefinition />
                 </Grid.RowDefinitions>
-                <Grid Grid.Row="0" Width="385" HorizontalAlignment="Left" Margin="0,90,0,0">
+                <Grid Grid.Row="0" Width="385" HorizontalAlignment="Left" Margin="0,90,0,0" >
                     <Grid.RowDefinitions>
                         <RowDefinition Height="24"/>
                         <RowDefinition Height="30"/>
@@ -436,7 +436,7 @@
                 </Grid>
 
 
-                <Grid Grid.Row="1" Width="385" HorizontalAlignment="Left" Margin="0,10,0,0">
+                <Grid Grid.Row="1" Width="385" HorizontalAlignment="Left" Margin="0,10,0,0" IsEnabled="{Binding EfemViewEnable}">
                     <Grid.RowDefinitions>
                         <RowDefinition Height="24"/>
                         <RowDefinition Height="35"/>

+ 12 - 1
VirgoUI/Models/Platform/EFEM/EFEMViewModel.cs

@@ -51,6 +51,17 @@ namespace VirgoUI.Client.Models.Platform.EFEM
             get { return GetUnitStatusBackground(EfemStatus); }
         }
 
+        [Subscription("System.IsAutoRunning")]
+        public string EfemRtStatus { get; set; }
+
+        [Subscription("System.IsAutoIdle")]
+        public string EfemIdleStatus { get; set; }
+
+        [Subscription("Rt.Status")]
+        public string RtStatus { get; set; }
+
+        public bool EfemViewEnable => RtStatus != "AutoIdle" && RtStatus != "AutoRunning";
+
         [Subscription("PMA.IsAutoMode")]
         public bool PMAIsAutoMode { get; set; }
 
@@ -204,7 +215,7 @@ namespace VirgoUI.Client.Models.Platform.EFEM
 
         private EfemType _efemType = EfemType.FutureEfem;
 
-
+       
         public Visibility GripVisibility
         {
             get;