Browse Source

新增采购方案首选,并按首选和时间排序

yijia
shanji 2 years ago
parent
commit
42f9c1402d
  1. 12
      BBWYB.Server.API/Controllers/PurchaseSchemeController.cs
  2. 22
      BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs
  3. 5
      BBWYB.Server.Model/Db/PurchaseScheme/PurchaseScheme.cs

12
BBWYB.Server.API/Controllers/PurchaseSchemeController.cs

@ -172,9 +172,19 @@ namespace BBWYB.Server.API.Controllers
/// <param name="request"></param>
/// <returns>最新的采购方案成本</returns>
[HttpDelete]
public decimal DeletePurchaseSku([FromBody]DeletePurchaseSkuRequest request)
public decimal DeletePurchaseSku([FromBody] DeletePurchaseSkuRequest request)
{
return purchaseSchemeBusiness.DeletePurchaseSku(request);
}
/// <summary>
/// 设置首选采购方案,同时互斥相同Sku的其他采购方案
/// </summary>
/// <param name="schemeId"></param>
[HttpPost("{schemeId}")]
public void SetFirstPurchaseScheme([FromRoute]long schemeId)
{
purchaseSchemeBusiness.SetFirstPurchaseScheme(schemeId);
}
}
}

22
BBWYB.Server.Business/PurchaseScheme/PurchaseSchemeBusiness.cs

@ -639,7 +639,7 @@ namespace BBWYB.Server.Business
.Where((psp, p) => psp.SkuPurchaseSchemeId == ps.Id).Any());
}
//var sql = select.ToSql();
var purchaseSchemeList = select.OrderByDescending(ps => ps.CreateTime).ToList<PurchaseSchemeResponse>();
var purchaseSchemeList = select.OrderByDescending(ps => ps.IsFirst).OrderByDescending(ps => ps.CreateTime).ToList<PurchaseSchemeResponse>();
if (purchaseSchemeList.Count > 0)
@ -1194,5 +1194,25 @@ namespace BBWYB.Server.Business
});
return defaultCost;
}
/// <summary>
/// 设置首选采购方案
/// </summary>
/// <param name="schemeId"></param>
public void SetFirstPurchaseScheme(long schemeId)
{
var scheme = fsql.Select<PurchaseScheme>(schemeId).ToOne(s => new
{
s.Id,
s.SkuId
});
if (scheme == null)
new BusinessException("采购方案不存在");
fsql.Transaction(() =>
{
fsql.Update<PurchaseScheme>().Set(s => s.IsFirst, 0).Where(s => s.SkuId == scheme.SkuId && s.Id != schemeId).ExecuteAffrows();
fsql.Update<PurchaseScheme>(schemeId).Set(s => s.IsFirst, 1).ExecuteAffrows();
});
}
}
}

5
BBWYB.Server.Model/Db/PurchaseScheme/PurchaseScheme.cs

@ -93,6 +93,11 @@ namespace BBWYB.Server.Model
/// 采购金额
/// </summary>
public decimal? PurchasedAmount { get; set; } = 0M;
/// <summary>
/// 首选采购方案 (是=1 否=0)
/// </summary>
public int? IsFirst { get; set; } = 0;
}
}

Loading…
Cancel
Save