shanji 3 years ago
parent
commit
47a24aba9b
  1. 25
      BBWY.Client/Converters/SaleGrossProfitConverter.cs
  2. 4
      BBWY.Client/Models/APIModel/Response/Order/OrderCostResponse.cs
  3. 22
      BBWY.Client/Views/Order/OrderListControl.xaml

25
BBWY.Client/Converters/SaleGrossProfitConverter.cs

@ -0,0 +1,25 @@
using System;
using System.Globalization;
using System.Windows.Data;
namespace BBWY.Client.Converters
{
/// <summary>
/// 销售毛利率转换器
/// </summary>
public class SaleGrossProfitConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
decimal.TryParse(values[0]?.ToString(), out decimal profit);
decimal.TryParse(values[1]?.ToString(), out decimal actualAmount);
return $"{(actualAmount == 0 ? 0M : Math.Round(profit / actualAmount * 100, 2))}%";
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}

4
BBWY.Client/Models/APIModel/Response/Order/OrderCostResponse.cs

@ -23,12 +23,12 @@ namespace BBWY.Client.Models
public decimal PreferentialAmount { get; set; }
/// <summary>
/// 利
///
/// </summary>
public decimal Profit { get; set; }
/// <summary>
/// 利
/// 成本毛利率
/// </summary>
public decimal ProfitRatio
{

22
BBWY.Client/Views/Order/OrderListControl.xaml

@ -21,6 +21,7 @@
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
@ -804,8 +805,27 @@
<Run Text="毛利"/>
<Run Text="{Binding OrderCost.Profit}"/>
</TextBlock>
<!--<TextBlock>
<TextBlock.Text>
<MultiBinding Converter="{StaticResource sgpcConverter}">
<Binding Path="OrderCost.Profit"/>
<Binding Path="ActualAmount" Mode="OneWay"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>-->
<TextBlock>
<Run Text="毛利率"/>
<Run Text="销售毛利率"/>
<Run>
<Run.Text>
<MultiBinding Converter="{StaticResource sgpcConverter}">
<Binding Path="OrderCost.Profit"/>
<Binding Path="ActualAmount" Mode="OneWay"/>
</MultiBinding>
</Run.Text>
</Run>
</TextBlock>
<TextBlock>
<Run Text="成本毛利率"/>
<Run Text="{Binding OrderCost.ProfitRatio,StringFormat=\{0\}%}"/>
</TextBlock>
</StackPanel>

Loading…
Cancel
Save