diff --git a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs index 7c8cd19..d4cdf38 100644 --- a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs +++ b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs @@ -580,7 +580,7 @@ namespace BBWYB.Server.Business var dbSkuAndPurchaserRelationList = fsql.Select() .Where(spr => purchaserIdList.Contains(spr.PurchaserId) && spr.ShopId == request.ShopId) .ToList(); - + var dbPurchaserList = fsql.Select(purchaserIdList).ToList(); foreach (var purchaserId in purchaserIdList) { purchaserSkuDictionary.TryGetValue(purchaserId, out var fromRequestSkuList); @@ -601,10 +601,15 @@ namespace BBWYB.Server.Business SkuId = x })); } - //var update = fsql.Update(purchaserId) - // .Set(p => p.PurchasedCount + 1) - // .SetIf(newSkuRelationCount > 0, p => p.PurchasedSkuCount + newSkuRelationCount); - //updatePurchaserList.Add(update); + + #region 更新采购商归属 + var purchaser = dbPurchaserList.FirstOrDefault(p => p.Id == purchaserId); + if (purchaser != null && !string.IsNullOrEmpty(purchaser.BelongBargainTeamId) && purchaser.BelongType == Enums.PurchaserBelongType.临时) + { + var updatePurchaser = fsql.Update(purchaserId).Set(p => p.BelongType, Enums.PurchaserBelongType.永久); + updatePurchaserList.Add(updatePurchaser); + } + #endregion } } @@ -793,11 +798,11 @@ namespace BBWYB.Server.Business if (updateSkuOptimizationPurhcasementByIdList.Count() > 0) fsql.Update(updateSkuOptimizationPurhcasementByIdList).Set(s => s.IsPurchasementCompleted, true).ExecuteAffrows(); - //if (updatePurchaserList.Count() > 0) - //{ - // foreach (var update in updatePurchaserList) - // update.ExecuteAffrows(); - //} + if (updatePurchaserList.Count() > 0) + { + foreach (var update in updatePurchaserList) + update.ExecuteAffrows(); + } }); //#region 更新采购方案最新价格 diff --git a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs index 1bb343b..1a88368 100644 --- a/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs +++ b/BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs @@ -474,7 +474,12 @@ namespace BBWYB.Server.Business HYBDId = psReq.HYBDId, HYSchemeId = psReq.HYSchemeId, SchemeGroupId = psReq.SchemeGroupId ?? 0, - Version = 1 + Version = 1, + BelongBargainTeamId = uInfo.isBargainTeam ? uInfo.department.Id : string.Empty, + BelongBargainTeamName = uInfo.isBargainTeam ? uInfo.department.DepartmentName : string.Empty, + UpdateTeamId = uInfo.department.Id, + UpdateUserId = userId, + IsBargainTeamUpdate = uInfo.isBargainTeam }; addPurchaseSchemeList.Add(ps); foreach (var pspReq in psReq.PurchaseSchemeProductList) @@ -609,13 +614,21 @@ namespace BBWYB.Server.Business insertHistoryPSPList.Add(historyPsp); #endregion } + var belongBargainTeamId = uInfo.isBargainTeam ? uInfo.department.Id : string.Empty; + var belongBargainTeamName = uInfo.isBargainTeam ? uInfo.department.DepartmentName : string.Empty; + var psupdate = fsql.Update(schemeId) .Set(ps => ps.DefaultCost, defaultCost) .Set(ps => ps.BargainingCost, bargainingCost) .SetIf(bargainingCost != null && bargainingCost != dbps.BargainingCost, ps => ps.LastBargainingTime, DateTime.Now) .Set(ps => ps.HYSchemeId, psReq.HYSchemeId) .Set(ps => ps.HYBDId, psReq.HYBDId) - .Set(ps => ps.Version, newVersion); + .Set(ps => ps.Version, newVersion) + .Set(ps => ps.BelongBargainTeamId, belongBargainTeamId) + .Set(ps => ps.BelongBargainTeamName, belongBargainTeamName) + .Set(ps => ps.UpdateUserId, userId) + .Set(ps => ps.UpdateTeamId, uInfo.department.Id) + .Set(ps => ps.IsBargainTeamUpdate, uInfo.isBargainTeam); updatePurchaseSchemeList.Add(psupdate); #region 处理历史版本 @@ -641,6 +654,20 @@ namespace BBWYB.Server.Business purchaseProductSku.PurchaseRatio = 1; } + if (uInfo.isBargainTeam) + { + if (newPurchaserList.Count() > 0) + { + foreach (var p in newPurchaserList) + { + p.BelongBargainTeamId = uInfo.department.Id; + p.BelongBargainTeamName = uInfo.department.DepartmentName; + p.BelongType = Enums.PurchaserBelongType.临时; + } + } + } + + fsql.Transaction(() => { if (newPurchaserList.Count > 0)