diff --git a/BBWY.Client/Models/APIModel/Response/Order/ExportOrderSkuResponse.cs b/BBWY.Client/Models/APIModel/Response/Order/ExportOrderSkuResponse.cs index 42b45ba4..88b9ad7e 100644 --- a/BBWY.Client/Models/APIModel/Response/Order/ExportOrderSkuResponse.cs +++ b/BBWY.Client/Models/APIModel/Response/Order/ExportOrderSkuResponse.cs @@ -31,9 +31,21 @@ namespace BBWY.Client.Models public string SpuName { get; set; } + public OrderState? OrderState { get; set; } + + /// + /// 平台补贴 + /// + public decimal? PreferentialAmount { get; set; } + + /// + /// 商家优惠金额 + /// + public decimal? SellerPreferentialAmount { get; set; } + public override string ToString() { - return $"{StartTime},{ShopName},{OrderId},{Spu},{Sku},{StorageType},{PurchaseAmount},{SkuPrice},{ItemTotal},{SpuName}"; + return $"{StartTime},{ShopName},{OrderId},{OrderState},{Spu},{Sku},{StorageType},{PurchaseAmount},{PreferentialAmount},{SellerPreferentialAmount},{SkuPrice},{ItemTotal},{SpuName}"; } } diff --git a/BBWY.Client/ViewModels/Order/ExportOrderSkuViewModel.cs b/BBWY.Client/ViewModels/Order/ExportOrderSkuViewModel.cs index de504727..62ce2f87 100644 --- a/BBWY.Client/ViewModels/Order/ExportOrderSkuViewModel.cs +++ b/BBWY.Client/ViewModels/Order/ExportOrderSkuViewModel.cs @@ -203,7 +203,7 @@ namespace BBWY.Client.ViewModels try { var list = response.Data.Select(x => x.ToString()).ToList(); - list.Insert(0, "开始时间,店铺名称,订单Id,SPU,SKU,仓储类型,采购成本(货款+运费),单价,数量,商品标题"); + list.Insert(0, "开始时间,店铺名称,订单Id,订单状态,SPU,SKU,仓储类型,采购成本(货款+运费),平台优惠,商家优惠,单价,数量,商品标题"); System.IO.File.WriteAllLines(ssaveFileName, list, Encoding.UTF8); App.Current.Dispatcher.Invoke(() => MessageBox.Show("导出完成", "导出")); } diff --git a/BBWY.Client/Views/Order/ExportOrderSkuView.xaml b/BBWY.Client/Views/Order/ExportOrderSkuView.xaml index f752cfbb..03e4dd2f 100644 --- a/BBWY.Client/Views/Order/ExportOrderSkuView.xaml +++ b/BBWY.Client/Views/Order/ExportOrderSkuView.xaml @@ -120,6 +120,10 @@ ElementStyle="{StaticResource middleTextBlock}" HeaderStyle="{StaticResource ColumnHeaderStyle_Center}" Width="110"/> + + Width="60"/> + + + /// 统计采购单各状态数量 + /// + /// + /// + [HttpGet("{shopId}")] + public PurchaseOrderCountStatisticsResponse GetPurchaseOrderCountStatistics([FromRoute] long shopId) + { + return statisticsBusiness.GetPurchaseOrderCountStatistics(shopId); + } + /// /// 刷单组个人统计 /// diff --git a/BBWY.Server.Business/Order/OrderBusiness.cs b/BBWY.Server.Business/Order/OrderBusiness.cs index 870349cf..1f6cb950 100644 --- a/BBWY.Server.Business/Order/OrderBusiness.cs +++ b/BBWY.Server.Business/Order/OrderBusiness.cs @@ -1138,7 +1138,10 @@ namespace BBWY.Server.Business Spu = osku.ProductId, SpuName = p.Title, StartTime = o.StartTime, - StorageType = o.StorageType + StorageType = o.StorageType, + OrderState = o.OrderState, + PreferentialAmount = o.PreferentialAmount, + SellerPreferentialAmount = o.SellerPreferentialAmount }; } diff --git a/BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs b/BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs index 21c77372..cf5f1635 100644 --- a/BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs +++ b/BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs @@ -1088,5 +1088,7 @@ namespace BBWY.Server.Business return new UpdatePackStateResponse(); } + + } } diff --git a/BBWY.Server.Business/Statistics/StatisticsBusiness.cs b/BBWY.Server.Business/Statistics/StatisticsBusiness.cs index 4a763dc0..54721e0e 100644 --- a/BBWY.Server.Business/Statistics/StatisticsBusiness.cs +++ b/BBWY.Server.Business/Statistics/StatisticsBusiness.cs @@ -314,6 +314,30 @@ namespace BBWY.Server.Business return response; } + public PurchaseOrderCountStatisticsResponse GetPurchaseOrderCountStatistics(long shopId) + { + var list = fsql.Select().Where(po => po.ShopId == shopId) + .GroupBy(po => po.OrderState) + .ToList(g => new + { + Count = g.Count(), + OrderState = g.Key + }); + + var response = new PurchaseOrderCountStatisticsResponse() + { + WaitPayCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.待付款)?.Count ?? 0, + CancelCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.已取消)?.Count ?? 0, + CompletedCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.已完成)?.Count ?? 0, + WaitCheckCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.待验收)?.Count ?? 0, + WaitComputationCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.待核算)?.Count ?? 0, + WaitPurchaseCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.等待采购 || x.OrderState == Enums.PurchaseOrderState.部分采购)?.Count ?? 0, + WaitShippment = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.待发货 || x.OrderState == Enums.PurchaseOrderState.部分发货)?.Count ?? 0, + WaitReceiveCount = list.FirstOrDefault(x => x.OrderState == Enums.PurchaseOrderState.待收货 || x.OrderState == Enums.PurchaseOrderState.部分收货)?.Count ?? 0 + }; + return response; + } + /// /// SD组个人统计 /// diff --git a/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderV2.cs b/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderV2.cs index 602d1798..16c56e69 100644 --- a/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderV2.cs +++ b/BBWY.Server.Model/Db/PurchaseOrder/PurchaseOrderV2.cs @@ -114,9 +114,6 @@ namespace BBWY.Server.Model.Db public bool? IsSubscribeKuaiDi100 { get; set; } = false; - /// - /// 采购单状态(待付款=0,待发货=1,待收货=2,待质检=3,待打包=4,待结算=5,已完成=6) - /// [Column(MapType = typeof(int?))] public Enums.PurchaseOrderState? OrderState { get; set; } diff --git a/BBWY.Server.Model/Dto/Response/Order/ExportOrderSkuResponse.cs b/BBWY.Server.Model/Dto/Response/Order/ExportOrderSkuResponse.cs index a0d779e6..c3d8a232 100644 --- a/BBWY.Server.Model/Dto/Response/Order/ExportOrderSkuResponse.cs +++ b/BBWY.Server.Model/Dto/Response/Order/ExportOrderSkuResponse.cs @@ -28,6 +28,19 @@ namespace BBWY.Server.Model.Dto public int? ItemTotal { get; set; } public string SpuName { get; set; } + + public Enums.OrderState? OrderState { get; set; } + + /// + /// 平台补贴 + /// + public decimal? PreferentialAmount { get; set; } + + /// + /// 商家优惠金额 + /// + public decimal? SellerPreferentialAmount { get; set; } + } public class ExportOrderSkuListResponse diff --git a/BBWY.Server.Model/Dto/Response/PurchaseOrderV2/PurchaseOrderCountStatisticsResponse.cs b/BBWY.Server.Model/Dto/Response/PurchaseOrderV2/PurchaseOrderCountStatisticsResponse.cs new file mode 100644 index 00000000..bc063c04 --- /dev/null +++ b/BBWY.Server.Model/Dto/Response/PurchaseOrderV2/PurchaseOrderCountStatisticsResponse.cs @@ -0,0 +1,49 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace BBWY.Server.Model.Dto +{ + public class PurchaseOrderCountStatisticsResponse + { + /// + /// 等待付款数量 + /// + public long WaitPayCount { get; set; } + + /// + /// 等待采购数量(含部分采购) + /// + public long WaitPurchaseCount { get; set; } + + /// + /// 等待发货数量(含部分发货) + /// + public long WaitShippment { get; set; } + + /// + /// 等待收货数量(含部分收货) + /// + public long WaitReceiveCount { get; set; } + + /// + /// 已完成数量 + /// + public long CompletedCount { get; set; } + + /// + /// 已取消数量 + /// + public long CancelCount { get; set; } + + /// + /// 待验收数量 + /// + public long WaitCheckCount { get; set; } + + /// + /// 待核算数量 + /// + public long WaitComputationCount { get; set; } + } +}