/// <summary> /// 修改订单产品 /// </summary> /// <returns></returns> public bool UpdateOrderProduct(UserModel userModel, BuyUpdateBuyOrderProductRequest request, out string msg) { var order = Da.Get <BuyOrder>(request.BuyOrderId); var b2 = CheckAuthOrderByStatusStockIn(userModel, order, out msg); if (!b2) { return(false); } var orderProducts = Da.GetList <BuyOrderProduct>(new { order.BuyOrderId, order.UserId }); var products = Da.GetListByBulk <Product>(new { ProductId = orderProducts.Select(p => p.ProductId).Distinct().ToList(), Status = (int)ProductStatusEnum.Ok, }); var updateOrderProducts = new List <BuyOrderProduct>(); foreach (var item in request.BuyOrderProducts) { var op = orderProducts.Find(p => p.BuyOrderProductId == item.BuyOrderProductId); if (op == null) { msg = "产品列表已发生变化,请刷新再试"; return(false); } //必须存在 var pro = products.Find(p => p.ProductId == op.ProductId); if (pro == null) { LogHelper.Fatal($"产品[{item.BuyOrderProductId}]不存在,这类是bug!"); msg = "操作失败"; return(false); } if (op.InQty != item.InQty || op.Remark != item.Remark) { op.InQty = item.InQty; op.InStockRemark = item.InStockRemark; updateOrderProducts.Add(op); } } if (updateOrderProducts.Count == 0) { return(true); } return(Da.UpdateBuyOrderProduct(updateOrderProducts)); }
public IResponseResult UpdateOrderProduct(BuyUpdateBuyOrderProductRequest request) { var result = Biz.UpdateOrderProduct(UserModel, request, out var msg); return(ReturnResult(result, msg)); }