diff --git a/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs b/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs index fcc59ff..0665270 100644 --- a/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs +++ b/BBWYB.Server.API/Controllers/PurchaseSchemeController.cs @@ -59,6 +59,17 @@ namespace BBWYB.Server.API.Controllers return purchaseSchemeBusiness.GetPurchaseSchemeAndGroupList(request, GetUserId()); } + /// + /// 按spu查询所有采购方案的所有采购配件列表 (议价组只查询和自己有关的采购方案) + /// + /// + /// + [HttpGet("{productId}")] + public IList GetMergePurchaseSchemeProductSkuByProductId([FromRoute]string productId) + { + return purchaseSchemeBusiness.GetMergePurchaseSchemeProductSkuByProductId(productId, GetUserId()); + } + /// /// 获取Sku采购方案数量 /// diff --git a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs index 539a232..4b458de 100644 --- a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs +++ b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs @@ -1024,6 +1024,29 @@ namespace BBWYB.Server.Business return purchaseSchemeList; } + public IList GetMergePurchaseSchemeProductSkuByProductId(string productId, string userId) + { + var user = userBusiness.GetisBargainTeamByUserId(userId); + var purchaseSchemeList = GetPurchaseSchemeList(new QuerySchemeRequest() + { + ProductIdList = new List() { productId }, + BargainTeamIdList = user.isBargainTeam ? new List() { user.user.DepartmentId } : null + }); + var mergePssList = new List(); + foreach (var scheme in purchaseSchemeList) + { + foreach (var psp in scheme.PurchaseSchemeProductList) + { + foreach (var pss in psp.PurchaseSchemeProductSkuList) + { + if (!mergePssList.Any(x => x.PurchaseSkuId == pss.PurchaseSkuId)) + mergePssList.Add(pss); + } + } + } + return mergePssList; + } + ///// ///// 获取共同拥有的采购商 /////