comprehensive update

1) remove unused components: camera view (due it causes segmentation faults), compute resources and all related, illuminator controller (due in useless without camera view), image storage service, temperature and humidity service
2) database schema - reduce tables references, features storing in records themselves in compressed form, add records creation and editing date and time, add separator comment column
3) analysis - rework of pipeline and ui, now database storing only raw data and all display values calculated from it
4) lights service - add reconnection if disconnected
5) add width and height command line arguments
6) fix some typos and other issues
This commit is contained in:
2026-06-29 15:13:29 +03:00
parent caee9fafd5
commit 72ae26eee7
74 changed files with 5219 additions and 4248 deletions
+29 -33
View File
@@ -36,31 +36,30 @@
<Border Background="{StaticResource MainBackground}" BorderThickness="0">
<Grid Margin="5" RowSpacing="5">
<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/> <!-- Меню -->
<RowDefinition Height="*"/> <!-- Основной контент -->
</Grid.RowDefinitions>
<!-- Меню -->
<ScrollViewer Grid.Row="0" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Disabled">
<Grid.RowSpacing>5</Grid.RowSpacing>
<ScrollViewer.IsEnabled>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static BoolConverters.Not}" Path="IsScrolling" />
<Binding Converter="{x:Static BoolConverters.Not}" Path="SeparatorCalibration.MenuOpened" />
</MultiBinding>
</ScrollViewer.IsEnabled>
<!-- Меню -->
<ScrollViewer
Grid.Row="0"
HorizontalScrollBarVisibility="Hidden"
IsEnabled="{Binding CanInteract}"
VerticalScrollBarVisibility="Disabled"
>
<Grid ColumnSpacing="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Анализ -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Калибровка проб -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Калибровка сепаратора -->
<!-- <ColumnDefinition Width="*" MinWidth="200"/> --> <!-- Камера -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Система -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Анализ -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Марки -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Сепараторы -->
<ColumnDefinition Width="*" MinWidth="200"/> <!-- Пробы -->
</Grid.ColumnDefinitions>
<!-- Анализ -->
@@ -68,24 +67,19 @@
<TextBlock Classes="menu-text" Text="Анализ"/>
</Button>
<!-- Калибровка проб -->
<!-- Марки -->
<Button Grid.Column="1" Classes="menu" Command="{Binding ChangeSectionCommand}" CommandParameter="1">
<TextBlock Classes="menu-text" Text="Калибровка проб"/>
<TextBlock Classes="menu-text" Text="Марки"/>
</Button>
<!-- Калибровка сепараторов -->
<!-- Сепараторы -->
<Button Grid.Column="2" Classes="menu" Command="{Binding ChangeSectionCommand}" CommandParameter="2">
<TextBlock Classes="menu-text" Text="Калибровка сепараторов"/>
<TextBlock Classes="menu-text" Text="Сепараторы"/>
</Button>
<!-- Камера -->
<!-- <Button Grid.Column="3" Classes="menu" Command="{Binding ChangeSectionCommand}" CommandParameter="3">
<TextBlock Classes="menu-text" Text="Камера"/>
</Button> -->
<!-- Система -->
<Button Grid.Column="3" Classes="menu" Command="{Binding ChangeSectionCommand}" CommandParameter="4">
<TextBlock Classes="menu-text" Text="Система"/>
<!-- Пробы -->
<Button Grid.Column="3" Classes="menu" Command="{Binding ChangeSectionCommand}" CommandParameter="3">
<TextBlock Classes="menu-text" Text="Пробы"/>
</Button>
</Grid>
@@ -93,14 +87,16 @@
<!-- Основной контент -->
<core:SectionPanel Grid.Row="1" ClipToBounds="True" CurrentIndex="{Binding CurrentIndex}" Orientation="Horizontal" IsScrolling="{Binding IsScrolling}">
<ContentControl Content="{Binding Analysis}"/> <!-- Анализ -->
<ContentControl Content="{Binding SampleCalibration}"/> <!-- Калибровка проб -->
<ContentControl Content="{Binding SeparatorCalibration}"/> <!-- Калибровка сепаратора -->
<!-- <ContentControl Content="{Binding Camera}"/> --> <!-- Камера -->
<ContentControl Content="{Binding System}"/> <!-- Система -->
<ContentControl Content="{Binding Analysis}"/> <!-- Анализ -->
<ContentControl Content="{Binding BrandCalibration}"/> <!-- Марки -->
<ContentControl Content="{Binding SeparatorCalibration}"/> <!-- Сепараторы -->
<ContentControl Content="{Binding SampleCalibration}"/> <!-- Пробы -->
<!-- <ContentControl Content="{Binding Camera}"/> --> <!-- Камера -->
<!-- <ContentControl Content="{Binding System}"/> --> <!-- Система -->
</core:SectionPanel>
</Grid>
</Border>
</UserControl>