From 4ba6da51103d7305936520c6989c52f40fa71830 Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Thu, 30 Mar 2023 16:03:55 +0800
Subject: [PATCH 01/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E7=AE=A1=E7=90=86=20=E7=AD=9B=E9=80=89=E6=9D=A1=E4=BB=B6?=
=?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98=20=E8=B0=83=E6=95=B4?=
=?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=8D=95=E9=87=87=E8=B4=AD=E5=8D=95=E5=8F=B7?=
=?UTF-8?q?=E6=98=BE=E7=A4=BA=E6=9D=A1=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ViewModels/Order/OrderListViewModel.cs | 71 +++++++++----------
.../ServiceOrder/EditServiceOrderViewModel.cs | 4 +-
BBWY.Client/Views/Order/OrderList.xaml | 4 +-
.../Views/ServiceOrder/EditServiceOrder.xaml | 17 ++---
4 files changed, 48 insertions(+), 48 deletions(-)
diff --git a/BBWY.Client/ViewModels/Order/OrderListViewModel.cs b/BBWY.Client/ViewModels/Order/OrderListViewModel.cs
index 541b0364..0710aac1 100644
--- a/BBWY.Client/ViewModels/Order/OrderListViewModel.cs
+++ b/BBWY.Client/ViewModels/Order/OrderListViewModel.cs
@@ -44,7 +44,7 @@ namespace BBWY.Client.ViewModels
private bool onlyDF;
private bool excludeSD;
private bool excludeCanceled;
- private bool onlyUnhandle;
+ //private bool onlyUnhandle;
private Random random;
public GlobalContext globalContext { get; set; }
//private bool? includeAfterOrder;
@@ -93,10 +93,7 @@ namespace BBWY.Client.ViewModels
//public bool? IncludeAfterOrder { get => includeAfterOrder; set { Set(ref includeAfterOrder, value); } }
public string SearchServiceId { get => searchServiceId; set { Set(ref searchServiceId, value); } }
- ///
- /// 仅显示未处理
- ///
- public bool OnlyUnhandle { get => onlyUnhandle; set { Set(ref onlyUnhandle, value); } }
+ //public bool OnlyUnhandle { get => onlyUnhandle; set { Set(ref onlyUnhandle, value); } }
public ToDayOrderAchievement ToDayOrderAchievement { get; set; }
@@ -450,39 +447,39 @@ namespace BBWY.Client.ViewModels
IsLoading = false;
}
- private void LoadAfterSaleOrder(int pageIndex)
- {
- IsLoading = true;
- Thread.Sleep(random.Next(0, 1000));
- var response = afterOrderService.GetAfterSaleOrderList(globalContext.User.Shop.ShopId,
- SearchOrderId,
- StartDate,
- EndDate,
- SearchProductId,
- SearchSku,
- SearchServiceId,
- OnlyUnhandle,
- pageIndex,
- pageSize);
-
- if (!response.Success)
- {
- IsLoading = false;
- App.Current.Dispatcher.Invoke(() => MessageBox.Show(response.Msg, "提示"));
- return;
- }
+ //private void LoadAfterSaleOrder(int pageIndex)
+ //{
+ // IsLoading = true;
+ // Thread.Sleep(random.Next(0, 1000));
+ // var response = afterOrderService.GetAfterSaleOrderList(globalContext.User.Shop.ShopId,
+ // SearchOrderId,
+ // StartDate,
+ // EndDate,
+ // SearchProductId,
+ // SearchSku,
+ // SearchServiceId,
+ // OnlyUnhandle,
+ // pageIndex,
+ // pageSize);
+
+ // if (!response.Success)
+ // {
+ // IsLoading = false;
+ // App.Current.Dispatcher.Invoke(() => MessageBox.Show(response.Msg, "提示"));
+ // return;
+ // }
- OrderCount = response.Data.Count;
- var afterOrderList = response.Data.Items.Map>();
- App.Current.Dispatcher.Invoke(() =>
- {
- AfterSaleOrderList.Clear();
- foreach (var aso in afterOrderList)
- AfterSaleOrderList.Add(aso);
- Messenger.Default.Send(string.Empty, "AfterSaleOrderList_ScrollToTop");
- });
- IsLoading = false;
- }
+ // OrderCount = response.Data.Count;
+ // var afterOrderList = response.Data.Items.Map>();
+ // App.Current.Dispatcher.Invoke(() =>
+ // {
+ // AfterSaleOrderList.Clear();
+ // foreach (var aso in afterOrderList)
+ // AfterSaleOrderList.Add(aso);
+ // Messenger.Default.Send(string.Empty, "AfterSaleOrderList_ScrollToTop");
+ // });
+ // IsLoading = false;
+ //}
private void LoadTodayAchievement(DateTime startTime, DateTime endTime, long shopId)
{
diff --git a/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs b/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs
index 4fcbee5f..12c9306a 100644
--- a/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs
+++ b/BBWY.Client/ViewModels/ServiceOrder/EditServiceOrderViewModel.cs
@@ -2,6 +2,7 @@
using BBWY.Client.Models;
using GalaSoft.MvvmLight.Command;
using HandyControl.Controls;
+using System.Collections.Generic;
using System.Threading.Tasks;
using System.Windows.Input;
@@ -29,7 +30,7 @@ namespace BBWY.Client.ViewModels
private decimal? reissueProductAmount;
private bool isLoading;
-
+ public IList RenewalTypeList { get; set; }
public ServiceResult? ServiceResult { get => serviceResult; set { Set(ref serviceResult, value); } }
public decimal? SDRefundFreight { get => sdRefundFreight; set { Set(ref sdRefundFreight, value); } }
public ReturnDirection? ReturnDirection { get => returnDirection; set { Set(ref returnDirection, value); } }
@@ -63,6 +64,7 @@ namespace BBWY.Client.ViewModels
{
this.serviceOrderService = serviceOrderService;
SaveCommand = new RelayCommand(Save);
+ RenewalTypeList = new List() { StorageType.本地自发, StorageType.代发 };
}
public void SetData(ServiceOrder serviceOrder)
diff --git a/BBWY.Client/Views/Order/OrderList.xaml b/BBWY.Client/Views/Order/OrderList.xaml
index a1392a7e..5ba2ce63 100644
--- a/BBWY.Client/Views/Order/OrderList.xaml
+++ b/BBWY.Client/Views/Order/OrderList.xaml
@@ -398,11 +398,11 @@
-
+
diff --git a/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml b/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml
index 92078f87..ca2a9df6 100644
--- a/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml
+++ b/BBWY.Client/Views/ServiceOrder/EditServiceOrder.xaml
@@ -23,11 +23,6 @@
-
-
-
-
-
@@ -114,7 +109,7 @@
-
-
+
+
+
+
+
+
+
From 59d6e51cdb7fbb0073ed29bf0b3f34277f75b895 Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Thu, 30 Mar 2023 17:09:48 +0800
Subject: [PATCH 02/16] =?UTF-8?q?=E6=8B=B3=E6=8E=A2=E9=87=87=E8=B4=AD?=
=?UTF-8?q?=E8=B4=A6=E5=8F=B7=E9=BB=98=E8=AE=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Setting/ShopSettingViewModel.cs | 8 +++
BBWY.Client/Views/Setting/ShopSetting.xaml | 68 ++++++++++++-------
2 files changed, 51 insertions(+), 25 deletions(-)
diff --git a/BBWY.Client/ViewModels/Setting/ShopSettingViewModel.cs b/BBWY.Client/ViewModels/Setting/ShopSettingViewModel.cs
index ddf919fe..9c8c108e 100644
--- a/BBWY.Client/ViewModels/Setting/ShopSettingViewModel.cs
+++ b/BBWY.Client/ViewModels/Setting/ShopSettingViewModel.cs
@@ -147,6 +147,14 @@ namespace BBWY.Client.ViewModels
MessageBox.Show("店铺密码验证未通过", "保存店铺设置");
return;
}
+
+ if (PurchaseAccount.PurchasePlatformId == Platform.拳探)
+ {
+ PurchaseAccount.AppKey = "BBWY2023022001";
+ PurchaseAccount.AppSecret = "908e131365d5448ca651ba20ed7ddefe";
+ PurchaseAccount.AppToken = PurchaseAccount.AccountName;
+ }
+
if (string.IsNullOrEmpty(PurchaseAccount.AppKey) ||
string.IsNullOrEmpty(PurchaseAccount.AppSecret) ||
string.IsNullOrEmpty(PurchaseAccount.AppToken) ||
diff --git a/BBWY.Client/Views/Setting/ShopSetting.xaml b/BBWY.Client/Views/Setting/ShopSetting.xaml
index 852e73e6..e450b056 100644
--- a/BBWY.Client/Views/Setting/ShopSetting.xaml
+++ b/BBWY.Client/Views/Setting/ShopSetting.xaml
@@ -88,45 +88,63 @@
Foreground="{Binding PanelIndex,Converter={StaticResource objConverter},ConverterParameter=2:White:#4A4A4A}"/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
-
+
+
From 28c3cc101905ea6d2840c93ea9fc561527bb768e Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Thu, 30 Mar 2023 17:10:31 +0800
Subject: [PATCH 03/16] 10087
---
BBWY.Client/Views/MainWindow.xaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/BBWY.Client/Views/MainWindow.xaml b/BBWY.Client/Views/MainWindow.xaml
index f7e9201a..453ebcc3 100644
--- a/BBWY.Client/Views/MainWindow.xaml
+++ b/BBWY.Client/Views/MainWindow.xaml
@@ -26,7 +26,7 @@
-
+
From 1aa9fb57cdc08a9ebcca36d102c112872414df4e Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Fri, 31 Mar 2023 01:51:39 +0800
Subject: [PATCH 04/16] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=8D=95=E8=BF=87?=
=?UTF-8?q?=E6=BB=A4=E5=8F=96=E6=B6=88?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs | 1 +
1 file changed, 1 insertion(+)
diff --git a/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs b/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
index 1d96f535..8c6e3878 100644
--- a/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
+++ b/BBWY.Server.Business/ServiceOrder/ServiceOrderBusiness.cs
@@ -26,6 +26,7 @@ namespace BBWY.Server.Business
.WhereIf(!string.IsNullOrEmpty(request.OrderId), (s, o, osku) => s.OrderId == request.OrderId)
.WhereIf(!string.IsNullOrEmpty(request.ServiceId), (s, o, osku) => s.ServiceId == request.ServiceId)
.WhereIf(request.ServiceOrderState != null, (s, o, osku) => s.Status == request.ServiceOrderState)
+ .WhereIf(request.ServiceOrderState == null, (s, o, osku) => s.Status != Model.Enums.ServiceOrderState.已取消)
.WhereIf(request.ReturnDirection != null, (s, o, osku) => s.ReturnDirection == request.ReturnDirection)
.WhereIf(request.StartDate != null, (s, o, osku) => s.ApplyTime >= request.StartDate)
.WhereIf(request.EndDate != null, (s, o, osku) => s.ApplyTime <= request.EndDate)
From bfc8afa44b283c17615a2a9b1fe87cbd48637b47 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Sun, 2 Apr 2023 00:37:35 +0800
Subject: [PATCH 05/16] 1
---
BBWY.Test/Program.cs | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/BBWY.Test/Program.cs b/BBWY.Test/Program.cs
index d89d7415..fcb6c24b 100644
--- a/BBWY.Test/Program.cs
+++ b/BBWY.Test/Program.cs
@@ -1,12 +1,6 @@
-using Jd.ACES;
-using Jd.Api;
-using Jd.Api.Request;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using Jd.Api;
using System;
-using System.Collections.Generic;
using System.Linq;
-using System.Net.Http;
using System.Security.Cryptography;
using System.Text;
From 8a82beece72b3598035f76407762bea222262a17 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Sun, 2 Apr 2023 00:57:57 +0800
Subject: [PATCH 06/16] =?UTF-8?q?1)=20=E8=AE=A2=E5=8D=95=E8=A1=A8=E6=96=B0?=
=?UTF-8?q?=E5=A2=9E=E5=AD=97=E6=AE=B5IsGift,=E6=98=AF=E5=90=A6=E4=B8=BA?=
=?UTF-8?q?=E8=B5=A0=E5=93=81=202)=20=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3?=
=?UTF-8?q?=E8=BF=87=E6=BB=A4=E8=B5=A0=E5=93=81=E8=AE=A2=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/Order/OrderBusiness.cs | 4 +++-
BBWY.Server.Model/Db/Order/Order.cs | 6 ++++++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/BBWY.Server.Business/Order/OrderBusiness.cs b/BBWY.Server.Business/Order/OrderBusiness.cs
index 48fa7d9e..59f0c485 100644
--- a/BBWY.Server.Business/Order/OrderBusiness.cs
+++ b/BBWY.Server.Business/Order/OrderBusiness.cs
@@ -86,7 +86,8 @@ namespace BBWY.Server.Business
}
select = select.WhereIf(searchOrderRequest.ShopId != null, (o, ocs, oct, sh) => o.ShopId == searchOrderRequest.ShopId)
- .WhereIf(!string.IsNullOrEmpty(searchOrderRequest.SDOperator), (o, ocs, oct, sh) => o.SDOperator == searchOrderRequest.SDOperator);
+ .WhereIf(!string.IsNullOrEmpty(searchOrderRequest.SDOperator), (o, ocs, oct, sh) => o.SDOperator == searchOrderRequest.SDOperator)
+ .Where((o, ocs, oct, sh) => o.IsGift == false);
//select = select.Where((o, ocs, oct) => o.ShopId == searchOrderRequest.ShopId);
@@ -276,6 +277,7 @@ namespace BBWY.Server.Business
select = select.WhereIf(searchOrderRequest.ShopId != null, (o, ocs, oct) => o.ShopId == searchOrderRequest.ShopId)
.WhereIf(!string.IsNullOrEmpty(searchOrderRequest.SDOperator), (o, ocs, oct) => o.SDOperator == searchOrderRequest.SDOperator)
+ .Where((o, ocs, oct) => o.IsGift == false)
.OrderByDescending((o, ocs, oct) => o.StartTime);
var orderSourceList = select.ToList((o, ocs, oct) => new ExportOrderResponse()
diff --git a/BBWY.Server.Model/Db/Order/Order.cs b/BBWY.Server.Model/Db/Order/Order.cs
index 1ed909df..e6649953 100644
--- a/BBWY.Server.Model/Db/Order/Order.cs
+++ b/BBWY.Server.Model/Db/Order/Order.cs
@@ -179,6 +179,12 @@ namespace BBWY.Server.Model.Db
[Column(DbType = "bit")]
public bool IsAfterSaleOrder { get; set; } = false;
+ ///
+ /// 是否为赠品
+ ///
+ [Column(DbType = "bit")]
+ public bool IsGift { get; set; } = false;
+
#region 订单成本
///
/// 平台扣点金额
From a4112750fea8c9c99eb57236099eddaab4ebd2b9 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Sun, 2 Apr 2023 01:01:56 +0800
Subject: [PATCH 07/16] 1
---
BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs b/BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs
index 965ba98f..00b4f497 100644
--- a/BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs
+++ b/BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs
@@ -21,6 +21,7 @@ namespace BBWY.Server.Business
request.EndTime = request.EndTime.Date.AddDays(1).AddSeconds(-1);
var orderList = fsql.Select()
.Where(o => request.ShopIds.Contains(o.ShopId) && o.StartTime >= request.StartTime && o.StartTime <= request.EndTime)
+ .Where(o => o.IsGift == false)
.OrderBy(o => o.StartTime)
.ToList(o => new BillCorrectionOrderResponse
{
@@ -113,7 +114,7 @@ namespace BBWY.Server.Business
var currentOrderAfterOrderList = afterOrderList.Where(aso => aso.OrderId == billCorrectionRequest.OrderId).ToList();
orderCost.DeliveryExpressFreight = billCorrectionRequest.NewDeliveryExpressFreight;
-
+
if (order.StorageType != Model.Enums.StorageType.SD)
{
orderCost.CalculationOrderProfitAndCost(order, currentOrderAfterOrderList);
From c09ece6e415ee10acb2b2a89afcd2a94a8e7093d Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Sun, 2 Apr 2023 14:47:28 +0800
Subject: [PATCH 08/16] =?UTF-8?q?=E5=88=A0=E9=99=A4=E8=BF=87=E6=9C=9F?=
=?UTF-8?q?=E7=9A=84=E5=BE=85=E4=BB=98=E6=AC=BE=E8=AE=A2=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Controllers/OrderSyncController.cs | 9 ++
.../Sync/OrderSkuSaleDetailSyncBusiness.cs | 80 ------------
.../Sync/OrderSyncBusiness.cs | 123 +++---------------
BBWY.Server.Model/Db/Order/GiftOrder.cs | 34 -----
BBWY.Server.Model/Db/Order/GiftOrderSku.cs | 36 -----
JD.API/Controllers/PlatformSDKController.cs | 2 +-
6 files changed, 29 insertions(+), 255 deletions(-)
delete mode 100644 BBWY.Server.Model/Db/Order/GiftOrder.cs
delete mode 100644 BBWY.Server.Model/Db/Order/GiftOrderSku.cs
diff --git a/BBWY.Server.API/Controllers/OrderSyncController.cs b/BBWY.Server.API/Controllers/OrderSyncController.cs
index 0661e0c0..3655d8a3 100644
--- a/BBWY.Server.API/Controllers/OrderSyncController.cs
+++ b/BBWY.Server.API/Controllers/OrderSyncController.cs
@@ -85,5 +85,14 @@ namespace BBWY.Server.API.Controllers
{
orderSyncBusiness.CheckJDPauseOrder(shopId);
}
+
+ ///
+ /// 删除过期的待付款订单
+ ///
+ [HttpPost]
+ public void DeleteTimeOutWaitPayOrder()
+ {
+ orderSyncBusiness.DeleteTimeOutWaitPayOrder();
+ }
}
}
diff --git a/BBWY.Server.Business/Sync/OrderSkuSaleDetailSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSkuSaleDetailSyncBusiness.cs
index d8d7006e..0252010d 100644
--- a/BBWY.Server.Business/Sync/OrderSkuSaleDetailSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSkuSaleDetailSyncBusiness.cs
@@ -88,59 +88,6 @@ namespace BBWY.Server.Business
CancelItemTotal = (int)g.Sum(g.Value.Item1.ItemTotal)
});
- var giftOskuGroups = fsql.Select()
- .InnerJoin((gos, go) => gos.GiftOrderId == go.Id)
- .WhereIf(shopId != null, (gos, go) => go.ShopId == shopId)
- .Where((gos, go) => go.StartTime >= startDate && go.StartTime <= endTime)
- //.Where((gos, go) => go.OrderState != Model.Enums.OrderState.已取消)
- .GroupBy((gos, go) => new
- {
- go.Platform,
- go.ShopId,
- gos.ProductId,
- gos.SkuId,
- gos.Price,
- go.StartTime.Value.Date
- })
- .ToList(g => new SkuDailySalesDetail
- {
- Platform = g.Key.Platform,
- ShopId = g.Key.ShopId,
- Spu = g.Key.ProductId,
- Sku = g.Key.SkuId,
- Date = g.Key.Date,
- Price = g.Key.Price,
- Amount = g.Sum(g.Value.Item1.Price * g.Value.Item1.ItemTotal),
- ItemTotal = (int)g.Sum(g.Value.Item1.ItemTotal)
- });
-
- var cancelGiftOskuGroups = fsql.Select()
- .InnerJoin((gos, go) => gos.GiftOrderId == go.Id)
- .WhereIf(shopId != null, (gos, go) => go.ShopId == shopId)
- .Where((gos, go) => go.ModifyTime >= startDate && go.ModifyTime <= endTime)
- .Where((gos, go) => go.OrderState == Model.Enums.OrderState.已取消)
- .GroupBy((gos, go) => new
- {
- go.Platform,
- go.ShopId,
- gos.ProductId,
- gos.SkuId,
- gos.Price,
- go.ModifyTime.Value.Date
- })
- .ToList(g => new SkuDailySalesDetail
- {
- Platform = g.Key.Platform,
- ShopId = g.Key.ShopId,
- Spu = g.Key.ProductId,
- Sku = g.Key.SkuId,
- Date = g.Key.Date,
- Price = g.Key.Price,
- Amount = 0,
- ItemTotal = 0,
- CancelItemTotal = (int)g.Sum(g.Value.Item1.ItemTotal)
- });
-
insertSkuDailySalesDetailList.AddRange(oskuGroups);
foreach (var canceloSkuGroup in cancelOskuGroups)
@@ -154,33 +101,6 @@ namespace BBWY.Server.Business
insertSkuDailySalesDetailList.Add(canceloSkuGroup);
}
- foreach (var giftOskuGroup in giftOskuGroups)
- {
- var skuDaily = insertSkuDailySalesDetailList.FirstOrDefault(s => s.ShopId == giftOskuGroup.ShopId &&
- s.Date == giftOskuGroup.Date &&
- s.Sku == giftOskuGroup.Sku);
- if (skuDaily != null)
- {
- skuDaily.ItemTotal += giftOskuGroup.ItemTotal;
- skuDaily.Amount += giftOskuGroup.Amount;
- }
- else
- insertSkuDailySalesDetailList.Add(giftOskuGroup);
- }
-
-
- foreach (var cancelGiftOskuGroup in cancelGiftOskuGroups)
- {
- var skuDaily = insertSkuDailySalesDetailList.FirstOrDefault(s => s.ShopId == cancelGiftOskuGroup.ShopId &&
- s.Date == cancelGiftOskuGroup.Date &&
- s.Sku == cancelGiftOskuGroup.Sku);
- if (skuDaily != null)
- skuDaily.CancelItemTotal = cancelGiftOskuGroup.CancelItemTotal;
- else
- insertSkuDailySalesDetailList.Add(cancelGiftOskuGroup);
- }
-
-
if (insertSkuDailySalesDetailList.Count() > 0)
{
var noSpuSkuIds = insertSkuDailySalesDetailList.Where(s => string.IsNullOrEmpty(s.Spu)).Select(s => s.Sku).Distinct().ToList();
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index f345e429..c6c8ad30 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -192,10 +192,9 @@ namespace BBWY.Server.Business
private void SyncJDOrder(JArray orderTokenJArray, long shopId, string relayAPIHost, string appKey, string appSecret, string appToken, decimal platformCommissionRatio)
{
- //if (shopId == 10388155)
- //{
- // nLogManager.GetLogger("订单同步-布莱特玩具专营店").Info(JsonConvert.SerializeObject(orderTokenJArray));
- //}
+ var validOrders = orderTokenJArray.Where(o => o.Value("orderState") != "NOT_PAY");
+ if (validOrders.Count() == 0)
+ return;
#region 数据库操作
List insertOrderList = new List();
@@ -205,91 +204,14 @@ namespace BBWY.Server.Business
List insertOrderSkuList = new List();
List insertOrderCouponList = new List();
- List insertGiftOrderList = new List();
- List insertGiftOrderSkuList = new List();
- IList> updateGiftOrderList = new List>();
-
IList> updateOrderList = new List>();
IList> updatePurchaseOrderList = new List>();
#endregion
- #region 赠品
- var giftOrderJArray = orderTokenJArray.Where(o => o.Value("orderTotalPrice") == 0M);
- if (giftOrderJArray.Count() > 0)
- {
- var giftOrderIds = giftOrderJArray.Select(orderJToken => orderJToken.Value("orderId")).ToArray();
- var dbGiftOrderList = fsql.Select(giftOrderIds).ToList();
- var dbGiftOrderIds = dbGiftOrderList.Select(go => go.Id).ToList();
-
- var exceptIds = giftOrderIds.Except(dbGiftOrderIds);
- if (exceptIds.Count() > 0)
- {
- var newGiftOrderJArray = giftOrderJArray.Where(o => exceptIds.Contains(o.Value("orderId")));
- foreach (var orderJToken in newGiftOrderJArray)
- {
- var orderState = ConvertOrderState(orderJToken);
- if (orderState == Enums.OrderState.待付款 || orderState == Enums.OrderState.已取消)
- continue;
- var orderStartTime = orderJToken.Value("orderStartTime");
- var modifyTime = orderJToken.Value("modified");
- insertGiftOrderList.Add(new GiftOrder()
- {
- Id = orderJToken.Value("orderId"),
- CreateTime = DateTime.Now,
- Platform = Enums.Platform.京东,
- ShopId = shopId,
- StartTime = orderStartTime,
- ModifyTime = modifyTime,
- OrderState = orderState
- });
-
- var itemInfoList = orderJToken["itemInfoList"] as JArray;
- foreach (var orderSkuJToken in itemInfoList)
- {
- var itemTotal = orderSkuJToken.Value("itemTotal");
- var jdPrice = orderSkuJToken.Value("jdPrice");
- var wareId = orderSkuJToken.Value("wareId");
- var skuId = orderSkuJToken.Value("skuId");
- insertGiftOrderSkuList.Add(new GiftOrderSku()
- {
- Id = idGenerator.NewLong(),
- CreateTime = DateTime.Now,
- GiftOrderId = orderJToken.Value("orderId"),
- ItemTotal = itemTotal,
- Price = jdPrice,
- ProductId = wareId,
- ShopId = shopId,
- SkuId = skuId
- });
- }
- }
- }
-
- var intersectIds = giftOrderIds.Intersect(dbGiftOrderIds);
- if (intersectIds.Count() > 0)
- {
- foreach (var intersercId in intersectIds)
- {
- var orderJToken = giftOrderJArray.FirstOrDefault(o => o.Value("orderId") == intersercId);
- var dbGiftOrder = dbGiftOrderList.FirstOrDefault(o => o.Id == intersercId);
- var orderState = ConvertOrderState(orderJToken);
- if (orderState != null && orderState != dbGiftOrder.OrderState)
- {
- var modifyTime = orderJToken.Value("modified");
- var update = fsql.Update(intersercId).Set(go => go.OrderState, orderState)
- .Set(go => go.ModifyTime, modifyTime);
- updateGiftOrderList.Add(update);
- }
- }
- }
- }
- #endregion
-
- var noGiftOrderList = orderTokenJArray.Where(o => o.Value("orderTotalPrice") != 0M);
- var interfaceOrderIdList = noGiftOrderList.Select(orderJToken => orderJToken.Value("orderId"));
- var interfaceCanceledOrderIdList = noGiftOrderList.Where(orderJToken => orderJToken.Value("orderState").Equals("TRADE_CANCELED"))
- .Select(orderJToken => orderJToken.Value("orderId")); //接口查询结果中取消状态的订单Id
+ var interfaceOrderIdList = validOrders.Select(orderJToken => orderJToken.Value("orderId"));
+ var interfaceCanceledOrderIdList = validOrders.Where(orderJToken => orderJToken.Value("orderState").Equals("TRADE_CANCELED"))
+ .Select(orderJToken => orderJToken.Value("orderId")); //接口查询结果中取消状态的订单Id
var dbOrderList = fsql.Select().Where(o => interfaceOrderIdList.Contains(o.Id)).ToList(o => new Order()
{
@@ -309,7 +231,7 @@ namespace BBWY.Server.Business
}
var orderSkuIds = new List();
- foreach (var orderJToken in noGiftOrderList)
+ foreach (var orderJToken in validOrders)
{
var itemInfoList = orderJToken["itemInfoList"].Where(skuJToken => skuJToken.Value("jdPrice") != 0M);
foreach (var josku in itemInfoList)
@@ -319,13 +241,13 @@ namespace BBWY.Server.Business
orderSkuIds.Add(skuId);
}
}
- var dbPurchaseOrderList = fsql.Select().Where(po => po.RemainingQuantity != 0 && orderSkuIds.Contains(po.SkuId)).ToList(); //数据库采购单
+ var dbPurchaseOrderList = fsql.Select().Where(po => po.ShopId == shopId && po.RemainingQuantity != 0 && orderSkuIds.Contains(po.SkuId)).ToList(); //数据库采购单
orderSkuIds.Clear();
- foreach (var orderJToken in noGiftOrderList)
+ foreach (var orderJToken in validOrders)
{
var orderId = orderJToken.Value("orderId");
- if (insertOrderList.Count(o => o.Id == orderId) > 0)
+ if (insertOrderList.Any(o => o.Id == orderId))
continue;
var dbOrder = dbOrderList.FirstOrDefault(o => o.Id == orderId);
var isNewOrder = dbOrder == null;
@@ -358,7 +280,8 @@ namespace BBWY.Server.Business
//VenderId = orderJToken.Value("venderId"),
WaybillNo = waybillNo,
StoreOrder = orderJToken.Value("storeOrder") ?? string.Empty,
- StoreId = orderJToken.Value("storeId")
+ StoreId = orderJToken.Value("storeId"),
+ IsGift = orderJToken.Value("orderTotalPrice") == 0M || orderJToken.Value("orderSellerPrice") == 0M
};
if (memoryCache.TryGetValue(orderId, out sDCalculationCostRequest))
@@ -620,6 +543,7 @@ namespace BBWY.Server.Business
if (isNewOrder)
{
dbOrder.OrderState = orderState;
+ //dbOrder.IsGift =
}
else if ((orderState != null && orderState != dbOrder.OrderState) ||
buyerRemark != dbOrder.BuyerRemark ||
@@ -684,8 +608,6 @@ namespace BBWY.Server.Business
}
#endregion
-
-
fsql.Transaction(() =>
{
if (insertOrderList.Count() > 0)
@@ -701,11 +623,6 @@ namespace BBWY.Server.Business
if (insertOrderCouponList.Count() > 0)
fsql.Insert(insertOrderCouponList).ExecuteAffrows();
- if (insertGiftOrderList.Count() > 0)
- fsql.Insert(insertGiftOrderList).ExecuteAffrows();
- if (insertGiftOrderSkuList.Count() > 0)
- fsql.Insert(insertGiftOrderSkuList).ExecuteAffrows();
-
if (updatePurchaseOrderList.Count() > 0)
{
foreach (var update in updatePurchaseOrderList)
@@ -717,13 +634,6 @@ namespace BBWY.Server.Business
foreach (var update in updateOrderList)
update.ExecuteAffrows();
}
-
- if (updateGiftOrderList.Count() > 0)
- {
- foreach (var update in updateGiftOrderList)
- update.ExecuteAffrows();
- }
-
});
}
@@ -838,7 +748,7 @@ namespace BBWY.Server.Business
#region 同步暂停订单
public void CheckJDPauseOrder(long? shopId)
{
- var shopList = venderBusiness.GetShopList(shopId);
+ var shopList = venderBusiness.GetShopList(shopId, platform: Enums.Platform.京东);
var shopIds = shopList.Select(s => long.Parse(s.ShopId)).ToList();
var deleteRow = fsql.Select().Where(wo => shopIds.Contains(wo.ShopId.Value))
@@ -869,6 +779,11 @@ namespace BBWY.Server.Business
}
}
+ public void DeleteTimeOutWaitPayOrder()
+ {
+ var deleteTime = DateTime.Now.AddHours(-24);
+ fsql.Delete().Where(w => w.CreateTime <= deleteTime).ExecuteAffrows();
+ }
#endregion
}
}
diff --git a/BBWY.Server.Model/Db/Order/GiftOrder.cs b/BBWY.Server.Model/Db/Order/GiftOrder.cs
deleted file mode 100644
index e10ad540..00000000
--- a/BBWY.Server.Model/Db/Order/GiftOrder.cs
+++ /dev/null
@@ -1,34 +0,0 @@
-using FreeSql.DataAnnotations;
-using System;
-
-namespace BBWY.Server.Model.Db
-{
-
- [Table(Name = "giftorder", DisableSyncStructure = true)]
- public partial class GiftOrder
- {
-
- [Column(StringLength = 50, IsPrimary = true, IsNullable = false)]
- public string Id { get; set; }
-
- [Column(DbType = "datetime")]
- public DateTime? CreateTime { get; set; }
-
- [Column(DbType = "datetime")]
- public DateTime? ModifyTime { get; set; }
-
- [Column(MapType = typeof(int?))]
- public Enums.OrderState? OrderState { get; set; }
-
- [Column(MapType = typeof(int))]
- public Enums.Platform Platform { get; set; }
-
-
- public long ShopId { get; set; }
-
- [Column(DbType = "datetime")]
- public DateTime? StartTime { get; set; }
-
- }
-
-}
diff --git a/BBWY.Server.Model/Db/Order/GiftOrderSku.cs b/BBWY.Server.Model/Db/Order/GiftOrderSku.cs
deleted file mode 100644
index 461039b3..00000000
--- a/BBWY.Server.Model/Db/Order/GiftOrderSku.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using FreeSql.DataAnnotations;
-using System;
-
-namespace BBWY.Server.Model.Db
-{
-
- [Table(Name = "giftordersku", DisableSyncStructure = true)]
- public partial class GiftOrderSku {
-
- [Column(DbType = "datetime")]
- public DateTime? CreateTime { get; set; }
-
- [Column(StringLength = 50)]
- public string GiftOrderId { get; set; }
-
-
- public long? Id { get; set; }
-
-
- public int? ItemTotal { get; set; }
-
- [Column(DbType = "decimal(18,2)")]
- public decimal? Price { get; set; }
-
- [Column(StringLength = 50)]
- public string ProductId { get; set; }
-
-
- public long? ShopId { get; set; }
-
- [Column(StringLength = 50)]
- public string SkuId { get; set; }
-
- }
-
-}
diff --git a/JD.API/Controllers/PlatformSDKController.cs b/JD.API/Controllers/PlatformSDKController.cs
index 3e49f5f9..5436dbba 100644
--- a/JD.API/Controllers/PlatformSDKController.cs
+++ b/JD.API/Controllers/PlatformSDKController.cs
@@ -16,7 +16,7 @@ namespace JD.API.API.Controllers
[Produces("application/json")]
[Route("Api/[Controller]/[Action]")]
[ApiController]
- [ServiceFilter(typeof(YunDingFilter))]
+ //[ServiceFilter(typeof(YunDingFilter))]
public class PlatformSDKController : ControllerBase
{
private IEnumerable platformSDKBusinessList;
From b55741f50cb8da3685e5d01363bf8e44ae686e1d Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Mon, 3 Apr 2023 14:28:57 +0800
Subject: [PATCH 09/16] =?UTF-8?q?=E5=B8=83=E8=8E=B1=E7=89=B9=E5=8D=95?=
=?UTF-8?q?=E7=8B=AC=E7=9A=84=E6=97=A5=E5=BF=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Sync/OrderSyncBusiness.cs | 45 +++++++++++++++----
1 file changed, 36 insertions(+), 9 deletions(-)
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index c6c8ad30..6f8e37e5 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -125,6 +125,16 @@ namespace BBWY.Server.Business
if (orderListResponse.Data == null || orderListResponse.Data.Count == 0)
return;
+
+ if (shopId == 10388155)
+ {
+ try
+ {
+ nLogManager.GetLogger($"订单同步-{shop.ShopName}").Info(orderListApiResult.Content);
+ }
+ catch { }
+ }
+
syncOrderMethodDic[shop.PlatformId](orderListResponse.Data, shopId, relayAPIHost, shop.AppKey, shop.AppSecret, shop.AppToken, shop.PlatformCommissionRatio ?? 0.05M);
}
catch (Exception ex)
@@ -259,6 +269,12 @@ namespace BBWY.Server.Business
var modifyTime = orderJToken.Value("modified");
var endTime = orderJToken.Value("orderEndTime");
var waybillNo = orderJToken.Value("waybill");
+ var freightPrice = orderJToken.Value("freightPrice");
+ var orderPayment = orderJToken.Value("orderPayment");
+ var sellerPreferentialAmount = orderJToken.Value("sellerDiscount");
+ var orderSellerPrice = orderJToken.Value("orderSellerPrice");
+ var orderTotalPrice = orderJToken.Value("orderTotalPrice");
+
if (dbOrder == null)
{
dbOrder = new Order()
@@ -266,14 +282,14 @@ namespace BBWY.Server.Business
Id = orderId,
BuyerRemark = buyerRemark,
VenderRemark = venderRemark,
- FreightPrice = orderJToken.Value("freightPrice"),
+ FreightPrice = freightPrice,
EndTime = endTime,
StartTime = orderJToken.Value("orderStartTime"),
ModifyTime = modifyTime,
- OrderPayment = orderJToken.Value("orderPayment"),
- SellerPreferentialAmount = orderJToken.Value("sellerDiscount"),
- OrderSellerPrice = orderJToken.Value("orderSellerPrice"),
- OrderTotalPrice = orderJToken.Value("orderTotalPrice"),
+ OrderPayment = orderPayment,
+ SellerPreferentialAmount = sellerPreferentialAmount,
+ OrderSellerPrice = orderSellerPrice,
+ OrderTotalPrice = orderTotalPrice,
OrderType = (Enums.OrderType)orderJToken.Value("orderType"),
Platform = Enums.Platform.京东,
ShopId = shopId,
@@ -281,7 +297,7 @@ namespace BBWY.Server.Business
WaybillNo = waybillNo,
StoreOrder = orderJToken.Value("storeOrder") ?? string.Empty,
StoreId = orderJToken.Value("storeId"),
- IsGift = orderJToken.Value("orderTotalPrice") == 0M || orderJToken.Value("orderSellerPrice") == 0M
+ IsGift = orderTotalPrice == 0M || orderSellerPrice == 0M
};
if (memoryCache.TryGetValue(orderId, out sDCalculationCostRequest))
@@ -415,7 +431,7 @@ namespace BBWY.Server.Business
orderState != Enums.OrderState.已取消)
{
var orderCost = dbOrderCostList.FirstOrDefault(oc => oc.OrderId == dbOrder.Id);
- if (orderCost == null)
+ if (orderCost == null && orderTotalPrice > 0M)
{
if (isNewOrder && dbOrder.StorageType == Enums.StorageType.SD && sDCalculationCostRequest != null)
{
@@ -550,14 +566,25 @@ namespace BBWY.Server.Business
venderRemark != dbOrder.VenderRemark ||
modifyTime != dbOrder.ModifyTime ||
endTime != dbOrder.EndTime ||
- waybillNo != dbOrder.WaybillNo)
+ waybillNo != dbOrder.WaybillNo ||
+ freightPrice != dbOrder.FreightPrice ||
+ orderPayment != dbOrder.OrderPayment ||
+ sellerPreferentialAmount != dbOrder.SellerPreferentialAmount ||
+ orderSellerPrice != dbOrder.OrderSellerPrice ||
+ orderTotalPrice != dbOrder.OrderTotalPrice)
{
var updateSql = fsql.Update(orderId).SetIf(orderState != null && orderState != dbOrder.OrderState, o => o.OrderState, orderState)
.SetIf(buyerRemark != dbOrder.BuyerRemark, o => o.BuyerRemark, buyerRemark)
.SetIf(venderRemark != dbOrder.VenderRemark, o => o.VenderRemark, venderRemark)
.SetIf(modifyTime != dbOrder.ModifyTime, o => o.ModifyTime, modifyTime)
.SetIf(endTime != dbOrder.EndTime, o => o.EndTime, modifyTime)
- .SetIf(waybillNo != dbOrder.WaybillNo, o => o.WaybillNo, waybillNo);
+ .SetIf(waybillNo != dbOrder.WaybillNo, o => o.WaybillNo, waybillNo)
+ .SetIf(freightPrice != dbOrder.FreightPrice, o => o.FreightPrice, freightPrice)
+ .SetIf(orderPayment != dbOrder.OrderPayment, o => o.OrderPayment, orderPayment)
+ .SetIf(sellerPreferentialAmount != dbOrder.SellerPreferentialAmount, o => o.SellerPreferentialAmount, sellerPreferentialAmount)
+ .SetIf(orderSellerPrice != dbOrder.OrderSellerPrice, o => o.OrderSellerPrice, orderSellerPrice)
+ .SetIf(orderTotalPrice != dbOrder.OrderTotalPrice, o => o.OrderTotalPrice, orderTotalPrice)
+ .SetIf(orderTotalPrice != dbOrder.OrderTotalPrice && orderTotalPrice > 0M, o => o.IsGift, false);
updateOrderList.Add(updateSql);
}
#endregion
From 08b3c48cd623214ca544a3c861d701e1ed185ebf Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Mon, 3 Apr 2023 16:38:03 +0800
Subject: [PATCH 10/16] =?UTF-8?q?=E8=BF=87=E6=BB=A4=E4=B8=8D=E8=AE=A4?=
=?UTF-8?q?=E8=AF=86=E7=9A=84=E7=8A=B6=E6=80=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/Sync/OrderSyncBusiness.cs | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 6f8e37e5..6e7cad25 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -28,6 +28,8 @@ namespace BBWY.Server.Business
private IMemoryCache memoryCache;
+ private IList validOrderState;
+
public OrderSyncBusiness(RestApiService restApiService,
IOptions options,
@@ -51,6 +53,10 @@ namespace BBWY.Server.Business
{
{ Enums.Platform.京东, SyncJDOrder }
};
+ this.validOrderState = new List()
+ {
+ "WAIT_SELLER_STOCK_OUT","WAIT_GOODS_RECEIVE_CONFIRM","FINISHED_L","LOCKED","TRADE_CANCELED","POP_ORDER_PAUSE","PAUSE"
+ };
}
///
/// 手动同步订单
@@ -202,7 +208,7 @@ namespace BBWY.Server.Business
private void SyncJDOrder(JArray orderTokenJArray, long shopId, string relayAPIHost, string appKey, string appSecret, string appToken, decimal platformCommissionRatio)
{
- var validOrders = orderTokenJArray.Where(o => o.Value("orderState") != "NOT_PAY");
+ var validOrders = orderTokenJArray.Where(o => validOrderState.Contains(o.Value("orderState")));
if (validOrders.Count() == 0)
return;
From 4af0c8934497837da21c7284f7d9f58fa7b6de86 Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Mon, 3 Apr 2023 17:21:12 +0800
Subject: [PATCH 11/16] =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=88=A0=E9=99=A4?=
=?UTF-8?q?=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Controllers/OrderSyncController.cs | 11 +++++++++++
BBWY.Server.Business/Sync/OrderSyncBusiness.cs | 15 +++++++++++++++
2 files changed, 26 insertions(+)
diff --git a/BBWY.Server.API/Controllers/OrderSyncController.cs b/BBWY.Server.API/Controllers/OrderSyncController.cs
index 3655d8a3..9598fd0f 100644
--- a/BBWY.Server.API/Controllers/OrderSyncController.cs
+++ b/BBWY.Server.API/Controllers/OrderSyncController.cs
@@ -47,6 +47,16 @@ namespace BBWY.Server.API.Controllers
orderSyncBusiness.ManualSyncOrder(shopId, orderIds, null, null);
}
+ ///
+ /// 订单批量删除
+ ///
+ ///
+ ///
+ [HttpPost("{shopId}")]
+ public void OrderDelete([FromRoute]long shopId, [FromBody]IList orderIds)
+ {
+ orderSyncBusiness.OrderDelete(shopId, orderIds);
+ }
///
/// 根据日期同步
@@ -94,5 +104,6 @@ namespace BBWY.Server.API.Controllers
{
orderSyncBusiness.DeleteTimeOutWaitPayOrder();
}
+
}
}
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 6e7cad25..1a15c5c5 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -16,6 +16,7 @@ using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
+using System.Security.Cryptography;
using System.Threading;
using System.Threading.Tasks;
using Yitter.IdGenerator;
@@ -752,6 +753,20 @@ namespace BBWY.Server.Business
return orderState;
}
+ public void OrderDelete(long ShopId, IList orderIds)
+ {
+ fsql.Transaction(() =>
+ {
+ fsql.Delete().Where(o => o.ShopId == ShopId && orderIds.Contains(o.Id)).ExecuteAffrows();
+ fsql.Delete().Where(osku => orderIds.Contains(osku.OrderId)).ExecuteAffrows();
+ fsql.Delete().Where(ocd => orderIds.Contains(ocd.OrderId)).ExecuteAffrows();
+ fsql.Delete().Where(oc => orderIds.Contains(oc.OrderId)).ExecuteAffrows();
+ fsql.Delete().Where(ods => orderIds.Contains(ods.OrderId)).ExecuteAffrows();
+ fsql.Delete().Where(ocs => orderIds.Contains(ocs.OrderId)).ExecuteAffrows();
+ fsql.Delete().Where(oc => orderIds.Contains(oc.OrderId)).ExecuteAffrows();
+ });
+ }
+
///
/// 接收订单推送
///
From 92d2701a7c5635a10206f3bcdabb911e319fa25b Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Mon, 3 Apr 2023 19:54:22 +0800
Subject: [PATCH 12/16] =?UTF-8?q?=E4=BA=AC=E4=BA=91=E4=BB=93=E6=A0=87?=
=?UTF-8?q?=E8=AE=B0=E6=81=A2=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Sync/OrderSyncBusiness.cs | 27 ++++++++++++-------
1 file changed, 18 insertions(+), 9 deletions(-)
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 1a15c5c5..88ebb880 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -281,7 +281,7 @@ namespace BBWY.Server.Business
var sellerPreferentialAmount = orderJToken.Value("sellerDiscount");
var orderSellerPrice = orderJToken.Value("orderSellerPrice");
var orderTotalPrice = orderJToken.Value("orderTotalPrice");
-
+ var storeOrder = orderJToken.Value("storeOrder") ?? string.Empty;
if (dbOrder == null)
{
dbOrder = new Order()
@@ -302,7 +302,7 @@ namespace BBWY.Server.Business
ShopId = shopId,
//VenderId = orderJToken.Value("venderId"),
WaybillNo = waybillNo,
- StoreOrder = orderJToken.Value("storeOrder") ?? string.Empty,
+ StoreOrder = storeOrder,
StoreId = orderJToken.Value("storeId"),
IsGift = orderTotalPrice == 0M || orderSellerPrice == 0M
};
@@ -320,10 +320,7 @@ namespace BBWY.Server.Business
dbOrder.SDPayChannel = sDCalculationCostRequest.SDPayChannel;
}
- if (dbOrder.StoreOrder.Contains("京仓"))
- dbOrder.StorageType = Enums.StorageType.京仓;
- else if (dbOrder.StoreOrder.Contains("云仓"))
- dbOrder.StorageType = Enums.StorageType.云仓;
+ dbOrder.StorageType = ConvertStoreOrder(storeOrder);
var payType = orderJToken.Value("payType");
if (payType.Contains("-"))
@@ -566,7 +563,6 @@ namespace BBWY.Server.Business
if (isNewOrder)
{
dbOrder.OrderState = orderState;
- //dbOrder.IsGift =
}
else if ((orderState != null && orderState != dbOrder.OrderState) ||
buyerRemark != dbOrder.BuyerRemark ||
@@ -578,7 +574,8 @@ namespace BBWY.Server.Business
orderPayment != dbOrder.OrderPayment ||
sellerPreferentialAmount != dbOrder.SellerPreferentialAmount ||
orderSellerPrice != dbOrder.OrderSellerPrice ||
- orderTotalPrice != dbOrder.OrderTotalPrice)
+ orderTotalPrice != dbOrder.OrderTotalPrice ||
+ storeOrder != dbOrder.StoreOrder)
{
var updateSql = fsql.Update(orderId).SetIf(orderState != null && orderState != dbOrder.OrderState, o => o.OrderState, orderState)
.SetIf(buyerRemark != dbOrder.BuyerRemark, o => o.BuyerRemark, buyerRemark)
@@ -591,7 +588,8 @@ namespace BBWY.Server.Business
.SetIf(sellerPreferentialAmount != dbOrder.SellerPreferentialAmount, o => o.SellerPreferentialAmount, sellerPreferentialAmount)
.SetIf(orderSellerPrice != dbOrder.OrderSellerPrice, o => o.OrderSellerPrice, orderSellerPrice)
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice, o => o.OrderTotalPrice, orderTotalPrice)
- .SetIf(orderTotalPrice != dbOrder.OrderTotalPrice && orderTotalPrice > 0M, o => o.IsGift, false);
+ .SetIf(orderTotalPrice != dbOrder.OrderTotalPrice && orderTotalPrice > 0M, o => o.IsGift, false)
+ .SetIf(storeOrder != dbOrder.StoreOrder && dbOrder.StorageType == null, o => o.StorageType, ConvertStoreOrder(storeOrder));
updateOrderList.Add(updateSql);
}
#endregion
@@ -671,6 +669,17 @@ namespace BBWY.Server.Business
});
}
+ private Enums.StorageType? ConvertStoreOrder(string storeOrder)
+ {
+ if (string.IsNullOrEmpty(storeOrder))
+ return null;
+ if (storeOrder.Contains("京仓"))
+ return Enums.StorageType.京仓;
+ else if (storeOrder.Contains("云仓"))
+ return Enums.StorageType.云仓;
+ return null;
+ }
+
///
/// 同步所有店铺的订单
///
From 2373c8836ff08c9978d77bf559521763e3c6691a Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Tue, 4 Apr 2023 00:59:45 +0800
Subject: [PATCH 13/16] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=90=8C=E6=AD=A5?=
=?UTF-8?q?=E7=BB=86=E8=8A=82=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/Sync/OrderSyncBusiness.cs | 16 ++++++++++++++--
BBWY.Test/Program.cs | 12 +++++++++++-
2 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 88ebb880..0af8121b 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -230,11 +230,23 @@ namespace BBWY.Server.Business
var interfaceCanceledOrderIdList = validOrders.Where(orderJToken => orderJToken.Value("orderState").Equals("TRADE_CANCELED"))
.Select(orderJToken => orderJToken.Value("orderId")); //接口查询结果中取消状态的订单Id
- var dbOrderList = fsql.Select().Where(o => interfaceOrderIdList.Contains(o.Id)).ToList(o => new Order()
+
+ var dbOrderList = fsql.Select().Where(o => interfaceOrderIdList.Contains(o.Id)).ToList(o => new Order
{
Id = o.Id,
OrderState = o.OrderState,
- StorageType = o.StorageType
+ StorageType = o.StorageType,
+ BuyerRemark = o.BuyerRemark,
+ VenderRemark = o.VenderRemark,
+ ModifyTime = o.ModifyTime,
+ EndTime = o.EndTime,
+ WaybillNo = o.WaybillNo,
+ FreightPrice = o.FreightPrice,
+ OrderPayment = o.OrderPayment,
+ SellerPreferentialAmount = o.SellerPreferentialAmount,
+ OrderSellerPrice = o.OrderSellerPrice,
+ OrderTotalPrice = o.OrderTotalPrice,
+ StoreOrder = o.StoreOrder
}); //数据库订单
var dbOrderConsigneeList = fsql.Select().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单收货信息
var dbOrderCostList = fsql.Select().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单成本信息
diff --git a/BBWY.Test/Program.cs b/BBWY.Test/Program.cs
index fcb6c24b..f111c6f1 100644
--- a/BBWY.Test/Program.cs
+++ b/BBWY.Test/Program.cs
@@ -1,4 +1,5 @@
using Jd.Api;
+using Jd.Api.Request;
using System;
using System.Linq;
using System.Security.Cryptography;
@@ -31,13 +32,14 @@ namespace BBWY.Test
var appSecret = "8a42bc2301e8439b896e99f5475e0a9b";
////0e61c4a8ec3e4df4b5836e10884db9220yth 齐盛
- var token = "2ace3023200c4ea9aa682bbf8bffee18jztm"; //布莱特玩具
+ //var token = "2ace3023200c4ea9aa682bbf8bffee18jztm"; //布莱特玩具
//var token = "01f5be2cb4d741dda66bce2356941597mdfm"; //布莱特玩具 token2
//var token = "01dc6f6e7fc34dcd99090d690312556cmdfk"; //齐盛
//var token = "9fffa982da23446fb035499ae5622f49odjk"; //腾奇
//var token = "c22ff4d37b6c4bbd82cd9e8d0dab42dbziyz"; //森王车品
//var token = "44c19a1c1fbd4641957e6e8985ed1358jmtl"; //森王玩具
//var token = "4a0ddc095e054c7aa90adcaccb14f83cwzgr"; //可比车品
+ var token = "50a4c0f5c55848b5a8a715709e8d6fe0jntb"; //卿卿玩具专营店
//var dt1 = DateTime.Now;
//List list = new List();
@@ -53,7 +55,15 @@ namespace BBWY.Test
var jdClient = GetJdClient(appkey, appSecret);
+ var req = new AscFreightViewRequest();
+ req.buId = "11926867";
+ req.operatePin = "开发测试";
+ req.operateNick = "开发测试";
+ req.serviceId = 1701316861;
+ req.orderId = 264691201058;
+
+ var res = jdClient.Execute(req,token, DateTime.Now.ToLocalTime());
Console.ReadKey();
}
From 0bd90a73e2f146db0bc5383e84aef6c8d980b6f4 Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Tue, 4 Apr 2023 12:31:42 +0800
Subject: [PATCH 14/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9StorageType=E8=AF=86?=
=?UTF-8?q?=E5=88=AB=E8=A7=84=E5=88=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/Sync/OrderSyncBusiness.cs | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 0af8121b..ce214008 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -294,6 +294,7 @@ namespace BBWY.Server.Business
var orderSellerPrice = orderJToken.Value("orderSellerPrice");
var orderTotalPrice = orderJToken.Value("orderTotalPrice");
var storeOrder = orderJToken.Value("storeOrder") ?? string.Empty;
+ var storageType = ConvertStoreOrder(storeOrder);
if (dbOrder == null)
{
dbOrder = new Order()
@@ -316,7 +317,8 @@ namespace BBWY.Server.Business
WaybillNo = waybillNo,
StoreOrder = storeOrder,
StoreId = orderJToken.Value("storeId"),
- IsGift = orderTotalPrice == 0M || orderSellerPrice == 0M
+ IsGift = orderTotalPrice == 0M || orderSellerPrice == 0M,
+ StorageType = storageType
};
if (memoryCache.TryGetValue(orderId, out sDCalculationCostRequest))
@@ -332,8 +334,6 @@ namespace BBWY.Server.Business
dbOrder.SDPayChannel = sDCalculationCostRequest.SDPayChannel;
}
- dbOrder.StorageType = ConvertStoreOrder(storeOrder);
-
var payType = orderJToken.Value("payType");
if (payType.Contains("-"))
dbOrder.PayType = (Enums.PayType)Convert.ToInt32(payType.Substring(0, 1));
@@ -370,6 +370,11 @@ namespace BBWY.Server.Business
}
#endregion
}
+ else
+ {
+ if (storageType != null && dbOrder.StorageType != storageType)
+ dbOrder.StorageType = storageType;
+ }
#endregion
#region 收货人信息
@@ -601,7 +606,8 @@ namespace BBWY.Server.Business
.SetIf(orderSellerPrice != dbOrder.OrderSellerPrice, o => o.OrderSellerPrice, orderSellerPrice)
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice, o => o.OrderTotalPrice, orderTotalPrice)
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice && orderTotalPrice > 0M, o => o.IsGift, false)
- .SetIf(storeOrder != dbOrder.StoreOrder && dbOrder.StorageType == null, o => o.StorageType, ConvertStoreOrder(storeOrder));
+ .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StoreOrder, storeOrder)
+ .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StorageType, ConvertStoreOrder(storeOrder));
updateOrderList.Add(updateSql);
}
#endregion
From 4aeefeda8a154482a41efd7e734ffb313ee78d1b Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Tue, 4 Apr 2023 12:33:53 +0800
Subject: [PATCH 15/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8C=E6=AD=A5?=
=?UTF-8?q?=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWY.Server.Business/Sync/OrderSyncBusiness.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index ce214008..87fac13c 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -607,7 +607,7 @@ namespace BBWY.Server.Business
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice, o => o.OrderTotalPrice, orderTotalPrice)
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice && orderTotalPrice > 0M, o => o.IsGift, false)
.SetIf(storeOrder != dbOrder.StoreOrder, o => o.StoreOrder, storeOrder)
- .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StorageType, ConvertStoreOrder(storeOrder));
+ .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StorageType, storageType);
updateOrderList.Add(updateSql);
}
#endregion
From 039a451651010bac3191f4640e2ff326a7a17474 Mon Sep 17 00:00:00 2001
From: shanji <18996038927@163.com>
Date: Tue, 4 Apr 2023 15:17:15 +0800
Subject: [PATCH 16/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E5=90=8C=E6=AD=A5=20=E4=BB=93=E5=BA=93Id=E6=9B=B4=E6=94=B9?=
=?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E4=BF=AE=E5=A4=8D=E4=BA=AC=E4=BA=91?=
=?UTF-8?q?=E4=BB=93=E8=B4=9F=E5=88=A9=E6=B6=A6=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Extensions/OrderCostExtension.cs | 19 +++++++++++
.../Sync/OrderSyncBusiness.cs | 33 +++++++++++--------
2 files changed, 39 insertions(+), 13 deletions(-)
diff --git a/BBWY.Server.Business/Extensions/OrderCostExtension.cs b/BBWY.Server.Business/Extensions/OrderCostExtension.cs
index c980374f..2111990c 100644
--- a/BBWY.Server.Business/Extensions/OrderCostExtension.cs
+++ b/BBWY.Server.Business/Extensions/OrderCostExtension.cs
@@ -25,6 +25,25 @@ namespace BBWY.Server.Business.Extensions
orderCost.RefundPurchaseAmount;
}
+ public static void CalculationOrderProfitAndCost(this OrderCost orderCost, decimal orderSellerPrice,decimal freightPrice, IList afterSaleOrders)
+ {
+ orderCost.AfterTotalCost = afterSaleOrders == null || afterSaleOrders.Count == 0 ? 0M : afterSaleOrders.Sum(aso => aso.AfterTotalCost);
+ orderCost.RefundAmount = afterSaleOrders == null || afterSaleOrders.Count == 0 ? 0M : afterSaleOrders.Sum(aso => aso.RefundAmount ?? 0M);
+ orderCost.RefundPurchaseAmount = afterSaleOrders == null || afterSaleOrders.Count == 0M ? 0M : afterSaleOrders.Sum(aso => aso.RefundPurchaseAmount ?? 0);
+
+ //退款之后平台扣点
+ orderCost.PlatformCommissionAmount = (orderSellerPrice - orderCost.RefundAmount) * (orderCost.PlatformCommissionRatio);
+
+ orderCost.Profit = orderSellerPrice + freightPrice - orderCost.RefundAmount -
+ orderCost.PurchaseAmount -
+ orderCost.DeliveryExpressFreight -
+ orderCost.PlatformCommissionAmount -
+ orderCost.AfterTotalCost +
+ orderCost.RefundPurchaseAmount;
+ }
+
+
+
public static void CalculationSDOrderProfitAndCost(this OrderCost orderCost, Order order, IList afterSaleOrders)
{
orderCost.AfterTotalCost = afterSaleOrders == null || afterSaleOrders.Count == 0 ? 0M : afterSaleOrders.Sum(aso => aso.AfterTotalCost);
diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
index 87fac13c..4655069d 100644
--- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs
@@ -246,7 +246,9 @@ namespace BBWY.Server.Business
SellerPreferentialAmount = o.SellerPreferentialAmount,
OrderSellerPrice = o.OrderSellerPrice,
OrderTotalPrice = o.OrderTotalPrice,
- StoreOrder = o.StoreOrder
+ StoreOrder = o.StoreOrder,
+ PreferentialAmount = o.PreferentialAmount,
+ StoreId = o.StoreId
}); //数据库订单
var dbOrderConsigneeList = fsql.Select().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单收货信息
var dbOrderCostList = fsql.Select().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单成本信息
@@ -294,7 +296,9 @@ namespace BBWY.Server.Business
var orderSellerPrice = orderJToken.Value("orderSellerPrice");
var orderTotalPrice = orderJToken.Value("orderTotalPrice");
var storeOrder = orderJToken.Value("storeOrder") ?? string.Empty;
+ var storeId = orderJToken.Value("storeId");
var storageType = ConvertStoreOrder(storeOrder);
+ var preferentialAmount = 0M;
if (dbOrder == null)
{
dbOrder = new Order()
@@ -316,7 +320,7 @@ namespace BBWY.Server.Business
//VenderId = orderJToken.Value("venderId"),
WaybillNo = waybillNo,
StoreOrder = storeOrder,
- StoreId = orderJToken.Value("storeId"),
+ StoreId = storeId,
IsGift = orderTotalPrice == 0M || orderSellerPrice == 0M,
StorageType = storageType
};
@@ -405,7 +409,8 @@ namespace BBWY.Server.Business
var couponType = orderCouponJToken.Value("couponType");
if (string.IsNullOrEmpty(couponType))
continue;
- dbOrder.PreferentialAmount += orderCouponJToken.Value("couponPrice");
+ //dbOrder.PreferentialAmount += orderCouponJToken.Value("couponPrice");
+ preferentialAmount += orderCouponJToken.Value("couponPrice");
insertOrderCouponList.Add(new OrderCoupon()
{
Id = idGenerator.NewLong(),
@@ -555,19 +560,17 @@ namespace BBWY.Server.Business
{
OrderId = orderId,
PlatformCommissionRatio = platformCommissionRatio,
- PreferentialAmount = dbOrder.PreferentialAmount,
+ PreferentialAmount = preferentialAmount,
Profit = 0,
PurchaseAmount = orderCostPurchaseAmount,
DeliveryExpressFreight = orderDeliveryExpressFreight,
CreateTime = DateTime.Now
};
- orderCost.CalculationOrderProfitAndCost(dbOrder, null);
- //orderCost.PlatformCommissionAmount = dbOrder.OrderSellerPrice * orderCost.PlatformCommissionRatio;
- //orderCost.Profit = dbOrder.OrderSellerPrice +
- // dbOrder.FreightPrice -
- // orderCost.PurchaseAmount -
- // orderCost.DeliveryExpressFreight -
- // orderCost.PlatformCommissionAmount;
+ if (dbOrder.OrderTotalPrice != 0)
+ orderCost.CalculationOrderProfitAndCost(dbOrder, null);
+ else
+ orderCost.CalculationOrderProfitAndCost(orderSellerPrice, freightPrice, null);
+
insertOrderCostList.Add(orderCost);
#endregion
}
@@ -592,7 +595,9 @@ namespace BBWY.Server.Business
sellerPreferentialAmount != dbOrder.SellerPreferentialAmount ||
orderSellerPrice != dbOrder.OrderSellerPrice ||
orderTotalPrice != dbOrder.OrderTotalPrice ||
- storeOrder != dbOrder.StoreOrder)
+ storeOrder != dbOrder.StoreOrder ||
+ preferentialAmount != dbOrder.PreferentialAmount ||
+ storeId != dbOrder.StoreId)
{
var updateSql = fsql.Update(orderId).SetIf(orderState != null && orderState != dbOrder.OrderState, o => o.OrderState, orderState)
.SetIf(buyerRemark != dbOrder.BuyerRemark, o => o.BuyerRemark, buyerRemark)
@@ -607,7 +612,9 @@ namespace BBWY.Server.Business
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice, o => o.OrderTotalPrice, orderTotalPrice)
.SetIf(orderTotalPrice != dbOrder.OrderTotalPrice && orderTotalPrice > 0M, o => o.IsGift, false)
.SetIf(storeOrder != dbOrder.StoreOrder, o => o.StoreOrder, storeOrder)
- .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StorageType, storageType);
+ .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StorageType, storageType)
+ .SetIf(preferentialAmount != dbOrder.PreferentialAmount, o => o.PreferentialAmount, preferentialAmount)
+ .SetIf(storeId != dbOrder.StoreId, o => o.StoreId, storeId);
updateOrderList.Add(updateSql);
}
#endregion