269 lines
17 KiB
XML
269 lines
17 KiB
XML
<Window x:Class="CRAWLER.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"
|
||
mc:Ignorable="d"
|
||
Title="CRAWLER"
|
||
Height="920"
|
||
Width="1560"
|
||
MinHeight="760"
|
||
MinWidth="1240"
|
||
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" />
|
||
<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="*" />
|
||
<RowDefinition Height="Auto" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<Border Grid.Row="0"
|
||
Margin="0,0,0,12"
|
||
Padding="12"
|
||
Background="{StaticResource AppPanelBrush}"
|
||
BorderBrush="{StaticResource AppBorderBrush}"
|
||
BorderThickness="1"
|
||
CornerRadius="4">
|
||
<DockPanel LastChildFill="False">
|
||
<StackPanel DockPanel.Dock="Left"
|
||
Orientation="Horizontal"
|
||
VerticalAlignment="Center">
|
||
<TextBlock Margin="0,0,8,0"
|
||
VerticalAlignment="Center"
|
||
FontWeight="SemiBold"
|
||
Text="Поиск" />
|
||
<TextBox Width="320"
|
||
Margin="0,0,10,0"
|
||
VerticalAlignment="Center"
|
||
KeyDown="SearchTextBox_KeyDown"
|
||
Text="{Binding SearchText, UpdateSourceTrigger=PropertyChanged}" />
|
||
<Button Margin="0,0,8,0"
|
||
Click="RefreshButton_Click"
|
||
Content="Обновить список" />
|
||
<TextBlock Margin="12,0,8,0"
|
||
VerticalAlignment="Center"
|
||
FontWeight="SemiBold"
|
||
Text="Страниц для сайта" />
|
||
<TextBox Width="64"
|
||
Margin="0,0,10,0"
|
||
VerticalAlignment="Center"
|
||
Text="{Binding PagesToScan, UpdateSourceTrigger=PropertyChanged}" />
|
||
<Button Margin="0,0,8,0"
|
||
Style="{StaticResource PrimaryActionButtonStyle}"
|
||
Click="SyncButton_Click"
|
||
Content="Обновить с сайта" />
|
||
</StackPanel>
|
||
|
||
<StackPanel DockPanel.Dock="Right"
|
||
Orientation="Horizontal"
|
||
HorizontalAlignment="Right">
|
||
<Button Margin="0,0,8,0"
|
||
Click="AddButton_Click"
|
||
Content="Добавить" />
|
||
<Button Margin="0,0,8,0"
|
||
Click="EditButton_Click"
|
||
Content="Изменить" />
|
||
<Button Click="DeleteButton_Click"
|
||
Content="Удалить" />
|
||
</StackPanel>
|
||
</DockPanel>
|
||
</Border>
|
||
|
||
<Grid Grid.Row="1">
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="2.2*" />
|
||
<ColumnDefinition Width="10" />
|
||
<ColumnDefinition Width="1.6*" />
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<GroupBox Grid.Column="0" Header="Реестр средств измерений">
|
||
<Grid Margin="8">
|
||
<DataGrid x:Name="InstrumentGrid"
|
||
ItemsSource="{Binding Instruments}"
|
||
SelectedItem="{Binding SelectedSummary, Mode=TwoWay}"
|
||
IsReadOnly="True"
|
||
MouseDoubleClick="InstrumentGrid_MouseDoubleClick">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Width="120" Binding="{Binding RegistryNumber}" Header="Госреестр" />
|
||
<DataGridTextColumn Width="2*" Binding="{Binding Name}" Header="Наименование" />
|
||
<DataGridTextColumn Width="160" Binding="{Binding TypeDesignation}" Header="Тип" />
|
||
<DataGridTextColumn Width="2*" Binding="{Binding Manufacturer}" Header="Производитель" />
|
||
<DataGridTextColumn Width="120" Binding="{Binding VerificationInterval}" Header="МПИ" />
|
||
<DataGridTextColumn Width="110" Binding="{Binding SourceSystem}" Header="Источник" />
|
||
<DataGridTextColumn Width="140" Binding="{Binding UpdatedAt, StringFormat=dd.MM.yyyy HH:mm}" Header="Обновлено" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
</Grid>
|
||
</GroupBox>
|
||
|
||
<GridSplitter Grid.Column="1"
|
||
HorizontalAlignment="Stretch"
|
||
VerticalAlignment="Stretch"
|
||
ResizeDirection="Columns"
|
||
ResizeBehavior="PreviousAndNext"
|
||
Style="{StaticResource GhostGridSplitterStyle}"
|
||
Cursor="SizeWE" />
|
||
|
||
<GroupBox Grid.Column="2" Header="Карточка записи">
|
||
<Grid Margin="8">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<DockPanel Grid.Row="0" Margin="0,0,0,8" LastChildFill="False">
|
||
<TextBlock DockPanel.Dock="Left"
|
||
FontSize="16"
|
||
FontWeight="SemiBold"
|
||
Text="{Binding SelectedInstrument.Name}" />
|
||
<Button DockPanel.Dock="Right"
|
||
Padding="8,4"
|
||
Click="OpenSourceButton_Click"
|
||
Content="Открыть источник" />
|
||
</DockPanel>
|
||
|
||
<TabControl Grid.Row="1">
|
||
<TabItem Header="Общее">
|
||
<ScrollViewer VerticalScrollBarVisibility="Auto">
|
||
<Grid Margin="8">
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="180" />
|
||
<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="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<TextBlock Grid.Row="0" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Номер в госреестре" />
|
||
<TextBox Grid.Row="0" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.RegistryNumber}" />
|
||
|
||
<TextBlock Grid.Row="1" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Тип" />
|
||
<TextBox Grid.Row="1" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.TypeDesignation}" />
|
||
|
||
<TextBlock Grid.Row="2" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Производитель" />
|
||
<TextBox Grid.Row="2" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.Manufacturer}" TextWrapping="Wrap" />
|
||
|
||
<TextBlock Grid.Row="3" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="МПИ" />
|
||
<TextBox Grid.Row="3" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.VerificationInterval}" />
|
||
|
||
<TextBlock Grid.Row="4" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Срок/зав. номер" />
|
||
<TextBox Grid.Row="4" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.CertificateOrSerialNumber}" />
|
||
|
||
<TextBlock Grid.Row="5" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Поверка партии" />
|
||
<TextBox Grid.Row="5" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.AllowsBatchVerification}" />
|
||
|
||
<TextBlock Grid.Row="6" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Периодическая поверка" />
|
||
<TextBox Grid.Row="6" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.HasPeriodicVerification}" />
|
||
|
||
<TextBlock Grid.Row="7" Grid.Column="0" Margin="0,0,8,6" VerticalAlignment="Center" Text="Источник" />
|
||
<TextBox Grid.Row="7" Grid.Column="1" Margin="0,0,0,6" IsReadOnly="True" Text="{Binding SelectedInstrument.SourceSystem}" />
|
||
|
||
<TextBlock Grid.Row="8" Grid.Column="0" Margin="0,0,8,0" VerticalAlignment="Top" Text="Ссылка" />
|
||
<TextBox Grid.Row="8" Grid.Column="1" IsReadOnly="True" Text="{Binding SelectedInstrument.DetailUrl}" TextWrapping="Wrap" VerticalScrollBarVisibility="Auto" />
|
||
</Grid>
|
||
</ScrollViewer>
|
||
</TabItem>
|
||
|
||
<TabItem Header="Текстовые поля">
|
||
<ScrollViewer VerticalScrollBarVisibility="Auto">
|
||
<StackPanel Margin="8">
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Назначение" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.Purpose}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Описание" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="70" Text="{Binding SelectedInstrument.Description}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Программное обеспечение" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.Software}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Метрологические и технические характеристики" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="70" Text="{Binding SelectedInstrument.MetrologicalCharacteristics}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Комплектность" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.Completeness}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Поверка" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.Verification}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Нормативные и технические документы" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.RegulatoryDocuments}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Заявитель" />
|
||
<TextBox Margin="0,0,0,10" IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.Applicant}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
|
||
<TextBlock Margin="0,0,0,4" FontWeight="SemiBold" Text="Испытательный центр" />
|
||
<TextBox IsReadOnly="True" MinHeight="60" Text="{Binding SelectedInstrument.TestCenter}" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" />
|
||
</StackPanel>
|
||
</ScrollViewer>
|
||
</TabItem>
|
||
|
||
<TabItem Header="PDF">
|
||
<Grid Margin="8">
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto" />
|
||
<RowDefinition Height="*" />
|
||
</Grid.RowDefinitions>
|
||
|
||
<StackPanel Grid.Row="0"
|
||
Margin="0,0,0,8"
|
||
Orientation="Horizontal">
|
||
<Button Margin="0,0,8,0"
|
||
Click="AddPdfButton_Click"
|
||
Content="Добавить PDF вручную" />
|
||
<Button Margin="0,0,8,0"
|
||
Click="OpenAttachmentButton_Click"
|
||
Content="Открыть выбранный PDF" />
|
||
<Button Click="RemoveAttachmentButton_Click"
|
||
Content="Удалить привязку" />
|
||
</StackPanel>
|
||
|
||
<DataGrid x:Name="AttachmentGrid"
|
||
Grid.Row="1"
|
||
ItemsSource="{Binding SelectedInstrument.Attachments}"
|
||
IsReadOnly="True">
|
||
<DataGrid.Columns>
|
||
<DataGridTextColumn Width="160" Binding="{Binding Kind}" Header="Тип файла" />
|
||
<DataGridTextColumn Width="180" Binding="{Binding Title}" Header="Заголовок" />
|
||
<DataGridTextColumn Width="*" Binding="{Binding LocalPath}" Header="Локальный путь" />
|
||
<DataGridCheckBoxColumn Width="100" Binding="{Binding IsManual}" Header="Ручной" />
|
||
</DataGrid.Columns>
|
||
</DataGrid>
|
||
</Grid>
|
||
</TabItem>
|
||
</TabControl>
|
||
</Grid>
|
||
</GroupBox>
|
||
</Grid>
|
||
|
||
<StatusBar Grid.Row="2" Margin="0,12,0,0">
|
||
<StatusBarItem>
|
||
<TextBlock Text="{Binding StatusText}" />
|
||
</StatusBarItem>
|
||
</StatusBar>
|
||
</Grid>
|
||
</Window>
|