diff --git a/BBWY.Client/ViewModels/Order/OrderListViewModel.cs b/BBWY.Client/ViewModels/Order/OrderListViewModel.cs
index 98dfdce0..5d6a2a0b 100644
--- a/BBWY.Client/ViewModels/Order/OrderListViewModel.cs
+++ b/BBWY.Client/ViewModels/Order/OrderListViewModel.cs
@@ -241,6 +241,7 @@ namespace BBWY.Client.ViewModels
public override void Refresh()
{
+ queryShopId = globalContext.User.Shop.ShopId;
OrderList.Clear();
if (ToDayOrderAchievement != null)
{
diff --git a/BBWY.Server.API/Controllers/OrderController.cs b/BBWY.Server.API/Controllers/OrderController.cs
index fc1786c1..b0be0659 100644
--- a/BBWY.Server.API/Controllers/OrderController.cs
+++ b/BBWY.Server.API/Controllers/OrderController.cs
@@ -131,5 +131,16 @@ namespace BBWY.Server.API.Controllers
{
orderBusiness.EditVenderRemark(editVenderRemarkRequest);
}
+
+ ///
+ /// 刷单组拉取订单
+ ///
+ ///
+ ///
+ [HttpPost]
+ public OrderResponse SDGroupPullOrder([FromBody] SDGroupPullOrderRequest request)
+ {
+ return orderBusiness.SDGroupPullOrder(request);
+ }
}
}
diff --git a/BBWY.Server.Business/Order/OrderBusiness.cs b/BBWY.Server.Business/Order/OrderBusiness.cs
index 13d7f9cc..4ba81a4e 100644
--- a/BBWY.Server.Business/Order/OrderBusiness.cs
+++ b/BBWY.Server.Business/Order/OrderBusiness.cs
@@ -10,6 +10,7 @@ using FreeSql;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -24,6 +25,10 @@ namespace BBWY.Server.Business
private IFreeSql fsql;
private IIdGenerator idGenerator;
+
+ private Lazy productBusinessLazy;
+ private ProductBusiness productBusiness => productBusinessLazy.Value;
+
private Lazy freeSqlMultiDBManagerLazy;
private FreeSqlMultiDBManager freeSqlMultiDBManager => freeSqlMultiDBManagerLazy.Value;
@@ -36,6 +41,7 @@ namespace BBWY.Server.Business
this.fsql = fsql;
this.idGenerator = idGenerator;
freeSqlMultiDBManagerLazy = new Lazy(() => serviceProvider.GetService());
+ productBusinessLazy = new Lazy(() => serviceProvider.GetService());
}
private ISelect GetOrderListQueryConditions(SearchOrderRequest searchOrderRequest)
@@ -977,9 +983,48 @@ namespace BBWY.Server.Business
if (orderApiResult.StatusCode != System.Net.HttpStatusCode.OK)
throw new BusinessException($"获取未付款订单失败 {orderApiResult.Content}");
+ var orderJToken = JToken.Parse(orderApiResult.Content);
+ var orderInfoJToken = orderJToken["Data"]["jingdong_pop_order_notPayOrderById_responce"]["orderDataNotPayInfo"];
+ if (orderInfoJToken == null)
+ throw new BusinessException("未查询到代付款订单");
- }
+ orderResponse = new OrderResponse()
+ {
+ Id = orderInfoJToken["orderId"].ToString(),
+ ShopId = request.ShopId.ToString(),
+ OrderStartTime = DateTime.Parse(orderInfoJToken["orderCreated"].ToString()),
+ ItemList = new List(),
+ Platform = request.Platform
+ };
+
+ var orderSkuIds = string.Join(",", orderInfoJToken["itemList"].Children().Select(j => j.Value("skuId")));
+ var skuList = productBusiness.GetProductSkuList(new SearchProductSkuRequest()
+ {
+ AppKey = request.AppKey,
+ AppSecret = request.AppSecret,
+ AppToken = request.AppToken,
+ Platform = request.Platform,
+ Sku = orderSkuIds
+ });
+ foreach (var sku in skuList)
+ {
+ if (sku.Price != 0)
+ {
+ var num = orderInfoJToken["itemList"].Children().FirstOrDefault(j => j.Value("skuId") == sku.Id)?.Value("num") ?? 1;
+ orderResponse.ItemList.Add(new OrderSkuResponse()
+ {
+ Logo = sku.Logo,
+ OrderId = request.OrderId,
+ Price = sku.Price,
+ Title = sku.Title,
+ ProductId = sku.ProductId,
+ Id = sku.Id,
+ ItemTotal = num
+ });
+ }
+ }
+ }
return orderResponse;
}
}