shanji 3 years ago
parent
commit
244416c1da
  1. 4
      BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs
  2. 35
      BBWY.Client/Models/Enums.cs
  3. 29
      BBWY.Client/Models/FinancialTerminal/ProcurementAudit/AuditPayBill.cs
  4. 31
      BBWY.Client/Resources/Themes/Generic.xaml
  5. 18
      BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs
  6. 24
      BBWY.Client/Views/FinancialTerminal/ProcurementAudit.xaml
  7. 2
      BBWY.Client/Views/MainWindow.xaml
  8. 4
      BBWY.Client/Views/Order/RelationPurchaseOrder.xaml
  9. 2
      BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
  10. 6
      BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs

4
BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs

@ -4,8 +4,12 @@ namespace BBWY.Client.Models
{
public class AuditPurchaseOrderResponse
{
public long OrderDropShippingId { get; set; }
public string PurchaseOrderId { get; set; }
public string MerchantOrderId { get; set; }
public long ShopId { get; set; }
public decimal PurchaseAmount { get; set; }

35
BBWY.Client/Models/Enums.cs

@ -114,4 +114,39 @@
= 1,
= 2
}
/// <summary>
/// 审计结果资金类型
/// <para>
///商品采购 = 0,
///商品退款 = 1,
///批量采购商品 = 2,
///入仓运费 = 3,
///售后成本 = 4,
///发票点数 = 5,
///快递单号 = 6,
///采购运费 = 7,
///诚e赊还款 = 8,
///空单号 = 9,
///手机费 = 10,
///刷单 = 11,
///质检报告 = 12
/// </para>
/// </summary>
public enum AuditCapitalType
{
= 0,
退 = 1,
= 2,
= 3,
= 4,
= 5,
= 6,
= 7,
e赊还款 = 8,
= 9,
= 10,
= 11,
= 12
}
}

29
BBWY.Client/Models/FinancialTerminal/ProcurementAudit/AuditPayBill.cs

@ -2,8 +2,10 @@
namespace BBWY.Client.Models
{
public class AuditPayBill
public class AuditPayBill : NotifyObject
{
private AuditCapitalType? auditCapitalType;
private string errorMessage;
/// <summary>
/// 账单流水号
/// </summary>
@ -44,6 +46,11 @@ namespace BBWY.Client.Models
/// </summary>
public decimal ExpenditureAmount { get; set; }
/// <summary>
/// 收入金额
/// </summary>
public decimal IncomeAmount { get; set; }
public long BelongShopId { get; set; }
/// <summary>
@ -64,12 +71,24 @@ namespace BBWY.Client.Models
/// </summary>
public string RelationShopOrderId { get; set; }
public string Remark { get; set; }
/// <summary>
/// 错误信息
/// 审计结果资金类型
/// </summary>
public string ErrorMessage { get; set; }
public string Remark { get; set; }
public AuditCapitalType? AuditCapitalType
{
get => auditCapitalType; set
{
Set(ref auditCapitalType, value);
if (value != null)
ErrorMessage = string.Empty;
}
}
/// <summary>
/// 错误信息
/// </summary>
public string ErrorMessage { get => errorMessage; set { Set(ref errorMessage, value); } }
}
}

31
BBWY.Client/Resources/Themes/Generic.xaml

@ -274,7 +274,7 @@
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Foreground" Value="{StaticResource Text.Color}"/>
</Style>
<Style x:Key="middleTextBlock" TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
@ -313,7 +313,7 @@
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="DataGridCell">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Margin" Value="0"/>
@ -333,7 +333,7 @@
<Style x:Key="ColumnHeaderStyle_Center" TargetType="DataGridColumnHeader">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="BorderThickness" Value="0,0,1,0"/>
<Setter Property="BorderThickness" Value="0,0,1,1"/>
<Setter Property="BorderBrush" Value="{StaticResource Border.Brush}"/>
<Setter Property="Background" Value="{StaticResource Border.Background}"/>
<Setter Property="Template">
@ -351,6 +351,7 @@
<ContentPresenter Margin="0" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<Path x:Name="SortArrow" Visibility="Collapsed" Data="M0,0 L1,0 0.5,1 z" Stretch="Fill" Grid.Column="2" Width="8" Height="6" Fill="White" Margin="0,0,50,0"
VerticalAlignment="Center" RenderTransformOrigin="1,1" />
</Grid>
</Border>
</ControlTemplate>
@ -360,7 +361,7 @@
<Style TargetType="DataGridColumnHeader">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="BorderThickness" Value="0,0,1,0"/>
<Setter Property="BorderThickness" Value="0,0,1,1"/>
<Setter Property="BorderBrush" Value="{StaticResource Border.Brush}"/>
<Setter Property="Background" Value="{StaticResource Border.Background}"/>
<Setter Property="Template">
@ -378,6 +379,28 @@
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Left" Margin="5,0,0,0"/>
<Path x:Name="SortArrow" Visibility="Collapsed" Data="M0,0 L1,0 0.5,1 z" Stretch="Fill" Grid.Column="2" Width="8" Height="6" Fill="White" Margin="0,0,50,0"
VerticalAlignment="Center" RenderTransformOrigin="1,1" />
<Thumb x:Name="PART_RightHeaderGripper"
Cursor="SizeWE"
HorizontalAlignment="Right"
Width="3"
VerticalAlignment="Stretch"
Background="#02F5F5F1"
Margin="0,0,-0.8,0">
<Thumb.Style>
<Style TargetType="Thumb">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Rectangle Name="thumbRect" Fill="{TemplateBinding Background}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Thumb.Style>
</Thumb>
</Grid>
</Border>
</ControlTemplate>

