/// <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));
        }