You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

365 lines
25 KiB

<c:BWindow x:Class="BBWYB.Client.Views.Purchase.OnlinePurchase"
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:local="clr-namespace:BBWYB.Client.Views.Purchase"
xmlns:cmodel="clr-namespace:BBWYB.Client.Models"
xmlns:ctr="clr-namespace:BBWYB.Client.Converters"
xmlns:c="clr-namespace:SJ.Controls;assembly=SJ.Controls"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
Title="提交订单" Height="768" Width="1024"
Style="{StaticResource bwstyle}"
MinButtonVisibility="Collapsed"
MaxButtonVisibility="Collapsed"
DataContext="{Binding OnlinePurchase,Source={StaticResource Locator}}"
SnapsToDevicePixels="True"
UseLayoutRounding="True">
<c:BWindow.Resources>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
</c:BWindow.Resources>
<b:Interaction.Triggers>
<b:EventTrigger EventName="Loaded">
<b:InvokeCommandAction Command="{Binding LoadCommand}"/>
</b:EventTrigger>
<b:EventTrigger EventName="Unloaded">
<b:InvokeCommandAction Command="{Binding UnloadCommand}"/>
</b:EventTrigger>
</b:Interaction.Triggers>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition/>
<RowDefinition Height="60"/>
<RowDefinition Height="100"/>
<RowDefinition Height="40"/>
</Grid.RowDefinitions>
<c:RoundWaitProgress Play="{Binding IsLoading}" Panel.ZIndex="999" Grid.RowSpan="6"/>
<Border BorderThickness="0,0,0,1" BorderBrush="{StaticResource MainMenu.BorderBrush}"
Background="{StaticResource Border.Background}">
<TextBlock Text="提交订单" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<Border Background="{StaticResource Border.Background}"
BorderThickness="1"
BorderBrush="{StaticResource Border.Brush}"
Grid.Row="1">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="90"/>
<ColumnDefinition Width="70"/>
<ColumnDefinition Width="60"/>
</Grid.ColumnDefinitions>
<TextBlock Text="店铺商品信息" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="采购商品信息" Style="{StaticResource middleTextBlock}" Grid.Column="1"/>
<StackPanel Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center" Orientation="Horizontal">
<TextBlock Text="组合配置"/>
<Path Style="{StaticResource path_question}"
Width="14" Margin="5,0,0,0" Fill="{StaticResource Text.Pink}" ToolTipService.InitialShowDelay="0">
<Path.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="该数量为组合配置比例,非实际采购数量"/>
</ToolTip>
</Path.ToolTip>
</Path>
</StackPanel>
<TextBlock Text="数量" Style="{StaticResource middleTextBlock}" Grid.Column="3"/>
<TextBlock Text="单价" Style="{StaticResource middleTextBlock}" Grid.Column="4"/>
<TextBlock Text="总额" Style="{StaticResource middleTextBlock}" Grid.Column="5"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="1"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="2"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="4"/>
</Grid>
</Border>
<ListBox x:Name="listbox_ProductSkuWithSchemeList" Grid.Row="2"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}"
BorderThickness="1,0,1,1"
BorderBrush="{StaticResource Border.Brush}"
ItemsSource="{Binding ProductSkuWithSchemeList}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_ProductSkuWithSchemeList}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="90"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<c:BAsyncImage UrlSource="{Binding Logo}"
Width="80" DecodePixelWidth="80"
VerticalAlignment="Top" Margin="0,5,0,0"
Cursor="Hand"/>
<StackPanel Grid.Column="1" Orientation="Vertical" VerticalAlignment="Top" Margin="0,5,0,0">
<StackPanel Orientation="Horizontal">
<TextBlock Text="SKU:"/>
<c:BButton Content="{Binding SkuId}" Style="{StaticResource LinkButton}"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"
CommandParameter="{Binding SkuId}"
Margin=" 5,0,0,0"/>
</StackPanel>
<TextBlock TextTrimming="CharacterEllipsis"
Margin="0,17,0,0">
<Run Text="名称:"/>
<Run Text="{Binding Title}"/>
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding Title}"/>
</ToolTip>
</TextBlock.ToolTip>
</TextBlock>
<StackPanel Orientation="Horizontal" Margin="0,17,0,0">
<TextBlock>
<Run Text="单价:"/>
<Run Text="{Binding Price}"/>
</TextBlock>
<TextBlock Margin="10,0,0,0">
<Run Text="数量:"/>
<Run Text="{Binding Quantity}"/>
</TextBlock>
</StackPanel>
</StackPanel>
</Grid>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}"/>
<Border Height="1" VerticalAlignment="Bottom" Background="{StaticResource Border.Brush}"/>
<ListBox x:Name="listbox_PurchaseSchemeProductSkuList" Grid.Column="1"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}"
Style="{StaticResource NoScrollViewListBoxStyle}"
ItemsSource="{Binding PurchaseSchemeProductSkuList}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_PurchaseSchemeProductSkuList}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="90"/>
<ColumnDefinition Width="70"/>
<ColumnDefinition Width="60"/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="90"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<c:BAsyncImage UrlSource="{Binding Logo}"
Width="80" DecodePixelWidth="80"
VerticalAlignment="Top" Margin="0,5,0,5"
Cursor="Hand"/>
<StackPanel Grid.Column="1" Orientation="Vertical" VerticalAlignment="Top" Margin="0,5,0,0">
<StackPanel Orientation="Horizontal">
<TextBlock Text="SKU:"/>
<c:BButton Content="{Binding PurchaseSkuId}" Style="{StaticResource LinkButton}"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"
CommandParameter="{Binding PurchaseSkuId}"
Margin=" 5,0,0,0"/>
</StackPanel>
<TextBlock TextTrimming="CharacterEllipsis"
Margin="0,17,0,0">
<Run Text="名称:"/>
<Run Text="{Binding Title}"/>
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding Title}"/>
</ToolTip>
</TextBlock.ToolTip>
</TextBlock>
<StackPanel Orientation="Horizontal" Margin="0,17,0,0">
<TextBlock>
<Run Text="采购平台:"/>
<Run Text="{Binding DataContext.PurchasePlatform,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox},AncestorLevel=1}}"/>
</TextBlock>
<TextBlock Margin="10,0,0,0">
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding DataContext.PurchaserName,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox},AncestorLevel=1}}"/>
</ToolTip>
</TextBlock.ToolTip>
<Run Text="采购商:"/>
<Run Text="{Binding DataContext.PurchaserName,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox},AncestorLevel=1}}"/>
</TextBlock>
</StackPanel>
</StackPanel>
</Grid>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,2,0"/>
<TextBlock Text="{Binding QuantityRatio}" Style="{StaticResource middleTextBlock}" Grid.Column="1" Margin="0,0,0,25"/>
<c:BButton Content="修改" Grid.Column="1" VerticalAlignment="Bottom"
Background="White"
Foreground="{StaticResource Text.Color}"
Command="{Binding DataContext.EditQuantityRatioCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Window}}}">
<c:BButton.CommandParameter>
<MultiBinding Converter="{StaticResource mptConverter}">
<Binding Path="DataContext.Quantity" RelativeSource="{RelativeSource Mode=FindAncestor,AncestorType={x:Type ListBox},AncestorLevel=1}"/>
<Binding Path="."/>
</MultiBinding>
</c:BButton.CommandParameter>
</c:BButton>
<Border Grid.Column="1" Height="1" Background="{StaticResource Border.Brush}" VerticalAlignment="Bottom" Margin="-2,0,2,30"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,2,0" Grid.Column="1"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Grid.Column="2" Margin="0,0,5,0">
<c:BButton Content="-" Background="White" Foreground="Black"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="1"
Width="15"
Height="18"
Command="{Binding DataContext.SubtractQuantityCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Window}}}"
CommandParameter="{Binding }"/>
<c:BTextBox Text="{Binding ItemTotal,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Margin="5,0" VerticalAlignment="Center"
Width="40" HorizontalContentAlignment="Center" Padding="0,0,3,0"
DisableBgColor="{StaticResource TextBox.Disable.BgColor}"/>
<c:BButton Content="+" Background="White" Foreground="Black"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="1"
Width="15"
Height="18"
Command="{Binding DataContext.AddQuantityCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Window}}}"
CommandParameter="{Binding }"/>
</StackPanel>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,2,0" Grid.Column="2"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,2,0" Grid.Column="3"/>
<TextBlock Grid.Column="3" Text="{Binding Price}" Style="{StaticResource middleTextBlock}"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Margin="0,0,2,0" Grid.Column="4"/>
<TextBlock Grid.Column="4" Text="{Binding SkuAmount}" Style="{StaticResource middleTextBlock}"/>
<Border Height="1" VerticalAlignment="Bottom" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="5" Margin="0,0,2,0"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<!--<DataGrid Grid.Row="1"
ItemsSource="{Binding PurchaseSchemeProductSkuList}"
RowHeight="90">
<DataGrid.Columns>
<DataGridTemplateColumn Header="采购货品信息" HeaderStyle="{StaticResource ColumnHeaderStyle_Center}" Width="1*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_orerSku}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="90"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
--><!--{Binding Logo}--><!--
<c:BAsyncImage UrlSource="{Binding Logo}"
Width="80" DecodePixelWidth="80"
VerticalAlignment="Top" Margin="0,5,0,0"/>
<TextBlock Text="{Binding Title}" Grid.Column="1"
VerticalAlignment="Center"/>
</Grid>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="单价" HeaderStyle="{StaticResource ColumnHeaderStyle_Center}" Width="80" Binding="{Binding Price}"
ElementStyle="{StaticResource middleTextBlock}"/>
<DataGridTemplateColumn Header="数量" HeaderStyle="{StaticResource ColumnHeaderStyle_Center}" Width="100">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<c:BTextBox Text="{Binding ItemTotal,Converter={StaticResource inputNumberConverter},Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
Width="60"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="金额" HeaderStyle="{StaticResource ColumnHeaderStyle_Center}" Width="80"
Binding="{Binding SkuAmount,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
ElementStyle="{StaticResource middleTextBlock}"/>
</DataGrid.Columns>
</DataGrid>-->
<Grid Grid.Row="3" Margin="5,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.2*"/>
</Grid.ColumnDefinitions>
<c:BTextBox Text="{Binding PrucahseRemark,Mode=OneWayToSource,UpdateSourceTrigger=PropertyChanged}"
WaterRemark="留言信息"
Height="60"
VerticalContentAlignment="Top"
Padding="3,5,0,0"
TextWrapping="Wrap"/>
<TextBlock Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center">
<Run Text="货品总金额"/>
<Run Text="{Binding ProductAmount,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" Foreground="#EC808D"/>
<Run Text="元"/>
<LineBreak/>
<Run Text="运费共计"/>
<Run Text="{Binding FreightAmount,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" Foreground="#EC808D"/>
<Run Text="元"/>
</TextBlock>
</Grid>
<StackPanel HorizontalAlignment="Stretch" VerticalAlignment="Center" Grid.Row="4" Margin="5,0">
<c:BTextBox Text="{Binding ContactName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="收货人"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<c:BTextBox Text="{Binding Province,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="省" BorderThickness="1,1,0,1"/>
<c:BTextBox Text="{Binding City,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="市" Grid.Column="1" BorderThickness="1,1,0,1"/>
<c:BTextBox Text="{Binding County,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="区/县" Grid.Column="2" BorderThickness="1,1,0,1"/>
<c:BTextBox Text="{Binding Town,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="镇" Grid.Column="3" BorderThickness="1,1,0,1"/>
<c:BTextBox Text="{Binding Address,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Margin="0,2.5" WaterRemark="街道地址" Grid.Column="4"/>
</Grid>
<c:BTextBox Text="{Binding Mobile,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="电话"/>
</StackPanel>
<TextBlock Grid.Row="5" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="5,0,0,0" FontSize="16">
<Run Text="应付总额(含运费)"/>
<Run Text="{Binding TotalAmount,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" Foreground="#EC808D"/>
<Run Text="元"/>
</TextBlock>
<StackPanel Orientation="Horizontal" Grid.Row="6" VerticalAlignment="Center" HorizontalAlignment="Right">
<RadioButton Content="批发" Padding="0" VerticalContentAlignment="Center"
GroupName="OrderMode"
IsChecked="{Binding PurchaseOrderMode,Converter={StaticResource enumToBooleanConverter},ConverterParameter={x:Static cmodel:PurchaseOrderMode.批发}}"/>
<RadioButton Content="分销" Padding="0" VerticalContentAlignment="Center" Margin="5,0,0,0"
GroupName="OrderMode"
IsChecked="{Binding PurchaseOrderMode,Converter={StaticResource enumToBooleanConverter},ConverterParameter={x:Static cmodel:PurchaseOrderMode.代发}}"/>
<c:BButton Content="预览订单" Width="80" HorizontalAlignment="Right" Margin="5,0,0,0"
Command="{Binding PreviewOrderCommand}" Background="#1CC2A2"/>
<c:BButton Content="提交订单" Width="80" HorizontalAlignment="Right"
Command="{Binding FastCreateOrderCommand}" Margin="0,0,5,0"/>
</StackPanel>
</Grid>
</c:BWindow>