18
BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs

@ -212,7 +212,8 @@ namespace BBWY.Client.ViewModels
{
payBill.ErrorMessage = String.Empty;
#region 匹配采购单
var relationPurchaseOrder = auditPurchaseOrderResponse.Data.FirstOrDefault(p => p.PurchaseOrderId == payBill.MerchantOrderNo);
var relationPurchaseOrder = auditPurchaseOrderResponse.Data.FirstOrDefault(p => p.PurchaseOrderId == payBill.MerchantOrderNo ||
p.MerchantOrderId == payBill.MerchantOrderNo);
if (relationPurchaseOrder == null)
{
@ -223,6 +224,10 @@ namespace BBWY.Client.ViewModels
payBill.RelationShopOrderId = relationPurchaseOrder.OrderId;
payBill.BelongShopId = relationPurchaseOrder.ShopId;
payBill.BelongShop = shopList.FirstOrDefault(s => s.ShopId == relationPurchaseOrder.ShopId)?.ShopName;
if (payBill.IncomeAmount > 0)
payBill.AuditCapitalType = AuditCapitalType.退;
else
payBill.AuditCapitalType = AuditCapitalType.;
#endregion
}
}
@ -329,10 +334,10 @@ namespace BBWY.Client.ViewModels
var sourceMerchantOrderNo = array[2].FormatString();
//if (!string.IsNullOrEmpty(sourceMerchantOrderNo))
// continue; //暂时不支持此类商户单号
var incomeAmount = decimal.Parse(array[6].FormatString());
var expenditureAmount = decimal.Parse(array[7].FormatString());
if (expenditureAmount == 0) //支出为0的账单不参与审计
continue;
//if (expenditureAmount == 0) //支出为0的账单不参与审计
// continue;
payBillNo = array[0].FormatString();
if (AuditPayBillList.Any(p => p.PayBillNo == payBillNo))
continue;
@ -345,7 +350,8 @@ namespace BBWY.Client.ViewModels
ProductName = array[3].FormatString(),
PayTime = DateTime.Parse(array[4].FormatString()),
OppositeAccount = array[5].FormatString(),
ExpenditureAmount = Math.Abs(expenditureAmount),
ExpenditureAmount = expenditureAmount,
IncomeAmount = incomeAmount,
Remark = array[11]
};
payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo;
@ -353,7 +359,7 @@ namespace BBWY.Client.ViewModels
if (payBill.SourceMerchantOrderNo.StartsWith("T50060NP"))
payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo.Substring(8);
if(payBill.SourceMerchantOrderNo.StartsWith("T200P"))
if (payBill.SourceMerchantOrderNo.StartsWith("T200P"))
payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo.Substring(5);
AuditPayBillList.Add(payBill);

24
BBWY.Client/Views/FinancialTerminal/ProcurementAudit.xaml

