From d671a1a104c73433c6df116770878fa502237290 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Wed, 13 Mar 2024 15:01:28 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E8=B4=A7=E6=BA=90=E6=A0=87=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/PurchaseSchemeController.cs | 11 +++ .../PurchaseScheme/PurchaseSchemeBusiness.cs | 70 ++++++++++++++++++- 2 files changed, 79 insertions(+), 2 deletions(-) diff --git a/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs b/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs index cf13444..bb7412f 100644 --- a/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs +++ b/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs @@ -208,5 +208,16 @@ namespace BBWYB.Server.API.Controllers { purchaseSchemeBusiness.BatchEditPurchaseSkuActualPrice(request, null, GetUserId()); } + + /// + /// 货源标记接口 + /// + /// + /// + [HttpPost] + public IList GetGoodsSourceTagsInfo([FromBody] List requestList) + { + return purchaseSchemeBusiness.GetGoodsSourceTagsInfo(requestList, GetUserId()); + } } } diff --git a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs index ca7f558..85f0728 100644 --- a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs +++ b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs @@ -1603,6 +1603,8 @@ namespace BBWYB.Server.Business foreach (var purchasedSku in purchasedSkuList) { + if (list.Any(x => x.PurchaseSku == purchasedSku.PurchaseSkuId)) + continue; var goodsSourceTag = new GoodsSourceTagResponse() { PurchaseSku = purchasedSku.PurchaseSkuId, @@ -1617,8 +1619,72 @@ namespace BBWYB.Server.Business #region 查询添加为采购方案的sku if (purchaseSkuIdList.Count() > 0) - { - + { + var schemeUsedSkuList = fsql.Select() + .InnerJoin((ps, pss) => ps.Id == pss.SkuPurchaseSchemeId) + .Where((ps, pss) => purchaseSkuIdList.Contains(pss.PurchaseSkuId)) + .GroupBy((ps, pss) => new { pss.SkuPurchaseSchemeId, pss.PurchaseSkuId, ps.BelongBargainTeamId }) + .ToList(g => new + { + g.Key.PurchaseSkuId, + g.Key.SkuPurchaseSchemeId, + g.Key.BelongBargainTeamId + }); + foreach (var usedSku in schemeUsedSkuList) + { + if (list.Any(x => x.PurchaseSku == usedSku.PurchaseSkuId)) + continue; + + var goodsSourceTag = new GoodsSourceTagResponse() + { + PurchaseSku = usedSku.PurchaseSkuId, + GoodsSourceTagType = usedSku.BelongBargainTeamId != uInfo.user.DepartmentId ? + Enums.GoodsSourceTagType.其他组添加过采购方案 : + Enums.GoodsSourceTagType.本组添加过采购方案 + }; + list.Add(goodsSourceTag); + purchaseSkuIdList.Remove(usedSku.PurchaseSkuId); //排除绑定过采购方案的sku + } + } + #endregion + + #region 历史采购过相同供应商的商品 + if (purchaseSkuIdList.Count() > 0) + { + purchaserIdList.Clear(); + var goodsSourceList = requestList.Where(x => purchaseSkuIdList.Contains(x.PurchaseSkuId)).ToList(); + purchaserIdList.AddRange(goodsSourceList.Select(x => x.PurchaserId).Distinct().ToList()); + + var purchasedBySamePurchaserList = fsql.Select() + .InnerJoin((opi, opri, ps) => opi.OrderId == opri.OrderId && + opi.PurchaseOrderId == opri.PurchaseOrderId) + .InnerJoin((opi, opri, ps) => opri.SchemeId == ps.Id) + .Where((opi, opri, ps) => opi.IsEnabled == true && + purchaserIdList.Contains(opi.PurchaserId)) + .GroupBy((opi, opri, ps) => new { opi.PurchaserId, opri.SchemeId, ps.BelongBargainTeamId }) + .ToList(g => new + { + g.Key.PurchaserId, + g.Key.SchemeId, + g.Key.BelongBargainTeamId + }); + + if (purchasedBySamePurchaserList.Count() > 0) + { + foreach (var purchaserBySame in purchasedBySamePurchaserList) + { + var item = goodsSourceList.FirstOrDefault(x => x.PurchaserId == purchaserBySame.PurchaserId); + if (item != null && list.Any(x => x.PurchaseSku == item.PurchaseSkuId)) + continue; + list.Add(new GoodsSourceTagResponse() + { + PurchaseSku = item.PurchaseSkuId, + GoodsSourceTagType = purchaserBySame.BelongBargainTeamId != uInfo.user.DepartmentId ? + Enums.GoodsSourceTagType.其他组历史采购过该供应商的商品 : + Enums.GoodsSourceTagType.本组历史采购过该供应商的商品 + }); + } + } } #endregion From 35ee9a5a076dcee8e06fb28dea8a696c95c5b58b Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Wed, 13 Mar 2024 21:40:14 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=8A=A5=E4=BB=B7?= =?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/SkuOptimizationController.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs index 541e056..8c53cbf 100644 --- a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs +++ b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs @@ -35,6 +35,15 @@ namespace BBWYB.Server.API.Controllers optimizationBusiness.CompleteOptimization(taskId, userId); } + /// + /// 更新报价 + /// + /// + public void BatchUpdateCompetitiveTenderQuotation([FromBody] BatchUpdateCompetitiveTenderQuotationRequest request) + { + optimizationBusiness.BatchUpdateCompetitiveTenderQuotation(request, GetUserId()); + } + /// /// 查询待议价任务列表 /// From 6f064e82f62d487342d0d504c4517c0603487e85 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Wed, 13 Mar 2024 21:53:06 +0800 Subject: [PATCH 3/4] 1 --- BBWYB.Server.API/Controllers/SkuOptimizationController.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs index 8c53cbf..e8919ce 100644 --- a/BBWYB.Server.API/Controllers/SkuOptimizationController.cs +++ b/BBWYB.Server.API/Controllers/SkuOptimizationController.cs @@ -39,6 +39,7 @@ namespace BBWYB.Server.API.Controllers /// 更新报价 /// /// + [HttpPost] public void BatchUpdateCompetitiveTenderQuotation([FromBody] BatchUpdateCompetitiveTenderQuotationRequest request) { optimizationBusiness.BatchUpdateCompetitiveTenderQuotation(request, GetUserId()); From ead75dc40c3b08ba02fd16cbd31e71111d56ec31 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Sat, 16 Mar 2024 01:53:49 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=88=9B=E5=BB=BAspu?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=BB=E5=8A=A1=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs | 1 + BBWYB.Server.Business/Sync/OrderSyncBusiness.cs | 1 + 2 files changed, 2 insertions(+) diff --git a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs index 896e0bd..80915c9 100644 --- a/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs +++ b/BBWYB.Server.Business/SkuOptimization/OptimizationBusiness.cs @@ -184,6 +184,7 @@ namespace BBWYB.Server.Business PreItemCount = 0, PrePurchaseAmount = 0M }; + insertSpuOptimizationTaskList.Add(spuOptimizationTask); #endregion #region 创建SKU优化任务 diff --git a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs index 1409143..fcd421d 100644 --- a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs +++ b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs @@ -498,6 +498,7 @@ namespace BBWYB.Server.Business.Sync PreItemCount = 0, PrePurchaseAmount = 0M }; + insertSpuOptimizationTaskList.Add(spuOptimizationTask); #endregion #region 创建SKU优化任务