From 2d257fa1c8d7667472b450645b5f17581b776bed Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 10 Apr 2024 11:04:34 +0800
Subject: [PATCH 1/5] =?UTF-8?q?=E5=B8=A6=E8=AE=AE=E4=BB=B7=E4=BB=BB?=
=?UTF-8?q?=E5=8A=A1=E6=94=B916h?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs | 2 +-
BBWYB.Server.Business/Sync/OrderSyncBusiness.cs | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
index bc06aef..123e358 100644
--- a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
+++ b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
@@ -311,7 +311,7 @@ namespace BBWYB.Server.Business
Id = idGenerator.NewLong(),
CreateTme = DateTime.Now,
//ExpirationTime = DateTime.Now.AddDays(isFirst ? 2 : 1),
- ExpirationTime = timeLimitRules.CalculateExpirationTime(Enums.TimeLimitTaskType.待议价任务, DateTime.Now),
+ ExpirationTime = timeLimitRules.CalculateExpirationTime(Enums.TimeLimitTaskType.待议价任务, DateTime.Now.AddDays(1)),
//OrderId = o.OrderId,
//OrderSn = o.OrderSn,
ShopId = shopId,
diff --git a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
index 3ba7300..a8dbeb6 100644
--- a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
@@ -618,7 +618,7 @@ namespace BBWYB.Server.Business.Sync
Id = idGenerator.NewLong(),
CreateTme = DateTime.Now,
//ExpirationTime = DateTime.Now.AddDays(isFirst ? 2 : 1),
- ExpirationTime = timeLimitRules.CalculateExpirationTime(Enums.TimeLimitTaskType.待议价任务, DateTime.Now),
+ ExpirationTime = timeLimitRules.CalculateExpirationTime(Enums.TimeLimitTaskType.待议价任务, DateTime.Now.AddDays(1)),
//OrderId = o.OrderId,
//OrderSn = o.OrderSn,
ShopId = shopId,
From 04bf8325efab6f5a266188630e014451e427ce99 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 10 Apr 2024 18:59:21 +0800
Subject: [PATCH 2/5] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=87=87=E8=B4=AD?=
=?UTF-8?q?=E6=96=B9=E6=A1=88SKU=E6=9C=80=E8=BF=91=E9=87=87=E8=B4=AD?=
=?UTF-8?q?=E6=88=90=E6=9C=AC=EF=BC=8C=E5=A2=9E=E5=8A=A0TaskTime?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Controllers/SkuOptimizationController.cs | 10 ++++
.../AggregionPurchaseSchemeBusiness.cs | 53 ++++++++++++++-----
.../SkuOptimization/OptimizationBusiness.cs | 23 ++++++--
.../Sync/OrderSyncBusiness.cs | 1 +
.../Db/SpuOptimization/Spuoptimizationtask.cs | 6 +++
.../SkuOptimizationTaskResponse.cs | 5 ++
6 files changed, 80 insertions(+), 18 deletions(-)
diff --git a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs
index f99350f..d890db3 100644
--- a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs
+++ b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs
@@ -80,5 +80,15 @@ namespace BBWYB.Server.API.Controllers
{
return optimizationBusiness.GetNoCompletedSpuOptimizationTaskCount(GetUserId());
}
+
+ ///
+ /// 获取未完成且超时任务数量
+ ///
+ ///
+ [HttpGet]
+ public long GetNoCompletedAndTimeOutSpuOptimizationTaskCount()
+ {
+ return optimizationBusiness.GetNoCompletedAndTimeOutSpuOptimizationTaskCount();
+ }
}
}
diff --git a/BBWYB.Server.Business/Aggregion/AggregionPurchaseSchemeBusiness.cs b/BBWYB.Server.Business/Aggregion/AggregionPurchaseSchemeBusiness.cs
index 9ac86c6..30f939b 100644
--- a/BBWYB.Server.Business/Aggregion/AggregionPurchaseSchemeBusiness.cs
+++ b/BBWYB.Server.Business/Aggregion/AggregionPurchaseSchemeBusiness.cs
@@ -136,21 +136,46 @@ namespace BBWYB.Server.Business
#endregion
#region 采购方案
- List dbSchemeList = fsql.Select(schemeIdList).ToList();
-
- #region 最近采购成本
- var recentOrderPurchaserRelationList = fsql.Select()
- .InnerJoin((opi, opri) => opi.OrderId == opri.OrderId &&
- opi.PurchaseOrderId == opri.PurchaseOrderId)
- .Where((opi, opri) => opi.IsEnabled == true && schemeIdList.Contains(opri.SchemeId.Value))
- .GroupBy((opi, opri) => opri.SchemeId.Value)
- .WithTempQuery(g => new { MaxId = g.Max(g.Value.Item2.Id) })
- .From()
- .InnerJoin((opri, opri2) => opri.MaxId == opri2.Id)
- .ToList((opri, opri2) => opri2);
- var purchaseOrderIdList = recentOrderPurchaserRelationList.Select(x => x.PurchaseOrderId).Distinct().ToList();
+ //List dbSchemeList = fsql.Select(schemeIdList).ToList();
+
+ //#region 最近采购成本/采购时间
+
+
+ //var recentPurchaseRecordList = fsql.Select()
+ // .InnerJoin((opi, opri, opsi) => opi.OrderId == opri.OrderId &&
+ // opi.PurchaseOrderId == opri.PurchaseOrderId)
+ // .InnerJoin((opi, opri, opsi) => opri.PurchaseOrderId == opsi.PurchaseOrderId &&
+ // opri.PurchaseSkuId == opsi.PurchaseSkuId)
+ // .Where((opi, opri, opsi) => opi.IsEnabled == true &&
+ // schemeIdList.Contains(opri.SchemeId.Value))
+ // .OrderByDescending((opi, opri, opsi) => opri.CreateTime)
+ // .Page(1, 1000)
+ // .ToList((opi, opri, opsi) => new
+ // {
+ // opi.OrderId,
+ // opi.PurchaseOrderId,
+ // opri.SchemeId,
+ // opsi.PurchasedPrice,
+ // opsi.CreateTime
+ // });
+
+ //var recentPurchaseRecordGroups = recentPurchaseRecordList.GroupBy(x => x.SchemeId);
+ //foreach (var relationGroup in recentPurchaseRecordGroups)
+ //{
+ // var scheme = dbSchemeList.FirstOrDefault(s => s.Id == relationGroup.Key.Value);
+ // if (scheme == null)
+ // continue;
+
+ // //取最近一笔订单,最大的订单号
+ // var recentOrderId = relationGroup.Max(x => x.OrderId);
+ // var recentOrderRelationRecordList = relationGroup.Where(x => x.OrderId == recentOrderId);
+ // scheme.LastPurchasePriceCost = recentOrderRelationRecordList.Sum(x=>x.PurchasedPrice);
+ // scheme.LastBargainingTime = recentOrderRelationRecordList.FirstOrDefault()?.CreateTime;
+ //}
+
+
+ //#endregion
- #endregion
#region 采购次数
diff --git a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
index 123e358..d62d8b2 100644
--- a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
+++ b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
@@ -184,6 +184,7 @@ namespace BBWYB.Server.Business
BelongShopName = belongShop.ShopName,
CompletionTime = null,
CreateTime = DateTime.Now,
+ TaskTime = DateTime.Now,
IsOptimizationCompleted = false,
LastOptimizationTime = null,
ProductId = productId,
@@ -716,7 +717,7 @@ namespace BBWYB.Server.Business
var sql = select.ToSql();
- var taskList = select.OrderBy(t => t.CreateTime)
+ var taskList = select.OrderBy(t => t.TaskTime)
.Count(out var total)
.Page(request.PageIndex, request.PageSize)
.ToList();
@@ -770,7 +771,8 @@ namespace BBWYB.Server.Business
SkuIdList = skuIdList,
BargainTeamIdList = bargainTeamIdList,
IncludePurchaseSkuBasicInfo = 1,
- IncludePurchaseSkuStatisticsInfo = 1
+ IncludePurchaseSkuStatisticsInfo = 1,
+ IncludeSkuStatisticsInfo = 1
});
#endregion
@@ -798,7 +800,8 @@ namespace BBWYB.Server.Business
SchemeGroupId = ps.SchemeGroupId,
IsFreeFreight = ps.IsFreeFreight,
LastPurchasePriceCost = ps.LastPurchasePriceCost,
- PurchaseSchemeCost = ps.BargainingCost ?? ps.DefaultCost
+ PurchaseSchemeCost = ps.BargainingCost ?? ps.DefaultCost,
+ SkuLastPurchasePriceCost = ps.SkuLastPurchasePriceCost
}).ToList();
}
#endregion
@@ -978,7 +981,8 @@ namespace BBWYB.Server.Business
}
spuOptimizationTask.ReStartTimes++;
updateSpuTask = fsql.Update(spuOptimizationTask.Id)
- .Set(t => t.ReStartTimes, spuOptimizationTask.ReStartTimes);
+ .Set(t => t.ReStartTimes, spuOptimizationTask.ReStartTimes)
+ .Set(t => t.TaskTime, DateTime.Now);
}
}
@@ -1050,5 +1054,16 @@ namespace BBWYB.Server.Business
return fsql.Select().Where(t => t.IsOptimizationCompleted == false).Count();
}
+
+ ///
+ /// 获取未完成且超时的任务数量
+ ///
+ ///
+ public long GetNoCompletedAndTimeOutSpuOptimizationTaskCount()
+ {
+ return fsql.Select().Where(t => t.ReStartTimes > 2 && t.IsOptimizationCompleted == false)
+ .Count();
+ }
+
}
}
diff --git a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
index a8dbeb6..b56716d 100644
--- a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
@@ -495,6 +495,7 @@ namespace BBWYB.Server.Business.Sync
BelongShopName = sourceShopName,
CompletionTime = null,
CreateTime = DateTime.Now,
+ TaskTime = DateTime.Now,
IsOptimizationCompleted = false,
LastOptimizationTime = null,
ProductId = spuGroup.Key,
diff --git a/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationtask.cs b/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationtask.cs
index 1c5c598..e496741 100644
--- a/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationtask.cs
+++ b/BBWYB.Server.Model/Db/SpuOptimization/Spuoptimizationtask.cs
@@ -40,6 +40,12 @@ namespace BBWYB.Server.Model.Db
[Column(DbType = "datetime")]
public DateTime? CreateTime { get; set; }
+ ///
+ /// 任务时间(创建/重启),用于查询
+ ///
+ [Column(DbType = "datetime")]
+ public DateTime? TaskTime { get; set; }
+
///
/// 是否优化完成
///
diff --git a/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs b/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs
index 0b5c60a..b90105b 100644
--- a/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs
+++ b/BBWYB.Server.Model/Dto/Response/Optimization/SkuOptimizationTaskResponse.cs
@@ -37,6 +37,11 @@ namespace BBWYB.Server.Model.Dto
///
public decimal? LastPurchasePriceCost { get; set; } = 0.0M;
+ ///
+ /// 店铺SKU的最近采购成本(配件单价之和)
+ ///
+ public decimal? SkuLastPurchasePriceCost { get; set; }
+
///
/// 采购方案成本
///
From 223f59ebcee5e8130cf96012161f18458bc52e66 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 10 Apr 2024 19:04:33 +0800
Subject: [PATCH 3/5] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=9C=AA=E5=AE=8C?=
=?UTF-8?q?=E6=88=90=E4=B8=94=E8=B6=85=E6=97=B6=E7=9A=84=E4=BB=BB=E5=8A=A1?=
=?UTF-8?q?=E6=95=B0=E9=87=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../SkuOptimization/OptimizationBusiness.cs | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
index d62d8b2..884dfe2 100644
--- a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
+++ b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
@@ -1061,8 +1061,12 @@ namespace BBWYB.Server.Business
///
public long GetNoCompletedAndTimeOutSpuOptimizationTaskCount()
{
- return fsql.Select().Where(t => t.ReStartTimes > 2 && t.IsOptimizationCompleted == false)
- .Count();
+ return fsql.Select()
+ .InnerJoin((st, t) => st.Id == t.TaskId)
+ .Where((st, t) => st.ReStartTimes > 0 ||
+ (t.CompletionTime == null &&
+ t.ExpirationTime < DateTime.Now))
+ .Count();
}
}
From cbd28fc8d916493753f7cf24ed6b6e611ccc7d6b Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 10 Apr 2024 19:16:19 +0800
Subject: [PATCH 4/5] =?UTF-8?q?=E8=B6=85=E6=97=B6=E6=8E=A5=E5=8F=A3?=
=?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../SkuOptimization/OptimizationBusiness.cs | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
index 884dfe2..393a337 100644
--- a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
+++ b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
@@ -1056,16 +1056,13 @@ namespace BBWYB.Server.Business
}
///
- /// 获取未完成且超时的任务数量
+ /// 获取超时的任务数量
///
///
public long GetNoCompletedAndTimeOutSpuOptimizationTaskCount()
{
- return fsql.Select()
- .InnerJoin((st, t) => st.Id == t.TaskId)
- .Where((st, t) => st.ReStartTimes > 0 ||
- (t.CompletionTime == null &&
- t.ExpirationTime < DateTime.Now))
+ return fsql.Select()
+ .Where(t => t.ReStartTimes > 0)
.Count();
}
From eb34c5c4e6ea57448e9a5eb463cc2a1889d1d218 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Wed, 10 Apr 2024 19:21:53 +0800
Subject: [PATCH 5/5] 1
---
BBWYB.Server.API/Controllers/SkuOptimizationController.cs | 6 +++---
.../SkuOptimization/OptimizationBusiness.cs | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs
index d890db3..1830bcc 100644
--- a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs
+++ b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs
@@ -82,13 +82,13 @@ namespace BBWYB.Server.API.Controllers
}
///
- /// 获取未完成且超时任务数量
+ /// 获取超时任务数量
///
///
[HttpGet]
- public long GetNoCompletedAndTimeOutSpuOptimizationTaskCount()
+ public long GetTimeOutSpuOptimizationTaskCount()
{
- return optimizationBusiness.GetNoCompletedAndTimeOutSpuOptimizationTaskCount();
+ return optimizationBusiness.GetTimeOutSpuOptimizationTaskCount();
}
}
}
diff --git a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
index 393a337..c31b40f 100644
--- a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
+++ b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs
@@ -1059,7 +1059,7 @@ namespace BBWYB.Server.Business
/// 获取超时的任务数量
///
///
- public long GetNoCompletedAndTimeOutSpuOptimizationTaskCount()
+ public long GetTimeOutSpuOptimizationTaskCount()
{
return fsql.Select()
.Where(t => t.ReStartTimes > 0)