请大佬帮忙看下 写法是否有问题 参数
postman测试可以的 小程序调用时还是重复添加
[HttpPost]
public async Task<IActionResult> Create(string productid,int quantity, WsUserCartViewModel model)
{
var predicate = PredicateBuilder.True<WsUserCart>();
predicate = predicate.And(a => a.Deleted == false);
if (!string.IsNullOrEmpty(productid))
{
predicate = predicate.And(a => a.ProductId == productid);
}
var page = _wsUserCartService.GetPagedList(predicate, 1, 10000).Result;
//查询是否有数据 条件ProductId(唯一的)
if (page.Count==0)
{ //添加数据
if (ModelState.IsValid)
{
model.CreatedOn = DateTime.Now;
model.UpdatedOn = DateTime.Now;
await _wsUserCartService.AddViewModel(model);
}
return Ok(model);
}
else
{ //查询当前购物车列表 上面if里添加的这条数据 的数量 在下面 修改的时候 加上修改的数量 总数量=page1[0].Quantity+quantity
var page1 = _wsUserCartService.GetPagedList(predicate, 1, 10000).Result;
var id = page[0].Id;
var ucmodel = await _wsUserCartService.GetViewModel(id);
ucmodel.Quantity = page1[0].Quantity+quantity;
await _wsUserCartService.UpdateViewModel(ucmodel);
return Ok(ucmodel);
}
}