diff --git a/BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs b/BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs index aebce230..928b77cc 100644 --- a/BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs +++ b/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; } diff --git a/BBWY.Client/Models/Enums.cs b/BBWY.Client/Models/Enums.cs index 55ed29ba..ff45003f 100644 --- a/BBWY.Client/Models/Enums.cs +++ b/BBWY.Client/Models/Enums.cs @@ -114,4 +114,39 @@ 采购单 = 1, 销售订单 = 2 } + + /// + /// 审计结果资金类型 + /// + ///商品采购 = 0, + ///商品退款 = 1, + ///批量采购商品 = 2, + ///入仓运费 = 3, + ///售后成本 = 4, + ///发票点数 = 5, + ///快递单号 = 6, + ///采购运费 = 7, + ///诚e赊还款 = 8, + ///空单号 = 9, + ///手机费 = 10, + ///刷单 = 11, + ///质检报告 = 12 + /// + /// + public enum AuditCapitalType + { + 商品采购 = 0, + 商品退款 = 1, + 批量采购商品 = 2, + 入仓运费 = 3, + 售后成本 = 4, + 发票点数 = 5, + 快递单号 = 6, + 采购运费 = 7, + 诚e赊还款 = 8, + 空单号 = 9, + 手机费 = 10, + 刷单 = 11, + 质检报告 = 12 + } } diff --git a/BBWY.Client/Models/FinancialTerminal/ProcurementAudit/AuditPayBill.cs b/BBWY.Client/Models/FinancialTerminal/ProcurementAudit/AuditPayBill.cs index abf9e715..2173fdb7 100644 --- a/BBWY.Client/Models/FinancialTerminal/ProcurementAudit/AuditPayBill.cs +++ b/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; /// /// 账单流水号 /// @@ -44,6 +46,11 @@ namespace BBWY.Client.Models /// public decimal ExpenditureAmount { get; set; } + /// + /// 收入金额 + /// + public decimal IncomeAmount { get; set; } + public long BelongShopId { get; set; } /// @@ -64,12 +71,24 @@ namespace BBWY.Client.Models /// public string RelationShopOrderId { get; set; } + public string Remark { get; set; } + /// - /// 错误信息 + /// 审计结果资金类型 /// - 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; + } + } + /// + /// 错误信息 + /// + public string ErrorMessage { get => errorMessage; set { Set(ref errorMessage, value); } } } } diff --git a/BBWY.Client/Resources/Themes/Generic.xaml b/BBWY.Client/Resources/Themes/Generic.xaml index 145f223f..80a6f86f 100644 --- a/BBWY.Client/Resources/Themes/Generic.xaml +++ b/BBWY.Client/Resources/Themes/Generic.xaml @@ -274,7 +274,7 @@ - + - + + + diff --git a/BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs b/BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs index 43255f89..aff8405d 100644 --- a/BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs +++ b/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); diff --git a/BBWY.Client/Views/FinancialTerminal/ProcurementAudit.xaml b/BBWY.Client/Views/FinancialTerminal/ProcurementAudit.xaml index 354083b0..46e49eda 100644 --- a/BBWY.Client/Views/FinancialTerminal/ProcurementAudit.xaml +++ b/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}}"> + + + + + + + @@ -149,13 +158,24 @@ + BorderThickness="1,1,0,0" + BorderBrush="{StaticResource Border.Brush}"> + + + + + + + + @@ -167,7 +187,7 @@ - + diff --git a/BBWY.Client/Views/MainWindow.xaml b/BBWY.Client/Views/MainWindow.xaml index 84692014..0634c33d 100644 --- a/BBWY.Client/Views/MainWindow.xaml +++ b/BBWY.Client/Views/MainWindow.xaml @@ -26,7 +26,7 @@ - + diff --git a/BBWY.Client/Views/Order/RelationPurchaseOrder.xaml b/BBWY.Client/Views/Order/RelationPurchaseOrder.xaml index d95d4aec..076ceade 100644 --- a/BBWY.Client/Views/Order/RelationPurchaseOrder.xaml +++ b/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"> @@ -130,6 +130,8 @@ + + diff --git a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs index 38c2eab3..8a6ae1f9 100644 --- a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs +++ b/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 }); diff --git a/BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs b/BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs index 4e315af7..beb04c70 100644 --- a/BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs +++ b/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; }