整体调整了功能

This commit is contained in:
2026-01-13 15:03:02 +08:00
parent 63a768bd80
commit f1a892281b
82 changed files with 11226 additions and 291 deletions

View File

@@ -2,170 +2,307 @@
x:Class="FATrace.WPLApp.Views.RawProInputView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:prism="http://prismlibrary.com/"
d:DesignHeight="720"
d:DesignWidth="1280"
prism:ViewModelLocator.AutoWireViewModel="True"
mc:Ignorable="d"
d:DesignWidth="1280" d:DesignHeight="720">
mc:Ignorable="d">
<UserControl.Resources>
<!-- 布尔到可见性转换器,用于显示忙碌状态 -->
<!-- 布尔到可见性转换器,用于显示忙碌状态 -->
<BooleanToVisibilityConverter x:Key="Bool2Vis" />
</UserControl.Resources>
<Grid Margin="10">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<!-- 查询条件区域 -->
<Border Grid.Row="0" Padding="10" Background="#F9F9F9" BorderBrush="#DDDDDD" BorderThickness="1" CornerRadius="4">
<TextBlock
Grid.Row="0"
Margin="0,0,0,8"
FontSize="20"
FontWeight="SemiBold"
Text="原料入库查询" />
<!-- 查询条件区域 -->
<Border
Grid.Row="1"
Padding="10"
Background="#F9F9F9"
BorderBrush="#DDDDDD"
BorderThickness="1"
CornerRadius="4">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="2*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<!-- 第一行:编码/名称/批号 -->
<StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="0" Margin="0,0,10,8">
<TextBlock VerticalAlignment="Center" Text="原料编号:"/>
<TextBox Width="160" Text="{Binding RawCode, UpdateSourceTrigger=PropertyChanged}"/>
<!-- 第一行:编码/名称/批号 -->
<StackPanel
Grid.Row="0"
Grid.Column="0"
Margin="0,0,10,8"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="原料编号:" />
<TextBox Width="160" Text="{Binding RawCode, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
<StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="1" Margin="0,0,10,8">
<TextBlock VerticalAlignment="Center" Text="原料名称:"/>
<TextBox Width="160" Text="{Binding RawName, UpdateSourceTrigger=PropertyChanged}"/>
<StackPanel
Grid.Row="0"
Grid.Column="1"
Margin="0,0,10,8"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="原料名称:" />
<TextBox Width="160" Text="{Binding RawName, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
<StackPanel Orientation="Horizontal" Grid.Row="0" Grid.Column="2" Margin="0,0,10,8">
<TextBlock VerticalAlignment="Center" Text="批号:"/>
<TextBox Width="160" Text="{Binding Batch, UpdateSourceTrigger=PropertyChanged}"/>
<StackPanel
Grid.Row="0"
Grid.Column="2"
Margin="0,0,10,8"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="批号:" />
<TextBox Width="160" Text="{Binding Batch, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
<!-- 第二行:来源/状态 -->
<StackPanel Orientation="Horizontal" Grid.Row="1" Grid.Column="0" Margin="0,0,10,8">
<TextBlock VerticalAlignment="Center" Text="原料来源:"/>
<ComboBox Width="160"
ItemsSource="{Binding RawSourceValues}"
SelectedItem="{Binding SelectedRawSource, Mode=TwoWay}"
IsEditable="False"/>
<!-- 第二行:来源/状态 -->
<StackPanel
Grid.Row="1"
Grid.Column="0"
Margin="0,0,10,8"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="原料来源:" />
<ComboBox
Width="160"
IsEditable="False"
ItemsSource="{Binding RawSourceValues}"
SelectedItem="{Binding SelectedRawSource, Mode=TwoWay}" />
</StackPanel>
<StackPanel Orientation="Horizontal" Grid.Row="1" Grid.Column="1" Margin="0,0,10,8">
<TextBlock VerticalAlignment="Center" Text="分拆状态:"/>
<ComboBox Width="160"
ItemsSource="{Binding RawSplitStateValues}"
SelectedItem="{Binding SelectedRawState, Mode=TwoWay}"
IsEditable="False"/>
<StackPanel
Grid.Row="1"
Grid.Column="1"
Margin="0,0,10,8"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="分拆状态:" />
<ComboBox
Width="160"
IsEditable="False"
ItemsSource="{Binding RawSplitStateValues}"
SelectedItem="{Binding SelectedRawState, Mode=TwoWay}" />
</StackPanel>
<!-- 第三行:时间范围与操作按钮 -->
<StackPanel Orientation="Horizontal" Grid.Row="2" Grid.Column="0" Margin="0,5,10,0">
<TextBlock VerticalAlignment="Center" Text="开始:"/>
<DatePicker Width="160" SelectedDate="{Binding StartTime, Mode=TwoWay}"/>
<!-- 第三行:时间范围与操作按钮 -->
<StackPanel
Grid.Row="2"
Grid.Column="0"
Margin="0,5,10,0"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="开始:" />
<DatePicker Width="160" SelectedDate="{Binding StartTime, Mode=TwoWay}" />
</StackPanel>
<StackPanel Orientation="Horizontal" Grid.Row="2" Grid.Column="1" Margin="0,5,10,0">
<TextBlock VerticalAlignment="Center" Text="结束:"/>
<DatePicker Width="160" SelectedDate="{Binding EndTime, Mode=TwoWay}"/>
<StackPanel
Grid.Row="2"
Grid.Column="1"
Margin="0,5,10,0"
Orientation="Horizontal">
<TextBlock VerticalAlignment="Center" Text="结束:" />
<DatePicker Width="160" SelectedDate="{Binding EndTime, Mode=TwoWay}" />
</StackPanel>
<StackPanel Orientation="Horizontal" Grid.Row="2" Grid.Column="3" Margin="0,5,10,0" HorizontalAlignment="Right">
<Button Content="查询" Width="80" Margin="0,0,8,0" Command="{Binding SearchCommand}"/>
<Button Content="清空" Width="80" Margin="0,0,8,0" Command="{Binding ClearCommand}"/>
<Button Content="导出Excel" Width="100" Command="{Binding ExportCommand}"/>
<StackPanel
Grid.Row="2"
Grid.Column="3"
Grid.ColumnSpan="2"
Margin="0,5,10,0"
HorizontalAlignment="Right"
Orientation="Horizontal">
<Button
Width="80"
Margin="0,0,8,0"
Command="{Binding SearchCommand}">
<StackPanel Orientation="Horizontal">
<TextBlock
Margin="0,0,6,0"
FontFamily="/Assets/Fonts/#iconfont"
FontSize="16"
Text="&#xe952;" />
<TextBlock Text="查询" />
</StackPanel>
</Button>
<Button
Width="80"
Margin="0,0,8,0"
Command="{Binding ClearCommand}">
<StackPanel Orientation="Horizontal">
<TextBlock
Margin="0,0,6,0"
FontFamily="/Assets/Fonts/#iconfont"
FontSize="16"
Text="&#xe60a;" />
<TextBlock Text="清空" />
</StackPanel>
</Button>
<Button Width="100" Command="{Binding ExportCommand}">
<StackPanel Orientation="Horizontal">
<TextBlock
Margin="0,0,6,0"
FontFamily="/Assets/Fonts/#iconfont"
FontSize="16"
Text="&#xe9d5;" />
<TextBlock Text="导出Excel" />
</StackPanel>
</Button>
</StackPanel>
</Grid>
</Border>
<!-- 列表区域 -->
<DataGrid Grid.Row="1" Margin="0,10,0,10"
ItemsSource="{Binding Items}"
AutoGenerateColumns="False"
CanUserAddRows="False"
IsReadOnly="True">
<!-- 列表区域 -->
<DataGrid
Grid.Row="2"
Margin="0,10,0,10"
AutoGenerateColumns="False"
CanUserAddRows="False"
FontSize="15"
IsReadOnly="True"
ItemsSource="{Binding Items}"
RowHeight="34">
<DataGrid.ColumnHeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="FontSize" Value="16"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="FontSize" Value="18" />
<Setter Property="FontWeight" Value="Bold" />
<Setter Property="HorizontalContentAlignment" Value="Center" />
</Style>
</DataGrid.ColumnHeaderStyle>
<DataGrid.Columns>
<DataGridTextColumn Header="Id" Binding="{Binding Id}" Width="80"/>
<DataGridTextColumn Header="原料编号" Binding="{Binding RawCode}" Width="120"/>
<DataGridTextColumn Header="原料名称" Binding="{Binding RawName}" Width="160"/>
<DataGridTextColumn Header="入库重量(kg)" Binding="{Binding Weight}" Width="120"/>
<DataGridTextColumn Header="批号" Binding="{Binding Batch}" Width="120"/>
<DataGridTextColumn Header="保质期(年)" Binding="{Binding ShelfLife}" Width="100"/>
<DataGridTextColumn Header="原料来源" Binding="{Binding RawSource}" Width="120"/>
<DataGridTextColumn Header="剩余重量(kg)" Binding="{Binding RemainWeight}" Width="120"/>
<DataGridTextColumn Header="分拆状态" Binding="{Binding RawState}" Width="120"/>
<DataGridTextColumn Header="创建时间" Binding="{Binding CreateTime, StringFormat=yyyy-MM-dd HH:mm:ss}" Width="160"/>
<!--<DataGridTextColumn
Width="80"
Binding="{Binding Id}"
Header="Id" />-->
<DataGridTextColumn
Width="120"
Binding="{Binding RawCode}"
Header="原料编号" />
<DataGridTextColumn
Width="160"
Binding="{Binding RawName}"
Header="原料名称" />
<DataGridTextColumn
Width="120"
Binding="{Binding Weight}"
Header="入库重量(kg)" />
<DataGridTextColumn
Width="120"
Binding="{Binding Batch}"
Header="批号" />
<DataGridTextColumn
Width="100"
Binding="{Binding ShelfLife}"
Header="保质期(年)" />
<DataGridTextColumn
Width="120"
Binding="{Binding RawSource}"
Header="原料来源" />
<DataGridTextColumn
Width="120"
Binding="{Binding RemainWeight}"
Header="剩余重量(kg)" />
<DataGridTextColumn
Width="120"
Binding="{Binding RawState}"
Header="分拆状态" />
<DataGridTextColumn
Width="160"
Binding="{Binding CreateTime, StringFormat=yyyy-MM-dd HH:mm:ss}"
Header="创建时间" />
</DataGrid.Columns>
</DataGrid>
<!-- 状态栏 -->
<StatusBar Grid.Row="2">
<!-- 状态栏 -->
<StatusBar Grid.Row="3">
<StatusBarItem>
<TextBlock Text="本页:"/>
<TextBlock Text="本页:" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="{Binding Items.Count}"/>
<TextBlock Text="{Binding Items.Count}" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text=" 总数:"/>
<TextBlock Text=" 总数:" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="{Binding TotalCount}"/>
<TextBlock Text="{Binding TotalCount}" />
</StatusBarItem>
<StatusBarItem>
<Separator Width="20"/>
<Separator Width="20" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="页码:"/>
<TextBlock Text="页码:" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="{Binding PageIndex}"/>
<TextBlock Text="{Binding PageIndex}" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="/"/>
<TextBlock Text="/" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="{Binding TotalPages}"/>
<TextBlock Text="{Binding TotalPages}" />
</StatusBarItem>
<StatusBarItem>
<Button Content="|&lt;" Width="40" Margin="5,0" Command="{Binding FirstPageCommand}"/>
<Button
Width="40"
Margin="5,0"
Command="{Binding FirstPageCommand}"
Content="|&lt;" />
</StatusBarItem>
<StatusBarItem>
<Button Content="&lt;" Width="40" Margin="5,0" Command="{Binding PrevPageCommand}"/>
<Button
Width="40"
Margin="5,0"
Command="{Binding PrevPageCommand}"
Content="&lt;" />
</StatusBarItem>
<StatusBarItem>
<Button Content="&gt;" Width="40" Margin="5,0" Command="{Binding NextPageCommand}"/>
<Button
Width="40"
Margin="5,0"
Command="{Binding NextPageCommand}"
Content="&gt;" />
</StatusBarItem>
<StatusBarItem>
<Button Content="&gt;|" Width="40" Margin="5,0" Command="{Binding LastPageCommand}"/>
<Button
Width="40"
Margin="5,0"
Command="{Binding LastPageCommand}"
Content="&gt;|" />
</StatusBarItem>
<StatusBarItem>
<Separator Width="20"/>
<Separator Width="20" />
</StatusBarItem>
<StatusBarItem>
<TextBlock Text="页大小:"/>
<TextBlock Text="页大小:" />
</StatusBarItem>
<StatusBarItem>
<ComboBox Width="80" SelectedValue="{Binding PageSize, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" SelectedValuePath="Content">
<ComboBoxItem Content="10"/>
<ComboBoxItem Content="20"/>
<ComboBoxItem Content="50"/>
<ComboBoxItem Content="100"/>
<ComboBox
Width="80"
SelectedValue="{Binding PageSize, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectedValuePath="Content">
<ComboBoxItem Content="10" />
<ComboBoxItem Content="20" />
<ComboBoxItem Content="50" />
<ComboBoxItem Content="100" />
</ComboBox>
</StatusBarItem>
<StatusBarItem HorizontalAlignment="Right">
<TextBlock Text="正在处理..." Visibility="{Binding IsBusy, Converter={StaticResource Bool2Vis}}"/>
<TextBlock Text="正在处理..." Visibility="{Binding IsBusy, Converter={StaticResource Bool2Vis}}" />
</StatusBarItem>
</StatusBar>
</Grid>