From e00c5aa4e260541cbec00175bd75c4ff090cb9cf Mon Sep 17 00:00:00 2001 From: shanji <18996038927@163.com> Date: Wed, 19 Apr 2023 14:54:27 +0800 Subject: [PATCH] 1 --- .../APIServices/PurchaseOrderService.cs | 32 +++++------ .../OnlinePurchase/PreviewOrderResponse.cs | 8 +-- .../ViewModels/Order/OrderViewModel.cs | 54 +++++++++++++++++++ .../Purchase/OnlinePurchaseViewModel.cs | 32 +++++------ BBWYB.Server.API/NLog.config | 14 +++++ .../PurchaseOrder/PurchaseOrderBusiness.cs | 1 + .../Client/Impl/PP_1688Client.cs | 2 +- 7 files changed, 103 insertions(+), 40 deletions(-) create mode 100644 BBWYB.Server.API/NLog.config diff --git a/BBWYB.Client/APIServices/PurchaseOrderService.cs b/BBWYB.Client/APIServices/PurchaseOrderService.cs index beb9d23..0450938 100644 --- a/BBWYB.Client/APIServices/PurchaseOrderService.cs +++ b/BBWYB.Client/APIServices/PurchaseOrderService.cs @@ -24,7 +24,7 @@ namespace BBWYB.Client.APIServices /// public ApiResponse PreviewPurchaseOrder(Consignee consignee, IList purchaseSchemeProductSkuList, Platform purchasePlatform, PurchaseAccount purchaseAccount, PurchaseOrderMode purchaseOrderMode) { - return SendRequest(globalContext.BBYWApiHost, "api/purchaseOrder/PreviewPurchaseOrder", new + return SendRequest(globalContext.BBYWApiHost, "api/PurchaseOrder/PreviewPurchaseOrder", new { purchaseOrderMode, consignee, @@ -37,9 +37,9 @@ namespace BBWYB.Client.APIServices BelongSkuId = sku.SkuId }), Platform = purchasePlatform, - AppKey = purchaseAccount.AppKey, - AppSecret = purchaseAccount.AppSecret, - AppToken = purchaseAccount.AppToken, + purchaseAccount.AppKey, + purchaseAccount.AppSecret, + purchaseAccount.AppToken, SaveResponseLog = true }, null, HttpMethod.Post); } @@ -68,18 +68,13 @@ namespace BBWYB.Client.APIServices Platform purchasePlatform, PurchaseAccount purchaseAccount, PurchaseOrderMode purchaseOrderMode, - string tradeMode, string remark, string orderId, long shopId, - long purchaseAccountId, - string buyerAccount, - string sellerAccount, - string purchaserId, - decimal platformCommissionRatio, + string purchaserName, string extensions) { - return SendRequest(globalContext.BBYWApiHost, "api/purchaseOrder/NewFastCreateOrder", new + return SendRequest(globalContext.BBYWApiHost, "api/purchaseOrder/CreatePurchaseOrder", new { purchaseOrderMode, consignee, @@ -92,19 +87,16 @@ namespace BBWYB.Client.APIServices BelongSkuId = sku.SkuId }), Platform = purchasePlatform, - AppKey = purchaseAccount.AppKey, - AppSecret = purchaseAccount.AppSecret, - AppToken = purchaseAccount.AppToken, + purchaseAccount.AppKey, + purchaseAccount.AppSecret, + purchaseAccount.AppToken, SaveResponseLog = true, - tradeMode, remark, orderId, shopId, - purchaseAccountId, - buyerAccount, - sellerAccount, - purchaserId, - platformCommissionRatio, + purchaseAccountId = purchaseAccount.Id, + purchaseAccountName = purchaseAccount.AccountName, + purchaserName, extensions }, null, HttpMethod.Post); } diff --git a/BBWYB.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs b/BBWYB.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs index 09518a3..e3fac3f 100644 --- a/BBWYB.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs +++ b/BBWYB.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs @@ -17,10 +17,10 @@ /// public decimal FreightAmount { get; set; } - /// - /// 交易方式 - /// - public OrderTradeTypeResponse OrderTradeType { get; set; } + ///// + ///// 交易方式 + ///// + //public OrderTradeTypeResponse OrderTradeType { get; set; } /// /// 扩展数据 diff --git a/BBWYB.Client/ViewModels/Order/OrderViewModel.cs b/BBWYB.Client/ViewModels/Order/OrderViewModel.cs index 167e70e..246947e 100644 --- a/BBWYB.Client/ViewModels/Order/OrderViewModel.cs +++ b/BBWYB.Client/ViewModels/Order/OrderViewModel.cs @@ -162,6 +162,60 @@ namespace BBWYB.Client.ViewModels var choosePurchaseScheme = new ChoosePurchaseScheme(order); choosePurchaseScheme.ShowDialog(); } + + public override void Refresh() + { + OrderList.Clear(); + //if (ToDayOrderAchievement != null) + //{ + // ToDayOrderAchievement.AdvCost = 0M; + // ToDayOrderAchievement.DeliveryExpressFreight = 0M; + // ToDayOrderAchievement.OrderCount = 0; + // ToDayOrderAchievement.Profit = 0; + // ToDayOrderAchievement.PurchaseAmount = 0; + // ToDayOrderAchievement.SaleAmount = 0; + // ToDayOrderAchievement.SaleAmount = 0M; + // ToDayOrderAchievement.EmployereCost = 0M; + // ToDayOrderAchievement.TaxCost = 0M; + // ToDayOrderAchievement.SdCost = 0M; + // ToDayOrderAchievement.PularizeEndDate = null; + // ToDayOrderAchievement.ShoppopularizeList.Clear(); + //} + PageIndex = 1; + OrderCount = 0; + } + + public void RefreshOrder(string orderId) + { + //Task.Factory.StartNew(() => LoadOrder(PageIndex)); + var order = OrderList.FirstOrDefault(o => o.Id == orderId); + if (order == null) + { + IsLoading = false; + return; + } + + var orderResponse = orderService.GetOrderList(orderId, StartDate, EndDate, null, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, 1, 10, globalContext.User.Shop.ShopId, true); + IsLoading = false; + if (!orderResponse.Success) + { + Application.Current.Dispatcher.Invoke(() => MessageBox.Show(orderResponse.Msg, "查询订单详情")); + return; + } + if (orderResponse.Data.Count == 0) + return; + + var newOrder = orderResponse.Data.Items.FirstOrDefault().Map(); + newOrder.LocalConvert(); + + Application.Current.Dispatcher.Invoke(() => + { + var orderIndex = OrderList.IndexOf(order); + OrderList.Remove(order); + OrderList.Insert(orderIndex, newOrder); + }); + + } } } diff --git a/BBWYB.Client/ViewModels/Purchase/OnlinePurchaseViewModel.cs b/BBWYB.Client/ViewModels/Purchase/OnlinePurchaseViewModel.cs index c46cbf1..e5a16f7 100644 --- a/BBWYB.Client/ViewModels/Purchase/OnlinePurchaseViewModel.cs +++ b/BBWYB.Client/ViewModels/Purchase/OnlinePurchaseViewModel.cs @@ -1,7 +1,9 @@ using BBWYB.Client.APIServices; using BBWYB.Client.Models; +using BBWYB.Client.Views.Purchase; using BBWYB.Common.Trigger; using CommunityToolkit.Mvvm.Input; +using CommunityToolkit.Mvvm.Messaging; using System; using System.Collections.Generic; using System.Collections.ObjectModel; @@ -48,7 +50,7 @@ namespace BBWYB.Client.ViewModels private PurchaseAccount purchaseAccount; private IList purchaseSchemeList; - private OrderViewModel orderListViewModel; + private OrderViewModel orderVM; private GlobalContext globalContext; private bool isLoading; private PurchaseService purchaseService; @@ -68,17 +70,16 @@ namespace BBWYB.Client.ViewModels private string town; private string prucahseRemark; private PurchaseOrderMode purchaseOrderMode = PurchaseOrderMode.代发; - private string tradeMode; /// /// 扩展数据,暂用于拳探 /// private string extensions; public OnlinePurchaseViewModel(PurchaseService purchaseService, - PurchaseOrderService purchaseOrderService, - PurchaseProductAPIService purchaseProductAPIService, - GlobalContext globalContext, - OrderViewModel orderListViewModel) + PurchaseOrderService purchaseOrderService, + PurchaseProductAPIService purchaseProductAPIService, + GlobalContext globalContext, + OrderViewModel orderVM) { this.purchaseOrderService = purchaseOrderService; this.purchaseProductAPIService = purchaseProductAPIService; @@ -90,7 +91,7 @@ namespace BBWYB.Client.ViewModels FastCreateOrderCommand = new RelayCommand(FastCreateOrder); PreviewOrderCommand = new RelayCommand(PreviewOrder); this.globalContext = globalContext; - this.orderListViewModel = orderListViewModel; + this.orderVM = orderVM; //PurchaseOrderMode = PurchaseOrderMode.代发; } @@ -158,7 +159,6 @@ namespace BBWYB.Client.ViewModels purchaseSchemeList.Clear(); PurchaseSchemeProductSkuList.Clear(); - tradeMode = string.Empty; extensions = string.Empty; ProductAmount = FreightAmount = TotalAmount = 0; ContactName = Address = Mobile = Province = City = County = Town = PrucahseRemark = string.Empty; @@ -238,14 +238,14 @@ namespace BBWYB.Client.ViewModels if (!r.Success) { ProductAmount = FreightAmount = TotalAmount = 0; - tradeMode = string.Empty; + extensions = string.Empty; App.Current.Dispatcher.Invoke(() => MessageBox.Show(r.Msg, "预览订单报价")); return; } ProductAmount = r.Data.ProductAmount; FreightAmount = r.Data.FreightAmount; TotalAmount = r.Data.TotalAmount; - tradeMode = r.Data.OrderTradeType?.Code; + //tradeMode = r.Data.OrderTradeType?.Code; extensions = r.Data.Extensions; }); } @@ -270,6 +270,11 @@ namespace BBWYB.Client.ViewModels MessageBox.Show("收货人信息不全", "下单"); return; } + if (string.IsNullOrEmpty(extensions)) + { + MessageBox.Show("缺少报价扩展数据", "下单"); + return; + } IsLoading = true; Task.Factory.StartNew(() => purchaseOrderService.FastCreateOrder(new Consignee() @@ -286,15 +291,10 @@ namespace BBWYB.Client.ViewModels purchaseAccount.PurchasePlatformId, purchaseAccount, PurchaseOrderMode, - tradeMode, PrucahseRemark, order.Id, globalContext.User.Shop.ShopId, - purchaseAccount.Id, - purchaseAccount.AccountName, purchaseSchemeList[0].PurchaserName, - purchaser.Id, - globalContext.User.Shop.PlatformCommissionRatio ?? 0.05M, extensions)).ContinueWith(t => { IsLoading = false; @@ -307,9 +307,11 @@ namespace BBWYB.Client.ViewModels //刷新订单列表 //orderListViewModel.RefreshOrder(order.Id); + orderVM.RefreshOrder(order.Id); //关闭当前窗口 //GalaSoft.MvvmLight.Messaging.Messenger.Default.Send(null, "OnlinePurchase_Close"); + WeakReferenceMessenger.Default.Send(new Message_OnlinePurchase_Close(null)); }); } diff --git a/BBWYB.Server.API/NLog.config b/BBWYB.Server.API/NLog.config new file mode 100644 index 0000000..8405dea --- /dev/null +++ b/BBWYB.Server.API/NLog.config @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs index 816bc89..725b021 100644 --- a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs +++ b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs @@ -43,6 +43,7 @@ namespace BBWYB.Server.Business public PreviewOrderResponse PreviewPurchaseOrder(PreviewOrderRequest request) { + nLogManager.Default().Info($"PreviewPurchaseOrder {JsonConvert.SerializeObject(request)}"); var response = ppPlatformClientFactory.GetClient((AdapterEnums.PlatformType)request.Platform) .PreviewOrder(new PP_PreviewOrderRequest() { diff --git a/SDKAdapter/PurchasePlatform/Client/Impl/PP_1688Client.cs b/SDKAdapter/PurchasePlatform/Client/Impl/PP_1688Client.cs index f7f65a5..5349335 100644 --- a/SDKAdapter/PurchasePlatform/Client/Impl/PP_1688Client.cs +++ b/SDKAdapter/PurchasePlatform/Client/Impl/PP_1688Client.cs @@ -78,7 +78,7 @@ namespace SDKAdapter.PurchasePlatform.Client } catch (Exception ex) { - throw new Exception(ex.Message); + throw; } var orderPreviewResuslt = (JArray)result["orderPreviewResuslt"];