using BBWYB.Server.Business;
using BBWYB.Server.Model.Dto;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace BBWYB.Server.API.Controllers
{
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
public class PurchaseSchemeController : BaseApiController
{
private PurchaseSchemeBusiness purchaseSchemeBusiness;
public PurchaseSchemeController(PurchaseSchemeBusiness purchaseSchemeBusiness, IHttpContextAccessor httpContextAccessor) : base(httpContextAccessor)
{
this.purchaseSchemeBusiness = purchaseSchemeBusiness;
}
///
/// 添加/编辑采购方案
///
///
[HttpPost]
public void EditPurchaseScheme([FromBody] BatchCURDSchemeRequest batchCURDSchemeRequest)
{
purchaseSchemeBusiness.EditPurchaseScheme(batchCURDSchemeRequest);
}
///
/// 添加/编辑采购方案(web)
///
///
[HttpPost]
public void EditPurchaseSchemeV2([FromBody] BatchCURDSchemeRequest batchCURDSchemeRequest)
{
purchaseSchemeBusiness.EditPurchaseSchemeV2(batchCURDSchemeRequest, GetUserId());
}
///
/// 获取采购方案列表
///
///
///
[HttpPost]
public IList GetPurchaseSchemeList([FromBody] QuerySchemeRequest querySchemeRequest)
{
//querySchemeRequest.IncludePurchaserStatisticsInfo = 1;
return purchaseSchemeBusiness.GetPurchaseSchemeList(querySchemeRequest);
}
///
/// 获取采购分组和采购方案
///
///
///
[HttpPost]
public IList GetPurchaseSchemeAndGroupList(QuerySchemeAndGroupRequest request)
{
return purchaseSchemeBusiness.GetPurchaseSchemeAndGroupList(request, GetUserId());
}
///
/// 按spu查询所有采购方案的所有采购配件列表 (议价组只查询和自己有关的采购方案)
///
///
///
[HttpGet("{productId}")]
public IList GetMergePurchaseSchemeProductSkuByProductId([FromRoute] string productId)
{
return purchaseSchemeBusiness.GetMergePurchaseSchemeProductSkuByProductId(productId, GetUserId());
}
///
/// 获取Sku采购方案数量
///
///
///
[HttpPost]
public IList GetPurchaseSchemeCountList([FromBody] QuerySchemeCountRequest request)
{
return purchaseSchemeBusiness.GetPurchaseSchemeCountList(request);
}
/////
///// 删除采购商
/////
/////
//[HttpDelete]
//public void DeletePurchaser([FromBody] DeletePurchaseSchemeRequest deletePurchaseSchemeRequest)
//{
// purchaseSchemeBusiness.DeletePurchaser(deletePurchaseSchemeRequest);
//}
///
/// 删除采购方案
///
///
[HttpDelete("{schemeId}")]
public void DeletePurchaseScheme([FromRoute] long schemeId)
{
purchaseSchemeBusiness.DeletePurchaseScheme(schemeId);
}
/////
///// 查询共有采购商
/////
/////
/////
//[HttpPost]
//public IList GetSharePurchaser([FromBody] QuerySchemeRequest querySchemeRequest)
//{
// return purchaseSchemeBusiness.GetSharePurchaser(querySchemeRequest);
//}
///
/// 查询采购方案中采购Sku的基本信息
///
///
///
[HttpPost]
public PurchaseSkuBasicInfoResponse GetPurchaseSkuBasicInfo([FromBody] PurchaseSkuBasicInfoRequest request)
{
return purchaseSchemeBusiness.GetPurchaseSkuBasicInfo(request);
}
///
/// 批量查询采购方案中采购Sku的基本信息
///
///
///
[HttpPost]
public IList BatchGetPurchaseSkuBasicInfo([FromBody] BatchPurchaseSkuBasicInfoRequest request)
{
return purchaseSchemeBusiness.BatchGetPurchaseSkuBasicInfo(request);
}
///
/// 更新采购方案报价
///
///
///
[HttpPost]
public IList RefreshPurchaseScheme([FromBody] RefreshSchemeRequest request)
{
return purchaseSchemeBusiness.RefreshPurchaseScheme(request);
}
/////
///// 修改采购配件比例
/////
/////
//[HttpPost]
//public void EditPurchaseRatio([FromBody]EditPurchaseRatioAndActualPriceRequest request)
//{
// purchaseSchemeBusiness.EditPurchaseRatio(request);
//}
///
/// 根据慧眼标的Id获取慧眼采购方案(含全部配件基本信息)
///
///
///
[HttpPost]
public IList GetPurchaseSchemeByHYBDId([FromBody] QueryHYSchemeRequest request)
{
return purchaseSchemeBusiness.GetPurchaseSchemeByHYBDId(request);
}
///
/// 修改采购配件比例
///
/// 最新的采购方案成本
/// 最新的采购方案成本
[HttpPost]
public decimal EditPurchaseRatio([FromBody] EditPurchaseRatioRequest request)
{
return purchaseSchemeBusiness.EditPurchaseRatio(request);
}
///
/// 删除采购Sku
///
///
/// 最新的采购方案成本
[HttpDelete]
public decimal DeletePurchaseSku([FromBody] DeletePurchaseSkuRequest request)
{
return purchaseSchemeBusiness.DeletePurchaseSku(request);
}
///
/// 设置首选采购方案,同时互斥相同Sku的其他采购方案
///
///
[HttpPost("{schemeId}")]
public void SetFirstPurchaseScheme([FromRoute] long schemeId)
{
purchaseSchemeBusiness.SetFirstPurchaseScheme(schemeId);
}
///
/// 查询同spu同采购商的其他配件接口,排除失效配件
///
///
///
[HttpPost]
public IList QuerySameSpuAndSamePurchaserOtherPurchaseSkuList([FromBody] QuerySameSpuAndSamePurchaserOtherPurchaseSkuRequest request)
{
return purchaseSchemeBusiness.QuerySameSpuAndSamePurchaserOtherPurchaseSkuList(request);
}
///
/// 批量修改采购配件实际单价
///
///
[HttpPost]
public void BatchEditPurchaseSkuActualPrice([FromBody] BatchEditPurchaseSkuActualPriceRequest request)
{
purchaseSchemeBusiness.BatchEditPurchaseSkuActualPrice(request, GetUserId());
}
///
/// 货源标记接口
///
///
///
[HttpPost]
public IList GetGoodsSourceTagsInfo([FromBody] List requestList)
{
return purchaseSchemeBusiness.GetGoodsSourceTagsInfo(requestList, GetUserId());
}
}
}