From 9b5e308e765cbffe1c65f5913813c22844e66df5 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Sat, 26 Mar 2022 06:27:12 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=96=B0=E5=A2=9E=E5=8D=95=E4=B8=AA=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=202.=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E4=BF=AE=E6=94=B9=E5=95=86=E5=AE=B6=E5=A4=87=E6=B3=A8?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBWY.Client/Views/Order/OrderList.xaml | 38 +++++-- .../Controllers/OrderController.cs | 21 ++++ BBWY.Server.Business/Order/OrderBusiness.cs | 107 +++++++++++++++++- 3 files changed, 152 insertions(+), 14 deletions(-) diff --git a/BBWY.Client/Views/Order/OrderList.xaml b/BBWY.Client/Views/Order/OrderList.xaml index 4919d3ec..4cba81c1 100644 --- a/BBWY.Client/Views/Order/OrderList.xaml +++ b/BBWY.Client/Views/Order/OrderList.xaml @@ -701,16 +701,30 @@ VerticalAlignment="Center"/> - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -726,10 +740,10 @@ --> - + - + diff --git a/BBWY.Server.API/Controllers/OrderController.cs b/BBWY.Server.API/Controllers/OrderController.cs index 72acd51e..e9a875a2 100644 --- a/BBWY.Server.API/Controllers/OrderController.cs +++ b/BBWY.Server.API/Controllers/OrderController.cs @@ -27,6 +27,17 @@ namespace BBWY.Server.API.Controllers return orderBusiness.GetOrderList(searchOrderRequest); } + /// + /// 获取单个订单详情 + /// + /// + /// + [HttpGet("{orderId}")] + public OrderResponse GetOrderById([FromRoute] string orderId) + { + return orderBusiness.GetOrderById(orderId); + } + /// /// 解密收货人信息 /// @@ -88,6 +99,16 @@ namespace BBWY.Server.API.Controllers orderBusiness.OutStock(outStockRequest); } + /// + /// 修改商家备注 + /// + /// + [HttpPost] + public void EditVenderRemark([FromBody] EditVenderRemarkRequest editVenderRemarkRequest) + { + orderBusiness.EditVenderRemark(editVenderRemarkRequest); + } + /// /// 指定时间范围的订单同步 /// diff --git a/BBWY.Server.Business/Order/OrderBusiness.cs b/BBWY.Server.Business/Order/OrderBusiness.cs index 9e1c4f00..1c21b342 100644 --- a/BBWY.Server.Business/Order/OrderBusiness.cs +++ b/BBWY.Server.Business/Order/OrderBusiness.cs @@ -80,8 +80,6 @@ namespace BBWY.Server.Business .Count(out var total) .Page(searchOrderRequest.PageIndex, searchOrderRequest.PageSize); - var sql = select.ToSql(); - var orderSourceList = select.ToList((o, ocs, oct, ods) => new Order() { Id = o.Id, @@ -170,6 +168,78 @@ namespace BBWY.Server.Business return response; } + public OrderResponse GetOrderById(string orderId) + { + var order = fsql.Select().LeftJoin((o, ocs, oct, ods) => o.Id == ocs.OrderId) + .LeftJoin((o, ocs, oct, ods) => o.Id == oct.OrderId) + .LeftJoin((o, ocs, oct, ods) => o.Id == ods.OrderId) + .Where((o, ocs, oct, ods) => o.Id == orderId) + .ToOne((o, ocs, oct, ods) => new Order() + { + Id = o.Id, + BuyerRemark = o.BuyerRemark, + EndTime = o.EndTime, + FreightPrice = o.FreightPrice, + ModifyTime = o.ModifyTime, + OrderPayment = o.OrderPayment, + OrderSellerPrice = o.OrderSellerPrice, + OrderState = o.OrderState, + OrderTotalPrice = o.OrderTotalPrice, + OrderType = o.OrderType, + PayType = o.PayType, + Platform = o.Platform, + ShopId = o.ShopId, + StartTime = o.StartTime, + StorageType = o.StorageType, + StoreId = o.StoreId, + StoreOrder = o.StoreOrder, + VenderRemark = o.VenderRemark, + PurchaseRemark = o.PurchaseRemark, + WaybillNo = o.WaybillNo, + Flag = o.Flag, + SDType = o.SDType, + + ContactName = ocs.ContactName, + Address = ocs.Address, + Province = ocs.Province, + County = ocs.County, + Town = ocs.Town, + City = ocs.City, + IsDecode = ocs.IsDecode, + Mobile = ocs.Mobile, + TelePhone = ocs.TelePhone, + + DeliveryExpressFreight = oct.DeliveryExpressFreight, + PlatformCommissionAmount = oct.PlatformCommissionAmount, + PlatformCommissionRatio = oct.PlatformCommissionRatio, + PreferentialAmount = oct.PreferentialAmount, + Profit = oct.Profit, + PurchaseAmount = oct.PurchaseAmount, + IsManualEdited = oct.IsManualEdited, + SDCommissionAmount = oct.SDCommissionAmount, + + BuyerAccount = ods.BuyerAccount, + DeliveryFreight = ods.DeliveryFreight, + PurchaseOrderId = ods.PurchaseOrderId, + PurchasePlatform = ods.PurchasePlatform, + SellerAccount = ods.SellerAccount, + }); + if (order == null) + throw new BusinessException("订单不存在"); + + var orderResponse = order.Map(); + + var orderSkuList = fsql.Select().Where(osku => osku.OrderId == orderId).ToList().Map>(); + var orderCouponList = fsql.Select().Where(oc => oc.OrderId == orderId).ToList().Map>(); + var orderCostDetailList = fsql.Select().Where(ocd => ocd.OrderId == orderId).ToList().Map>(); + + orderResponse.ItemList = orderSkuList; + orderResponse.OrderCouponList = orderCouponList; + orderResponse.OrderCostDetailList = orderCostDetailList; + orderResponse.StoreName = globalConfig.Stores.FirstOrDefault(s => s.StoreId == orderResponse.StoreId)?.StoreName ?? order.StoreId; + return orderResponse; + } + /// /// 解密 /// @@ -632,6 +702,11 @@ namespace BBWY.Server.Business }); } + /// + /// 出库 + /// + /// + /// public void OutStock(OutStockRequest outStockRequest) { var dbOrder = fsql.Select(outStockRequest.OrderId).ToOne(); @@ -653,6 +728,34 @@ namespace BBWY.Server.Business .ExecuteAffrows(); } + /// + /// 修改商家备注 + /// + /// + public void EditVenderRemark(EditVenderRemarkRequest editVenderRemarkRequest) + { + //修改平台订单备注 + var relayAPIHost = GetPlatformRelayAPIHost(editVenderRemarkRequest.Platform); + + if (editVenderRemarkRequest.Platform == Enums.Platform.京东) + { + var editApiResult = restApiService.SendRequest(relayAPIHost, "/Api/PlatformSDK/EditVenderRemark", editVenderRemarkRequest, null, HttpMethod.Post); + if (editApiResult.StatusCode != System.Net.HttpStatusCode.OK) + throw new BusinessException($"修改商家备注失败 {editApiResult.Content}") { Code = (int)editApiResult.StatusCode }; + var editResponse = JsonConvert.DeserializeObject(editApiResult.Content); + if (!editResponse.Success) + throw new BusinessException(editResponse.Msg); + } + else + { + throw new NotImplementedException(); + } + + fsql.Update(editVenderRemarkRequest.OrderId).Set(o => o.Flag, editVenderRemarkRequest.Flag) + .Set(o => o.VenderRemark, editVenderRemarkRequest.VenderRemark) + .ExecuteAffrows(); + } + /// /// 同步订单 ///