643 lines
43 KiB
XML
643 lines
43 KiB
XML
<Window x:Class="XLAB2.MainWindow"
|
||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||
Title="Приемо-сдаточные ведомости"
|
||
Height="860"
|
||
Width="1500"
|
||
MinHeight="700"
|
||
MinWidth="1180"
|
||
WindowState="Maximized"
|
||
Loaded="Window_Loaded">
|
||
<Window.Resources>
|
||
<Style x:Key="GhostGridSplitterStyle" TargetType="GridSplitter">
|
||
<Setter Property="Background" Value="Transparent" />
|
||
<Setter Property="BorderBrush" Value="Transparent" />
|
||
<Setter Property="BorderThickness" Value="0" />
|
||
<Setter Property="ShowsPreview" Value="True" />
|
||
<Setter Property="Opacity" Value="1" />
|
||
<Style.Triggers>
|
||
<Trigger Property="IsMouseOver" Value="True">
|
||
<Setter Property="Background" Value="#D7DADF" />
|
||
<Setter Property="BorderBrush" Value="#BCC1C7" />
|
||
<Setter Property="BorderThickness" Value="1" />
|
||
</Trigger>
|
||
</Style.Triggers>
|
||
</Style>
|
||
</Window.Resources>
|
||
<Grid Margin="12">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<Menu Grid.Row="0"
|
||
Margin="0,0,0,12">
|
||
<MenuItem Header="Справочники">
|
||
<MenuItem Header="Области измерений"
|
||
Click="SpoiDirectoryMenuItem_Click" />
|
||
<MenuItem Header="Наименования типов СИ"
|
||
Click="SpnmtpDirectoryMenuItem_Click" />
|
||
</MenuItem>
|
||
<MenuItem Header="Подразделения"
|
||
Click="FrpdDirectoryMenuItem_Click" />
|
||
<MenuItem Header="Персонал"
|
||
Click="PrsnDirectoryMenuItem_Click" />
|
||
<MenuItem Header="Типоразмеры"
|
||
Click="TypeSizeDirectoryMenuItem_Click" />
|
||
<MenuItem Header="Экземпляры"
|
||
Click="EkzDirectoryMenuItem_Click" />
|
||
<MenuItem Header="Отчеты"
|
||
Click="VerificationReportsMenuItem_Click" />
|
||
</Menu>
|
||
|
||
<Grid Grid.Row="1">
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="430" />
|
||
<ColumnDefinition Width="12" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<GroupBox Grid.Column="0" Header="Документы">
|
||
<Grid Margin="8">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
<RowDefinition Height="Auto" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<WrapPanel Grid.Row="0"
|
||
Margin="0,0,0,8"
|
||
VerticalAlignment="Center">
|
||
<RadioButton Margin="0,0,16,0"
|
||
GroupName="DocumentModeGroup"
|
||
Content="Открытые ПСВ"
|
||
IsChecked="{Binding ShowOpenDocuments, Mode=TwoWay}" />
|
||
<RadioButton GroupName="DocumentModeGroup"
|
||
Content="Закрытые ПСВ (текущий год)"
|
||
IsChecked="{Binding ShowClosedDocuments, Mode=TwoWay}" />
|
||
</WrapPanel>
|
||
|
||
<TextBlock Grid.Row="1"
|
||
Margin="0,0,0,4"
|
||
VerticalAlignment="Center"
|
||
Text="Поиск по номеру ПСВ или подразделению" />
|
||
|
||
<TextBox Grid.Row="2"
|
||
Margin="0,0,0,8"
|
||
Text="{Binding DocumentFilterText, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<ListBox Grid.Row="3"
|
||
ItemsSource="{Binding DocumentsView}"
|
||
SelectedItem="{Binding SelectedDocument, Mode=TwoWay}"
|
||
BorderThickness="1"
|
||
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
|
||
ScrollViewer.VerticalScrollBarVisibility="Auto">
|
||
<ListBox.ContextMenu>
|
||
<ContextMenu DataContext="{Binding PlacementTarget.DataContext, RelativeSource={RelativeSource Self}}">
|
||
<MenuItem Header="Добавить"
|
||
Command="{Binding AddDocumentCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Grid Width="16" Height="16">
|
||
<Ellipse Width="14" Height="14" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Width="2" Height="8" Fill="White" RadiusX="1" RadiusY="1" />
|
||
<Rectangle Width="8" Height="2" Fill="White" RadiusX="1" RadiusY="1" />
|
||
</Grid>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<MenuItem Header="Распечатать"
|
||
Command="{Binding PrintDocumentCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="4" Canvas.Top="1.5" Width="8" Height="4" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="2" Canvas.Top="5" Width="12" Height="5" RadiusX="1.5" RadiusY="1.5" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="4" Canvas.Top="8.5" Width="8" Height="5" Fill="#FFF9FCFE" Stroke="{StaticResource AppMenuIconAccentBrush}" StrokeThickness="1" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<Separator/>
|
||
<MenuItem Header="Удалить"
|
||
Command="{Binding DeleteDocumentCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="4" Canvas.Top="5" Width="8" Height="8" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="3" Canvas.Top="3" Width="10" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="1.5" Width="4" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="6.5" Width="1" Height="5" Fill="White" />
|
||
<Rectangle Canvas.Left="9" Canvas.Top="6.5" Width="1" Height="5" Fill="White" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
</ContextMenu>
|
||
</ListBox.ContextMenu>
|
||
<ListBox.ItemContainerStyle>
|
||
<Style TargetType="ListBoxItem">
|
||
<EventSetter Event="PreviewMouseRightButtonDown"
|
||
Handler="DocumentListItem_PreviewMouseRightButtonDown" />
|
||
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||
<Setter Property="Padding" Value="0" />
|
||
<Setter Property="Margin" Value="0,0,0,4" />
|
||
</Style>
|
||
</ListBox.ItemContainerStyle>
|
||
<ListBox.ItemTemplate>
|
||
<DataTemplate>
|
||
<Border Padding="8"
|
||
BorderBrush="{StaticResource AppBorderBrush}"
|
||
BorderThickness="0,0,0,1">
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="18" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<Ellipse Grid.Column="0"
|
||
Width="10"
|
||
Height="10"
|
||
Margin="0,4,0,0"
|
||
HorizontalAlignment="Center"
|
||
VerticalAlignment="Top"
|
||
Stroke="#8093A4B5"
|
||
StrokeThickness="1">
|
||
<Ellipse.Style>
|
||
<Style TargetType="Ellipse">
|
||
<Setter Property="Visibility" Value="Collapsed" />
|
||
<Setter Property="Fill" Value="Transparent" />
|
||
<Setter Property="ToolTip" Value="{x:Null}" />
|
||
<Style.Triggers>
|
||
<DataTrigger Binding="{Binding IsOpenDocumentAtTenDays}" Value="True">
|
||
<Setter Property="Visibility" Value="Visible" />
|
||
<Setter Property="Fill" Value="{StaticResource OpenDocumentTenDaysIndicatorBrush}" />
|
||
<Setter Property="ToolTip" Value="С даты приемки прошло 10 дней." />
|
||
</DataTrigger>
|
||
<DataTrigger Binding="{Binding IsOpenDocumentAtTwentyDays}" Value="True">
|
||
<Setter Property="Visibility" Value="Visible" />
|
||
<Setter Property="Fill" Value="{StaticResource OpenDocumentTwentyDaysIndicatorBrush}" />
|
||
<Setter Property="ToolTip" Value="С даты приемки прошло 20 дней." />
|
||
</DataTrigger>
|
||
<DataTrigger Binding="{Binding IsOpenDocumentOverdue}" Value="True">
|
||
<Setter Property="Visibility" Value="Visible" />
|
||
<Setter Property="Fill" Value="{StaticResource OpenDocumentOverdueIndicatorBrush}" />
|
||
<Setter Property="ToolTip" Value="Срок ПСВ истек: дата приемки + 30 дней." />
|
||
</DataTrigger>
|
||
</Style.Triggers>
|
||
</Style>
|
||
</Ellipse.Style>
|
||
</Ellipse>
|
||
|
||
<StackPanel Grid.Column="1">
|
||
<DockPanel LastChildFill="False">
|
||
<TextBlock DockPanel.Dock="Left"
|
||
FontWeight="SemiBold"
|
||
Text="{Binding DocumentNumber}" />
|
||
<TextBlock DockPanel.Dock="Right"
|
||
Foreground="DimGray"
|
||
Text="{Binding AcceptedOn, StringFormat=d}" />
|
||
</DockPanel>
|
||
<DockPanel Margin="0,4,0,0"
|
||
LastChildFill="True">
|
||
<TextBlock DockPanel.Dock="Right"
|
||
Foreground="DimGray"
|
||
Text="{Binding TimelineDisplay}" />
|
||
<TextBlock Margin="0,0,12,0"
|
||
Foreground="DimGray"
|
||
Text="{Binding CustomerName}"
|
||
TextTrimming="CharacterEllipsis" />
|
||
</DockPanel>
|
||
</StackPanel>
|
||
</Grid>
|
||
</Border>
|
||
</DataTemplate>
|
||
</ListBox.ItemTemplate>
|
||
</ListBox>
|
||
|
||
<TextBlock Grid.Row="4"
|
||
Margin="0,8,0,0"
|
||
Foreground="DimGray"
|
||
Text="{Binding DocumentStatusText}" />
|
||
</Grid>
|
||
</GroupBox>
|
||
|
||
<GridSplitter Grid.Column="1"
|
||
HorizontalAlignment="Stretch"
|
||
VerticalAlignment="Stretch"
|
||
ResizeDirection="Columns"
|
||
ResizeBehavior="PreviousAndNext"
|
||
Style="{StaticResource GhostGridSplitterStyle}"
|
||
Cursor="SizeWE" />
|
||
|
||
<Grid Grid.Column="2">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
<RowDefinition Height="10" />
|
||
<RowDefinition Height="340" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<GroupBox Grid.Row="0" Header="Реквизиты документа">
|
||
<Grid Margin="8">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="Auto" />
|
||
</Grid.RowDefinitions>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="220" />
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="160" />
|
||
<ColumnDefinition Width="110" />
|
||
<ColumnDefinition Width="160" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<TextBlock Grid.Row="0"
|
||
Grid.Column="0"
|
||
Margin="0,0,8,8"
|
||
VerticalAlignment="Center"
|
||
Text="Номер ПСВ" />
|
||
<TextBox Grid.Row="0"
|
||
Grid.Column="1"
|
||
Margin="0,0,12,8"
|
||
IsEnabled="{Binding IsDocumentHeaderEditable}"
|
||
Text="{Binding DocumentNumberEditor, UpdateSourceTrigger=PropertyChanged}" />
|
||
|
||
<TextBlock Grid.Row="0"
|
||
Grid.Column="2"
|
||
Margin="0,0,8,8"
|
||
VerticalAlignment="Center"
|
||
Text="Дата приемки" />
|
||
<DatePicker Grid.Row="0"
|
||
Grid.Column="3"
|
||
Margin="0,0,12,8"
|
||
IsEnabled="{Binding IsDocumentHeaderEditable}"
|
||
SelectedDate="{Binding HeaderReceivedOn, Mode=TwoWay}"
|
||
SelectedDateFormat="Short" />
|
||
|
||
<TextBlock Grid.Row="0"
|
||
Grid.Column="4"
|
||
Margin="0,0,8,8"
|
||
VerticalAlignment="Center"
|
||
Text="Дата выдачи" />
|
||
<DatePicker Grid.Row="0"
|
||
Grid.Column="5"
|
||
Margin="0,0,12,8"
|
||
IsEnabled="{Binding IsDocumentHeaderEditable}"
|
||
SelectedDate="{Binding HeaderIssuedOn, Mode=TwoWay}"
|
||
SelectedDateFormat="Short" />
|
||
|
||
<StackPanel Grid.Row="0"
|
||
Grid.Column="6"
|
||
Orientation="Horizontal"
|
||
HorizontalAlignment="Right">
|
||
<Button Width="120"
|
||
Margin="0,0,0,8"
|
||
Style="{StaticResource PrimaryActionButtonStyle}"
|
||
IsEnabled="{Binding IsDocumentHeaderEditable}"
|
||
Command="{Binding SaveDocumentHeaderCommand}"
|
||
Content="Сохранить" />
|
||
</StackPanel>
|
||
|
||
<TextBlock Grid.Row="1"
|
||
Grid.Column="0"
|
||
Margin="0,0,8,6"
|
||
VerticalAlignment="Center"
|
||
Text="Подразделение" />
|
||
<ComboBox Grid.Row="1"
|
||
Grid.Column="1"
|
||
Grid.ColumnSpan="3"
|
||
Margin="0,0,12,6"
|
||
ItemsSource="{Binding Customers}"
|
||
DisplayMemberPath="CustomerName"
|
||
SelectedValuePath="CustomerId"
|
||
SelectedValue="{Binding SelectedCustomerId, Mode=TwoWay}"
|
||
IsEnabled="{Binding IsCustomerEditable}" />
|
||
|
||
<TextBlock Grid.Row="1"
|
||
Grid.Column="4"
|
||
Margin="0,0,8,6"
|
||
VerticalAlignment="Center"
|
||
Text="Приборов в ПСВ" />
|
||
<TextBlock Grid.Row="1"
|
||
Grid.Column="5"
|
||
Grid.ColumnSpan="2"
|
||
Margin="0,0,0,6"
|
||
VerticalAlignment="Center"
|
||
FontWeight="SemiBold"
|
||
Text="{Binding HeaderInstrumentCount}" />
|
||
|
||
<TextBlock Grid.Row="2"
|
||
Grid.ColumnSpan="7"
|
||
Foreground="DimGray"
|
||
Text="{Binding LineStatusText}" />
|
||
</Grid>
|
||
</GroupBox>
|
||
|
||
<GroupBox Grid.Row="1" Header="Группы приборов выбранного документа">
|
||
<Grid Margin="8">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<Grid Margin="0,0,0,8">
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="290" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<TextBox Grid.Column="0"
|
||
Text="{Binding GroupFilterText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Grid.Column="1"
|
||
Margin="12,0,0,0"
|
||
VerticalAlignment="Center"
|
||
Foreground="DimGray"
|
||
Text="Поиск по наименованию, типу, диапазону, характеристикам, госреестру или зав. №" />
|
||
</Grid>
|
||
|
||
<DataGrid Grid.Row="1"
|
||
ItemsSource="{Binding DocumentGroupsView}"
|
||
SelectedItem="{Binding SelectedDocumentGroup, Mode=TwoWay}"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
IsReadOnly="False"
|
||
HeadersVisibility="Column">
|
||
<DataGrid.ContextMenu>
|
||
<ContextMenu DataContext="{Binding PlacementTarget.DataContext, RelativeSource={RelativeSource Self}}">
|
||
<MenuItem Header="Добавить по заводским номерам"
|
||
Command="{Binding OpenInstrumentPickerCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="2" Canvas.Top="3" Width="8" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="2" Canvas.Top="7" Width="8" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="2" Canvas.Top="11" Width="6" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Ellipse Canvas.Left="10.5" Canvas.Top="6" Width="4" Height="4" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
<Rectangle Canvas.Left="12" Canvas.Top="4.5" Width="1" Height="7" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
<Rectangle Canvas.Left="9.5" Canvas.Top="7" Width="6" Height="1" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<MenuItem Header="Добавить по типу"
|
||
Command="{Binding OpenInstrumentTypePickerCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="2" Canvas.Top="3" Width="5" Height="5" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="2" Canvas.Top="9" Width="5" Height="5" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="8" Canvas.Top="6" Width="5" Height="5" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="12" Canvas.Top="1.5" Width="1.5" Height="5" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
<Rectangle Canvas.Left="10.25" Canvas.Top="3.25" Width="5" Height="1.5" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<Separator/>
|
||
<MenuItem Header="Удалить"
|
||
Command="{Binding DeleteSelectedGroupsCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="4" Canvas.Top="5" Width="8" Height="8" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="3" Canvas.Top="3" Width="10" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="1.5" Width="4" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="6.5" Width="1" Height="5" Fill="White" />
|
||
<Rectangle Canvas.Left="9" Canvas.Top="6.5" Width="1" Height="5" Fill="White" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
</ContextMenu>
|
||
</DataGrid.ContextMenu>
|
||
<DataGrid.RowStyle>
|
||
<Style TargetType="DataGridRow">
|
||
<EventSetter Event="PreviewMouseRightButtonDown"
|
||
Handler="DocumentGroupRow_PreviewMouseRightButtonDown" />
|
||
</Style>
|
||
</DataGrid.RowStyle>
|
||
<DataGrid.Columns>
|
||
<DataGridTemplateColumn Header="Выбр."
|
||
Width="52">
|
||
<DataGridTemplateColumn.CellTemplate>
|
||
<DataTemplate>
|
||
<CheckBox HorizontalAlignment="Center"
|
||
VerticalAlignment="Center"
|
||
IsChecked="{Binding IsBatchSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
||
</DataTemplate>
|
||
</DataGridTemplateColumn.CellTemplate>
|
||
</DataGridTemplateColumn>
|
||
|
||
<DataGridTextColumn Header="Наименование"
|
||
Width="220"
|
||
Binding="{Binding InstrumentName}" />
|
||
<DataGridTextColumn Header="Тип"
|
||
Width="160"
|
||
Binding="{Binding InstrumentType}" />
|
||
<DataGridTextColumn Header="Диапазон"
|
||
Width="160"
|
||
Binding="{Binding RangeText}" />
|
||
<DataGridTextColumn Header="Характеристики"
|
||
Width="160"
|
||
Binding="{Binding AccuracyText}" />
|
||
<DataGridTextColumn Header="Госреестр"
|
||
Width="120"
|
||
Binding="{Binding RegistryNumber}" />
|
||
<DataGridTextColumn Header="В поверке"
|
||
Width="90"
|
||
Binding="{Binding InVerificationCount}" />
|
||
<DataGridTextColumn Header="Поверено"
|
||
Width="90"
|
||
Binding="{Binding VerifiedCount}" />
|
||
<DataGridTextColumn Header="Годных"
|
||
Width="90"
|
||
Binding="{Binding GoodCount}" />
|
||
<DataGridTextColumn Header="Забракованых"
|
||
Width="105"
|
||
Binding="{Binding RejectedCount}" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
</Grid>
|
||
</GroupBox>
|
||
|
||
<GridSplitter Grid.Row="2"
|
||
HorizontalAlignment="Stretch"
|
||
VerticalAlignment="Stretch"
|
||
ResizeDirection="Rows"
|
||
ResizeBehavior="PreviousAndNext"
|
||
Style="{StaticResource GhostGridSplitterStyle}"
|
||
Cursor="SizeNS" />
|
||
|
||
<GroupBox Grid.Row="3" Header="Состав выбранной группы">
|
||
<Grid Margin="8">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<Grid Margin="0,0,0,8">
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="140" />
|
||
<ColumnDefinition Width="320" />
|
||
<ColumnDefinition Width="*" />
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<TextBlock Grid.Column="0"
|
||
Margin="0,0,6,0"
|
||
VerticalAlignment="Center"
|
||
Text="Поиск по зав. №" />
|
||
<TextBox Grid.Column="1"
|
||
Text="{Binding GroupDetailFilterText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<TextBlock Grid.Column="2"
|
||
Margin="12,0,0,0"
|
||
VerticalAlignment="Center"
|
||
HorizontalAlignment="Right"
|
||
Foreground="DimGray"
|
||
Text="{Binding DetailTableCountText}" />
|
||
</Grid>
|
||
|
||
<DataGrid Grid.Row="1"
|
||
ItemsSource="{Binding DocumentLinesView}"
|
||
SelectedItem="{Binding SelectedDocumentLine, Mode=TwoWay}"
|
||
AutoGenerateColumns="False"
|
||
CanUserAddRows="False"
|
||
IsReadOnly="{Binding IsDocumentLinesReadOnly}"
|
||
HeadersVisibility="Column">
|
||
<DataGrid.ContextMenu>
|
||
<ContextMenu DataContext="{Binding PlacementTarget.DataContext, RelativeSource={RelativeSource Self}}">
|
||
<MenuItem Header="Клонировать поверку в выбранные строки"
|
||
Command="{Binding CloneLineVerificationCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="3" Canvas.Top="4" Width="7" Height="8" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="2" Width="7" Height="8" RadiusX="1" RadiusY="1" Fill="#FFEAF3FB" Stroke="{StaticResource AppMenuIconAccentBrush}" StrokeThickness="1" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<MenuItem Header="Распечатать документ о поверке"
|
||
Command="{Binding PrintVerificationDocumentCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="4" Canvas.Top="1.5" Width="8" Height="4" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="2" Canvas.Top="5" Width="12" Height="5" RadiusX="1.5" RadiusY="1.5" Fill="{StaticResource AppMenuIconAccentBrush}" />
|
||
<Rectangle Canvas.Left="4" Canvas.Top="8.5" Width="8" Height="5" Fill="#FFF9FCFE" Stroke="{StaticResource AppMenuIconAccentBrush}" StrokeThickness="1" />
|
||
<Ellipse Canvas.Left="10.5" Canvas.Top="9.5" Width="4" Height="4" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
<Path Fill="White" Data="M12.1,10.4 L12.9,11.2 L14.2,9.6 L14.8,10.1 L12.9,12.4 L11.5,11 Z" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<Separator/>
|
||
<MenuItem Header="Годен"
|
||
Command="{Binding MarkLinePassedCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Grid Width="16" Height="16">
|
||
<Ellipse Width="14" Height="14" Fill="{StaticResource AppMenuIconSuccessBrush}" />
|
||
<Path Fill="White" Data="M5.1,8.2 L7.2,10.3 L11.6,5.6 L12.8,6.6 L7.3,12.3 L3.9,8.9 Z" />
|
||
</Grid>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<MenuItem Header="Забракован"
|
||
Command="{Binding MarkLineRejectedCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Grid Width="16" Height="16">
|
||
<Ellipse Width="14" Height="14" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Path Stroke="White" StrokeThickness="1.8" StrokeStartLineCap="Round" StrokeEndLineCap="Round" Data="M5.1,5.1 L10.9,10.9 M10.9,5.1 L5.1,10.9" />
|
||
</Grid>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<Separator/>
|
||
<MenuItem Header="Отменить проверку"
|
||
Command="{Binding ResetLineVerificationCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Path Fill="{StaticResource AppMenuIconWarningBrush}" Data="M7.8,2.2 C10.8,2.2 13.2,4.6 13.2,7.6 C13.2,10.6 10.8,13 7.8,13 C5.5,13 3.6,11.6 2.8,9.5 L4.5,9.5 C5.2,10.8 6.4,11.5 7.8,11.5 C10,11.5 11.7,9.8 11.7,7.6 C11.7,5.4 10,3.7 7.8,3.7 C6.5,3.7 5.3,4.3 4.6,5.4 L6.7,5.4 L3.8,8.2 L1.1,5.4 L3.1,5.4 C4,3.4 5.8,2.2 7.8,2.2 Z" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
<MenuItem Header="Удалить"
|
||
Command="{Binding DeleteSelectedLinesCommand}">
|
||
<MenuItem.Icon>
|
||
<Viewbox Width="14" Height="14">
|
||
<Canvas Width="16" Height="16">
|
||
<Rectangle Canvas.Left="4" Canvas.Top="5" Width="8" Height="8" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="3" Canvas.Top="3" Width="10" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="1.5" Width="4" Height="2" RadiusX="1" RadiusY="1" Fill="{StaticResource AppMenuIconDangerBrush}" />
|
||
<Rectangle Canvas.Left="6" Canvas.Top="6.5" Width="1" Height="5" Fill="White" />
|
||
<Rectangle Canvas.Left="9" Canvas.Top="6.5" Width="1" Height="5" Fill="White" />
|
||
</Canvas>
|
||
</Viewbox>
|
||
</MenuItem.Icon>
|
||
</MenuItem>
|
||
</ContextMenu>
|
||
</DataGrid.ContextMenu>
|
||
<DataGrid.RowStyle>
|
||
<Style TargetType="DataGridRow">
|
||
<EventSetter Event="MouseDoubleClick"
|
||
Handler="DocumentLineRow_MouseDoubleClick" />
|
||
<EventSetter Event="PreviewMouseRightButtonDown"
|
||
Handler="DocumentLineRow_PreviewMouseRightButtonDown" />
|
||
</Style>
|
||
</DataGrid.RowStyle>
|
||
<DataGrid.Columns>
|
||
<DataGridTemplateColumn Header="Выбр."
|
||
Width="52">
|
||
<DataGridTemplateColumn.CellTemplate>
|
||
<DataTemplate>
|
||
<CheckBox HorizontalAlignment="Center"
|
||
VerticalAlignment="Center"
|
||
IsChecked="{Binding IsBatchSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
||
</DataTemplate>
|
||
</DataGridTemplateColumn.CellTemplate>
|
||
</DataGridTemplateColumn>
|
||
<DataGridTextColumn Header="Зав. №"
|
||
Width="120"
|
||
IsReadOnly="True"
|
||
Binding="{Binding SerialNumber}" />
|
||
<DataGridTextColumn Header="Дата поверки"
|
||
Width="110"
|
||
IsReadOnly="True"
|
||
Binding="{Binding VerificationDateDisplay}" />
|
||
<DataGridTextColumn Header="Поверитель"
|
||
Width="180"
|
||
IsReadOnly="True"
|
||
Binding="{Binding VerifierName}" />
|
||
<DataGridTextColumn Header="Номер наклейки"
|
||
Width="150"
|
||
IsReadOnly="True"
|
||
Binding="{Binding StickerNumber}" />
|
||
<DataGridTextColumn Header="Результат поверки"
|
||
Width="140"
|
||
IsReadOnly="True"
|
||
Binding="{Binding ResultText}" />
|
||
<DataGridTextColumn Header="Номер документа по поверке"
|
||
Width="240"
|
||
IsReadOnly="True"
|
||
Binding="{Binding VerificationDocumentDisplay}" />
|
||
<DataGridTextColumn Header="Комплектность"
|
||
Width="240"
|
||
Binding="{Binding Completeness, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
</Grid>
|
||
</GroupBox>
|
||
</Grid>
|
||
</Grid>
|
||
</Grid>
|
||
</Window>
|