public JsonResult BackFillOwnerSummaries(DateTime month)
        {
            if (!AuthorizationProvider.IsDataImporter())
            {
                return(Forbidden());
            }

            try
            {
                var summaryProvider = new OwnerStatementProvider(_dbContext);
                var paymentProvider = new OwnerPaymentProvider(_dbContext);
                var payoutMethods   = paymentProvider.All();
                foreach (PayoutMethod method in payoutMethods)
                {
                    if (method.PayoutMethodName != null)
                    {
                        try
                        {
                            var summary = summaryProvider.GetOwnerSummary(month, method.PayoutMethodName, true);
                            var model   = new OwnerStatement();
                            summaryProvider.MapData(summary.ItemTotal, ref model, month, method.PayoutMethodName);

                            var entity = summaryProvider.Retrieve(model);
                            if (entity != null)
                            {
                                model.OwnerStatementId = entity.OwnerStatementId;
                                summaryProvider.Update(model.OwnerStatementId, model);
                            }
                            else
                            {
                                summaryProvider.Create(model);
                            }
                            summaryProvider.Commit();
                        }
                        catch (Exception ex)
                        {
                            return(Json(ex.Message, JsonRequestBehavior.AllowGet));
                        }
                    }
                }
                return(Json("success-Summary", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(ex.Message, JsonRequestBehavior.AllowGet));
            }
        }
 public ActionResult RebalanceEditor(int id, DateTime data)
 {
     if (!AuthorizationProvider.CanEditStatement())
     {
         return(Forbidden());
     }
     try
     {
         var provider = new OwnerPaymentProvider(_dbContext);
         var editor   = provider.GetBalancesForPayoutMethod(id, data);
         return(PartialView("_RebalancePartial", editor));
     }
     catch
     {
         return(PartialView("_RebalancePartial", new RebalanceEditModel()));
     }
 }
 public ActionResult PaymentEditor(DateTime month)
 {
     if (!AuthorizationProvider.CanEditStatement())
     {
         return(Forbidden());
     }
     try
     {
         var provider = new OwnerPaymentProvider(_dbContext);
         var editor   = provider.GetPayoutBalancesForMonth(month);
         return(PartialView("_PayoutMethodPaymentPartial", editor));
     }
     catch
     {
         return(PartialView("_PayoutMethodPaymentPartial", new PayoutMethodPaymentEditModel()));
     }
 }
        public JsonResult RetrievePayoutMethodPayments(DateTime month)
        {
            if (!AuthorizationProvider.CanEditStatement())
            {
                return(Forbidden());
            }

            try
            {
                var provider = new OwnerPaymentProvider(_dbContext);
                var model    = provider.Retrieve(month);
                return(Json(model, JsonRequestBehavior.AllowGet));
            }
            catch
            {
                return(Json(new PayoutMethodPaymentViewModel(), JsonRequestBehavior.AllowGet));
            }
        }