feat: move test buttons to right panel, add user auth dialog for reports

Move Start/Stop/Report buttons from the middle panel to the top of
TestPanelView (automated tests section), matching the old application
layout. Remove inline Operator/Client text fields — operator identity
now comes from a UserCheckDialog (username/password) shown before the
existing ReportDialog. Add credential storage to ConfigurationService.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-11 16:41:20 +02:00
parent d34e81163a
commit 4964806de1
10 changed files with 267 additions and 53 deletions

View File

@@ -451,8 +451,6 @@
<RowDefinition Height="Auto"/> <!-- Pump manual controls -->
<RowDefinition Height="Auto"/> <!-- Pump live data -->
<RowDefinition Height="Auto"/> <!-- Status displays -->
<RowDefinition Height="Auto"/> <!-- Test controls -->
<RowDefinition Height="Auto"/> <!-- Operator / client -->
</Grid.RowDefinitions>
<!-- Pump identification: selector + K-Line ECU info -->
@@ -509,42 +507,6 @@
<uc:StatusDisplayView DataContext="{Binding StatusDisplay2}" Margin="0,4,0,0"/>
</StackPanel>
<!-- Test controls (Start / Stop) -->
<Border Grid.Row="6" Padding="6,8" BorderBrush="#999" BorderThickness="0,0,0,1">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Button Content="▶ START TEST" FontSize="15" FontWeight="Bold"
Height="44" Margin="0,0,4,0"
Command="{Binding StartTestCommand}"
Foreground="DarkGreen"/>
<Button Grid.Column="1" Content="■ STOP" FontSize="15" FontWeight="Bold"
Height="44" Margin="4,0"
Command="{Binding StopTestCommand}"
Foreground="DarkRed"/>
<Button Grid.Column="2" Content="📄 Report" FontSize="13"
Height="44" Margin="4,0,0,0"
Command="{Binding GenerateReportCommand}"/>
</Grid>
</Border>
<!-- Operator / client entry -->
<StackPanel Grid.Row="7" Margin="6,8">
<StackPanel Orientation="Horizontal" Margin="0,4">
<TextBlock Text="Operator:" Width="65" VerticalAlignment="Center" FontSize="12"/>
<TextBox Text="{Binding OperatorName, UpdateSourceTrigger=PropertyChanged}"
Width="200" Height="22" FontSize="12"/>
</StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,4">
<TextBlock Text="Client:" Width="65" VerticalAlignment="Center" FontSize="12"/>
<TextBox Text="{Binding ClientName, UpdateSourceTrigger=PropertyChanged}"
Width="200" Height="22" FontSize="12"/>
</StackPanel>
</StackPanel>
</Grid>
</ScrollViewer>