@ -4,12 +4,21 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BBWY.Client.Views.FinancialTerminal"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
mc:Ignorable="d"
xmlns:hc="https://handyorg.github.io/handycontrol"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
d:DesignHeight="450" d:DesignWidth="800"
Title="ProcurementAudit"
DataContext="{Binding ProcurementAudit,Source={StaticResource Locator}}">
<Page.Resources>
<ObjectDataProvider x:Key="auditCapitalTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:AuditCapitalType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</Page.Resources>
<Grid>
<c:RoundWaitProgress Play="{Binding IsLoading}" Panel.ZIndex="999"/>
<Grid Margin="5,0">
@ -149,13 +158,24 @@
<DataGrid ItemsSource="{Binding ShowAuditPayBillList}"
Grid.Row="7"
Visibility="{Binding IsShowPayBillPanel,Converter={StaticResource objConverter},ConverterParameter=true:Visible:Collapsed}"
>
BorderThickness="1,1,0,0"
BorderBrush="{StaticResource Border.Brush}">
<DataGrid.Columns>
<DataGridTextColumn Header="账单流水号" Width="145" Binding="{Binding PayBillNo}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="账单平台" Width="60" Binding="{Binding PayBillType}" ElementStyle="{StaticResource middleTextBlock}"/>
<DataGridTextColumn Header="支付时间" Width="130" Binding="{Binding PayTime,StringFormat=yyyy-MM-dd HH:mm:ss}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="对方账号" Width="100" Binding="{Binding OppositeAccount}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="收入金额" Width="60" Binding="{Binding IncomeAmount}" ElementStyle="{StaticResource middleTextBlock}"/>
<DataGridTextColumn Header="支出金额" Width="60" Binding="{Binding ExpenditureAmount}" ElementStyle="{StaticResource middleTextBlock}"/>
<DataGridTemplateColumn Header="资金类型" Width="100">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Source={StaticResource auditCapitalTypeProvider}}"
SelectedItem="{Binding AuditCapitalType,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
VerticalContentAlignment="Center"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<!--<DataGridTextColumn Header="商户订单号" Width="200" Binding="{Binding SourceMerchantOrderNo}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>-->
<DataGridTemplateColumn Header="商户订单号" Width="200">
<DataGridTemplateColumn.CellTemplate>
@ -167,7 +187,7 @@
</DataGridTemplateColumn>
<DataGridTextColumn Header="归属店铺" Width="100" Binding="{Binding BelongShop}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="关联采购单" Width="140" Binding="{Binding RelationPurchaseOrderId}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="关联销售单" Width="140" Binding="{Binding RelationShopOrderId}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="关联销售单" Width="120" Binding="{Binding RelationShopOrderId}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="备注" Width="*" Binding="{Binding Remark}" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
<DataGridTextColumn Header="异常内容" Width="*" Binding="{Binding ErrorMessage}" Foreground="Red" ElementStyle="{StaticResource verticalCenterTextBlock}"/>
</DataGrid.Columns>

2
BBWY.Client/Views/MainWindow.xaml

@ -26,7 +26,7 @@
<!--<TextBlock Text="{Binding GlobalContext.User.TeamName}" Margin="5,0,0,0"/>
<TextBlock Text="{Binding GlobalContext.User.Shop.Platform}" Margin="5,0,0,0"/>-->
<TextBlock Text="{Binding GlobalContext.User.Shop.ShopName}" Margin="5,0,0,0"/>
<TextBlock Text="v10026" Margin="5,0,0,0"/>
<TextBlock Text="v10027" Margin="5,0,0,0"/>
</StackPanel>
</Border>
<Grid Grid.Row="1">

4
BBWY.Client/Views/Order/RelationPurchaseOrder.xaml

@ -120,7 +120,7 @@
ItemsSource="{Binding RelationPurchaseOrderSkuList}"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="1,0,1,0">
BorderThickness="0">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Height="90" Width="{Binding ActualWidth,ElementName=listbox_ordersku}">
@ -130,6 +130,8 @@
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Border BorderThickness="1,0" BorderBrush="{StaticResource Border.Brush}" Grid.ColumnSpan="4"/>
<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"/>

2
BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

@ -304,9 +304,11 @@ namespace BBWY.Server.Business
auditOrderRequest.ShopIdList.Contains(o.ShopId))
.ToList((o, ods) => new AuditPurchaseOrderResponse()
{
OrderDropShippingId = ods.Id,
OrderId = o.Id,
PurchaseAmount = ods.PurchaseAmount,
PurchaseOrderId = ods.PurchaseOrderId,
MerchantOrderId = ods.MerchantOrderId,
ShopId = o.ShopId,
PurchaseTime = ods.CreateTime
});

6
BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs

@ -1,13 +1,15 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace BBWY.Server.Model.Dto
{
public class AuditPurchaseOrderResponse
{
public long OrderDropShippingId { get; set; }
public string PurchaseOrderId { get; set; }
public string MerchantOrderId { get; set; }
public long ShopId { get; set; }
public decimal PurchaseAmount { get; set; }

Loading…
Cancel
Save