Inheritance: Nop.Web.Framework.Mvc.BaseNopEntityModel
        public static VendorPayoutModel ToModel(this VendorPayout Payout, IOrderService _orderService)
        {
            var model = new VendorPayoutModel()
            {
                CommissionPercentage = Payout.CommissionPercentage,
                Id = Payout.Id,
                OrderId = Payout.OrderId,
                PayoutDate = Payout.PayoutDate,
                PayoutStatus = Payout.PayoutStatus,
                Remarks = Payout.Remarks,
                VendorId = Payout.VendorId,
                VendorOrderTotal = Payout.VendorOrderTotal,
                ShippingCharge = Payout.ShippingCharge,
                PayoutStatusName = Payout.PayoutStatus.ToString(),
            };
           
            if (Payout.PayoutStatus == PayoutStatus.Cancelled)
            {
                model.CommissionAmount = 0;
                model.PayoutAmount = 0;
                model.VendorOrderTotal = 0;
            }
            else if (_orderService != null)
            {
               var order =  _orderService.GetOrderById(Payout.OrderId);
               model.OrderDate = order.CreatedOnUtc;
/*
               var vendorItemTotalExShipping = Payout.VendorOrderTotal - model.ShippingCharge;
               var vendorItemTotalOriginal = (vendorItemTotalExShipping * 100) / (100 + Payout.CommissionPercentage);
               decimal commission = vendorItemTotalExShipping - vendorItemTotalOriginal;
               model.CommissionAmount = commission;
               model.PayoutAmount = vendorItemTotalOriginal;*/
                
               model.PayoutAmount = GetPayoutAmount(Payout.VendorOrderTotal,Payout.CommissionPercentage);
               model.CommissionAmount = model.VendorOrderTotal - model.PayoutAmount;
            }

            return model;
        }
        public ActionResult UpdatePayout(VendorPayoutModel model)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageVendors))
                return Content("Access denied");


            var payout = _extendedVendorService.GetVendorPayout(model.Id);
            if (payout != null)
            {
                payout.CommissionPercentage = model.CommissionPercentage;
                payout.PayoutDate = model.PayoutDate;
                payout.PayoutStatus = model.PayoutStatus;
                payout.Remarks = model.Remarks;
                payout.VendorOrderTotal = model.VendorOrderTotal;
                payout.ShippingCharge = model.ShippingCharge;
                _extendedVendorService.SaveVendorPayout(payout);
            }
            return new NullJsonResult();
        }