430 lines
30 KiB
XML
430 lines
30 KiB
XML
<Window x:Class="OrpaonVision.ConfigApp.MainWindow"
|
||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||
xmlns:controls="clr-namespace:OrpaonVision.ConfigApp.Infrastructure.Controls"
|
||
mc:Ignorable="d"
|
||
Title="MainWindow" Height="700" Width="980" MinWidth="820" MinHeight="620">
|
||
<Grid Margin="16">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
<RowDefinition Height="Auto" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<StackPanel Grid.Row="0" Orientation="Horizontal" Margin="0,0,0,12">
|
||
<TextBlock FontSize="20" FontWeight="SemiBold" Text="CVAT 联调 + 规则配置(M3 最小面板)" VerticalAlignment="Center" />
|
||
<Button Content="训练任务管理" Margin="20,0,0,0" Padding="12,6" VerticalAlignment="Center"
|
||
Click="OpenTrainingTaskManagement_Click"
|
||
controls:PermissionControl.PermissionCode="TRAINING_VIEW"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Content="产品会话管理" Margin="10,0,0,0" Padding="12,6" VerticalAlignment="Center"
|
||
Click="OpenProductionSessionManagement_Click"
|
||
controls:PermissionControl.PermissionCode="SESSION_VIEW"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
</StackPanel>
|
||
|
||
<Border
|
||
Grid.Row="1"
|
||
Padding="14"
|
||
BorderBrush="#DDDDDD"
|
||
BorderThickness="1"
|
||
CornerRadius="6">
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="170" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<TextBlock Grid.Row="0" Grid.Column="0" Margin="0,0,8,10" VerticalAlignment="Center" Text="本地项目 ID" />
|
||
<TextBox Grid.Row="0" Grid.Column="1" Margin="0,0,0,10" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding ProjectIdText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="1" Grid.Column="0" Margin="0,0,8,10" VerticalAlignment="Center" Text="本地标注任务 ID" />
|
||
<TextBox Grid.Row="1" Grid.Column="1" Margin="0,0,0,10" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding AnnotationTaskIdText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="2" Grid.Column="0" Margin="0,0,8,10" VerticalAlignment="Center" Text="CVAT 服务地址" />
|
||
<TextBox Grid.Row="2" Grid.Column="1" Margin="0,0,0,10" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding CvatEndpointText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="3" Grid.Column="0" Margin="0,0,8,10" VerticalAlignment="Center" Text="CVAT 项目 ID" />
|
||
<TextBox Grid.Row="3" Grid.Column="1" Margin="0,0,0,10" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding CvatProjectIdText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="4" Grid.Column="0" Margin="0,0,8,10" VerticalAlignment="Center" Text="CVAT 任务 ID" />
|
||
<TextBox Grid.Row="4" Grid.Column="1" Margin="0,0,0,10" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding CvatTaskIdText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="5" Grid.Column="0" Margin="0,0,8,10" VerticalAlignment="Center" Text="请求人" />
|
||
<TextBox Grid.Row="5" Grid.Column="1" Margin="0,0,0,10" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding RequestedByText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<StackPanel Grid.Row="6" Grid.Column="1" Orientation="Horizontal" Margin="0,4,0,10">
|
||
<Button
|
||
x:Name="CheckStatusButton"
|
||
Width="140"
|
||
Height="32"
|
||
Margin="0,0,10,0"
|
||
Content="检查连通状态"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnCheckStatusClicked"
|
||
controls:PermissionControl.PermissionCode="CVAT_VIEW_STATUS"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
x:Name="QueryTaskDetailButton"
|
||
Width="140"
|
||
Height="32"
|
||
Margin="0,0,10,0"
|
||
Content="查询任务详情"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnQueryTaskDetailClicked"
|
||
controls:PermissionControl.PermissionCode="CVAT_VIEW_TASK_DETAIL"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
x:Name="SyncButton"
|
||
Width="120"
|
||
Height="32"
|
||
Content="发起同步"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnSyncClicked"
|
||
controls:PermissionControl.PermissionCode="CVAT_SYNC_PROJECT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
</StackPanel>
|
||
|
||
<TextBlock Grid.Row="7" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Top" Text="状态输出" />
|
||
<TextBlock Grid.Row="7" Grid.Column="1" Margin="0,0,0,6" Foreground="{Binding StatusBrush}" Text="{Binding StatusText}" TextWrapping="Wrap" />
|
||
|
||
<TextBlock Grid.Row="8" Grid.Column="0" Margin="0,0,8,8" VerticalAlignment="Top" Text="处理建议" />
|
||
<TextBlock Grid.Row="8" Grid.Column="1" Margin="0,0,0,8" Foreground="{Binding FriendlyHintBrush}" Text="{Binding FriendlyHintText}" TextWrapping="Wrap" />
|
||
|
||
<TextBlock Grid.Row="9" Grid.Column="0" Margin="0,0,8,8" VerticalAlignment="Top" Text="任务详情" />
|
||
<Border Grid.Row="9" Grid.Column="1" Margin="0,0,0,8" Padding="8" BorderBrush="#E5E5E5" BorderThickness="1" CornerRadius="4">
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="*" />
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<TextBlock Grid.Row="0" Grid.Column="0" Margin="0,0,6,6" Text="TaskId" />
|
||
<TextBlock Grid.Row="0" Grid.Column="1" Margin="0,0,10,6" Text="{Binding DetailTaskIdText}" />
|
||
<TextBlock Grid.Row="0" Grid.Column="2" Margin="0,0,6,6" Text="ProjectId" />
|
||
<TextBlock Grid.Row="0" Grid.Column="3" Margin="0,0,0,6" Text="{Binding DetailProjectIdText}" />
|
||
|
||
<TextBlock Grid.Row="1" Grid.Column="0" Margin="0,0,6,6" Text="TaskName" />
|
||
<TextBlock Grid.Row="1" Grid.Column="1" Margin="0,0,10,6" Text="{Binding DetailTaskNameText}" TextWrapping="Wrap" />
|
||
<TextBlock Grid.Row="1" Grid.Column="2" Margin="0,0,6,6" Text="TaskStatus" />
|
||
<TextBlock Grid.Row="1" Grid.Column="3" Margin="0,0,0,6" Text="{Binding DetailTaskStatusText}" />
|
||
|
||
<TextBlock Grid.Row="2" Grid.Column="0" Margin="0,0,6,0" Text="ItemCount" />
|
||
<TextBlock Grid.Row="2" Grid.Column="1" Margin="0,0,10,0" Text="{Binding DetailItemCountText}" />
|
||
<TextBlock Grid.Row="2" Grid.Column="2" Margin="0,0,6,0" Text="UpdatedAtUtc" />
|
||
<TextBlock Grid.Row="2" Grid.Column="3" Margin="0,0,0,0" Text="{Binding DetailUpdatedAtText}" />
|
||
</Grid>
|
||
</Border>
|
||
|
||
<TextBlock Grid.Row="10" Grid.Column="0" Margin="0,0,8,8" VerticalAlignment="Top" Text="规则发布" />
|
||
<Border Grid.Row="10" Grid.Column="1" Margin="0,0,0,8" Padding="8" BorderBrush="#E5E5E5" BorderThickness="1" CornerRadius="4">
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="*" />
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<TextBlock Grid.Row="0" Grid.Column="0" Margin="0,0,6,8" VerticalAlignment="Center" Text="机种编码" />
|
||
<TextBox Grid.Row="0" Grid.Column="1" Margin="0,0,10,8" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding RuleProductTypeCodeText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Grid.Row="0" Grid.Column="2" Margin="0,0,6,8" VerticalAlignment="Center" Text="机种名称" />
|
||
<TextBox Grid.Row="0" Grid.Column="3" Margin="0,0,0,8" MinHeight="30" VerticalContentAlignment="Center" Text="{Binding RuleProductTypeNameText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="1" Grid.Column="0" Margin="0,0,6,8" VerticalAlignment="Center" Text="层配置" />
|
||
<DataGrid Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" Margin="0,0,0,6" Height="110"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
HeadersVisibility="Column"
|
||
ItemsSource="{Binding RuleLayers}"
|
||
SelectedItem="{Binding SelectedRuleLayer, Mode=TwoWay}">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Header="层号" Binding="{Binding LayerNoText, UpdateSourceTrigger=PropertyChanged}" Width="120" />
|
||
<DataGridTextColumn Header="层名称" Binding="{Binding LayerName, UpdateSourceTrigger=PropertyChanged}" Width="*" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
|
||
<TextBlock Grid.Row="2" Grid.Column="0" Margin="0,0,6,8" VerticalAlignment="Center" Text="部件配置" />
|
||
<DataGrid Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="3" Margin="0,0,0,6" Height="120"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
HeadersVisibility="Column"
|
||
ItemsSource="{Binding RuleParts}"
|
||
SelectedItem="{Binding SelectedRulePart, Mode=TwoWay}">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Header="编码" Binding="{Binding PartCode, UpdateSourceTrigger=PropertyChanged}" Width="150" />
|
||
<DataGridTextColumn Header="名称" Binding="{Binding PartName, UpdateSourceTrigger=PropertyChanged}" Width="*" />
|
||
<DataGridTextColumn Header="层号" Binding="{Binding LayerNoText, UpdateSourceTrigger=PropertyChanged}" Width="120" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
|
||
<TextBlock Grid.Row="3" Grid.Column="0" Margin="0,0,6,8" VerticalAlignment="Center" Text="ROI 配置" />
|
||
<DataGrid Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="3" Margin="0,0,0,6" Height="130"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
HeadersVisibility="Column"
|
||
ItemsSource="{Binding RuleRois}"
|
||
SelectedItem="{Binding SelectedRuleRoi, Mode=TwoWay}">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Header="编码" Binding="{Binding RoiCode, UpdateSourceTrigger=PropertyChanged}" Width="130" />
|
||
<DataGridTextColumn Header="部件编码" Binding="{Binding PartCode, UpdateSourceTrigger=PropertyChanged}" Width="130" />
|
||
<DataGridTextColumn Header="X" Binding="{Binding XText, UpdateSourceTrigger=PropertyChanged}" Width="70" />
|
||
<DataGridTextColumn Header="Y" Binding="{Binding YText, UpdateSourceTrigger=PropertyChanged}" Width="70" />
|
||
<DataGridTextColumn Header="W" Binding="{Binding WidthText, UpdateSourceTrigger=PropertyChanged}" Width="70" />
|
||
<DataGridTextColumn Header="H" Binding="{Binding HeightText, UpdateSourceTrigger=PropertyChanged}" Width="70" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
|
||
<TextBlock Grid.Row="4" Grid.Column="0" Margin="0,0,6,8" VerticalAlignment="Center" Text="规则配置" />
|
||
<DataGrid Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="3" Margin="0,0,0,6" Height="140"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
HeadersVisibility="Column"
|
||
ItemsSource="{Binding RuleItems}"
|
||
SelectedItem="{Binding SelectedRuleItem, Mode=TwoWay}">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Header="编码" Binding="{Binding RuleCode, UpdateSourceTrigger=PropertyChanged}" Width="130" />
|
||
<DataGridTextColumn Header="名称" Binding="{Binding RuleName, UpdateSourceTrigger=PropertyChanged}" Width="150" />
|
||
<DataGridTextColumn Header="类型" Binding="{Binding RuleType, UpdateSourceTrigger=PropertyChanged}" Width="150" />
|
||
<DataGridTextColumn Header="参数(JSON)" Binding="{Binding ParametersJson, UpdateSourceTrigger=PropertyChanged}" Width="*" />
|
||
<DataGridCheckBoxColumn Header="启用" Binding="{Binding Enabled, UpdateSourceTrigger=PropertyChanged}" Width="70" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
|
||
<StackPanel Grid.Row="5" Grid.Column="1" Grid.ColumnSpan="3" Orientation="Horizontal" Margin="0,0,0,8">
|
||
<Button Width="72" Height="28" Margin="0,0,8,0" Content="+ 层" Click="OnAddRuleLayerClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="88" Height="28" Margin="0,0,16,0" Content="- 选中层" Click="OnRemoveRuleLayerClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="72" Height="28" Margin="0,0,8,0" Content="+ 部件" Click="OnAddRulePartClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="94" Height="28" Margin="0,0,16,0" Content="- 选中部件" Click="OnRemoveRulePartClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="72" Height="28" Margin="0,0,8,0" Content="+ ROI" Click="OnAddRuleRoiClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="88" Height="28" Margin="0,0,16,0" Content="- 选中ROI" Click="OnRemoveRuleRoiClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="72" Height="28" Margin="0,0,8,0" Content="+ 规则" Click="OnAddRuleItemClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button Width="88" Height="28" Content="- 选中规则" Click="OnRemoveRuleItemClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
</StackPanel>
|
||
|
||
<StackPanel Grid.Row="6" Grid.Column="1" Grid.ColumnSpan="3" Orientation="Horizontal" Margin="0,8,0,8">
|
||
<Button
|
||
Width="150"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="保存规则草稿"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnSaveRuleDraftClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_CREATE_DRAFT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="150"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="发布规则版本"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnPublishRuleVersionClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_PUBLISH"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="100"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="对比版本"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnCompareVersionsClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_VIEW"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="100"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="回滚版本"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnRollbackVersionClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_ROLLBACK"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="110"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="查询审计"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnQueryRuleAuditClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_VIEW_AUDIT"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="110"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="停用版本"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnDisableRuleVersionClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_DISABLE"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="110"
|
||
Height="30"
|
||
Margin="0,0,10,0"
|
||
Content="版本详情"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnQueryRuleVersionDetailClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_VIEW"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
<Button
|
||
Width="120"
|
||
Height="30"
|
||
Content="分页查询版本"
|
||
IsEnabled="{Binding IsIdle}"
|
||
Click="OnQueryRuleVersionPagedClicked"
|
||
controls:PermissionControl.PermissionCode="RULE_VIEW"
|
||
controls:PermissionControl.CurrentUserId="{Binding CurrentUserId}" />
|
||
</StackPanel>
|
||
|
||
<TextBlock Grid.Row="7" Grid.Column="0" Margin="0,0,6,0" Text="最新版本" />
|
||
<TextBlock Grid.Row="7" Grid.Column="1" Margin="0,0,10,0" Text="{Binding PublishedRuleVersionText}" />
|
||
<TextBlock Grid.Row="7" Grid.Column="2" Margin="0,0,6,0" Text="发布时间(UTC)" />
|
||
<TextBlock Grid.Row="7" Grid.Column="3" Margin="0,0,0,0" Text="{Binding PublishedRuleAtText}" />
|
||
|
||
<TextBlock Grid.Row="8" Grid.Column="0" Margin="0,8,0,6" Text="源版本号" />
|
||
<TextBox Grid.Row="8" Grid.Column="1" Margin="0,8,0,6" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding CompareSourceVersionText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Grid.Row="8" Grid.Column="2" Margin="0,8,0,6" Text="目标版本号" />
|
||
<TextBox Grid.Row="8" Grid.Column="3" Margin="0,8,0,6" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding CompareTargetVersionText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="9" Grid.Column="0" Margin="0,0,0,6" Text="回滚到版本" />
|
||
<TextBox Grid.Row="9" Grid.Column="1" Margin="0,0,10,6" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding RollbackTargetVersionText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Grid.Row="9" Grid.Column="2" Grid.ColumnSpan="2" Margin="0,0,0,6" VerticalAlignment="Center" Foreground="#666666" Text="请填写要回滚到的目标版本号" />
|
||
|
||
<TextBlock Grid.Row="10" Grid.Column="0" Margin="0,0,0,6" Text="停用版本号" />
|
||
<TextBox Grid.Row="10" Grid.Column="1" Margin="0,0,10,6" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding DisableVersionNoText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Grid.Row="10" Grid.Column="2" Margin="0,0,0,6" Text="详情版本号" />
|
||
<TextBox Grid.Row="10" Grid.Column="3" Margin="0,0,0,6" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding VersionDetailNoText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="11" Grid.Column="0" Margin="0,0,0,6" Text="分页参数" />
|
||
<StackPanel Grid.Row="11" Grid.Column="1" Grid.ColumnSpan="3" Orientation="Horizontal" Margin="0,0,0,6">
|
||
<TextBlock Margin="0,0,6,0" VerticalAlignment="Center" Text="页码" />
|
||
<TextBox Width="80" Margin="0,0,16,0" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding VersionPageIndexText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Margin="0,0,6,0" VerticalAlignment="Center" Text="每页" />
|
||
<TextBox Width="80" MinHeight="26" VerticalContentAlignment="Center" Text="{Binding VersionPageSizeText, UpdateSourceTrigger=PropertyChanged}" />
|
||
</StackPanel>
|
||
|
||
<DataGrid Grid.Row="12" Grid.Column="1" Grid.ColumnSpan="3" Margin="0,0,0,6" Height="140"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
CanUserDeleteRows="False"
|
||
IsReadOnly="True"
|
||
HeadersVisibility="Column"
|
||
ItemsSource="{Binding RuleVersionRows}">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Header="版本号" Binding="{Binding VersionNo}" Width="150" />
|
||
<DataGridTextColumn Header="发布时间(UTC)" Binding="{Binding PublishedAtUtcText}" Width="190" />
|
||
<DataGridTextColumn Header="发布人" Binding="{Binding PublishedBy}" Width="120" />
|
||
<DataGridTextColumn Header="已停用" Binding="{Binding IsDisabledText}" Width="80" />
|
||
<DataGridTextColumn Header="停用时间(UTC)" Binding="{Binding DisabledAtUtcText}" Width="190" />
|
||
<DataGridTextColumn Header="停用人" Binding="{Binding DisabledBy}" Width="*" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
|
||
<TextBlock Grid.Row="13" Grid.Column="1" Grid.ColumnSpan="3" Margin="0,0,0,0" Foreground="#666666" TextWrapping="Wrap"
|
||
Text="提示:编辑列表中的值后可直接保存草稿;删除按钮仅对当前选中行生效;版本对比和回滚需要输入版本号。" />
|
||
</Grid>
|
||
</Border>
|
||
|
||
<TextBlock Grid.Row="11" Grid.Column="0" Margin="0,0,8,0" VerticalAlignment="Top" Text="审计记录" />
|
||
<Grid Grid.Row="11" Grid.Column="1">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="2*" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<DataGrid
|
||
Grid.Row="0"
|
||
MinHeight="120"
|
||
Margin="0,0,0,8"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
CanUserDeleteRows="False"
|
||
IsReadOnly="True"
|
||
HeadersVisibility="Column"
|
||
ItemsSource="{Binding RuleAuditRows}">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Header="时间(UTC)" Binding="{Binding ActionAtUtcText}" Width="180" />
|
||
<DataGridTextColumn Header="动作" Binding="{Binding ActionType}" Width="80" />
|
||
<DataGridTextColumn Header="版本" Binding="{Binding VersionNo}" Width="120" />
|
||
<DataGridTextColumn Header="源版本" Binding="{Binding SourceVersionNo}" Width="120" />
|
||
<DataGridTextColumn Header="目标版本" Binding="{Binding TargetVersionNo}" Width="120" />
|
||
<DataGridTextColumn Header="操作人" Binding="{Binding OperatorName}" Width="*" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
|
||
<TextBlock Grid.Row="1" Margin="0,0,0,6" Foreground="#666666" Text="详细日志" />
|
||
|
||
<TextBox
|
||
Grid.Row="2"
|
||
MinHeight="90"
|
||
VerticalScrollBarVisibility="Auto"
|
||
TextWrapping="Wrap"
|
||
AcceptsReturn="True"
|
||
Text="{Binding OutputText}"
|
||
IsReadOnly="True" />
|
||
</Grid>
|
||
</Grid>
|
||
</Border>
|
||
|
||
<TextBlock
|
||
Grid.Row="2"
|
||
Margin="0,10,0,0"
|
||
Foreground="#666666"
|
||
Text="说明:当前页面包含 CVAT 联调与 M3 规则草稿/发布最小流程,不包含批量编排与审批策略。" />
|
||
</Grid>
|
||
</Window>
|