public JsonResult SavePayoutMethodPayments(List <PayoutPayment> payments) { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } try { // create/update payments var provider = new PayoutPaymentProvider(_dbContext); provider.SavePayoutMethodPayments(payments); // add a statement completion record for the payment month if (payments != null && payments.Count > 0) { var nextMonth = (new DateTime(payments[0].PaymentYear, payments[0].PaymentMonth, 1)).AddMonths(1); var completionProvider = new StatementCompletionProvider(_dbContext); completionProvider.New(nextMonth); } return(Json("success", JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(ex.Message, JsonRequestBehavior.AllowGet)); } }
public OwnerStatementController(DojoDbContext context) { _dbContext = context; ViewBag.EditClass = AuthorizationProvider.CanEditStatement() ? string.Empty : " revenue-field-readonly"; bool isFreezed = (new StatementCompletionProvider(_dbContext)).IsCompleted(DateTime.Today); ViewBag.EditFreezed = isFreezed ? "edit-freezed" : string.Empty; }
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 ActionResult Index() { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } ViewBag.ReviewerClass = AuthorizationProvider.CanReviewRevenue() ? "revenue-grid-reviewer" : string.Empty; ViewBag.ApproverClass = AuthorizationProvider.CanApproveRevenue() ? "revenue-grid-approver" : string.Empty; ViewBag.FinalizerClass = AuthorizationProvider.CanFinalizeRevenue() ? "revenue-grid-finalizer" : string.Empty; ViewBag.EditClass = AuthorizationProvider.CanEditStatement() ? string.Empty : " revenue-field-readonly"; ViewBag.AdminClass = AuthorizationProvider.IsRevenueAdmin() ? "revenue-grid-remover" : string.Empty; ViewBag.CanFreezeEditing = AuthorizationProvider.CanFreezeEditing() ? true : false; ViewBag.StatementCompleted = (new StatementCompletionProvider(_dbContext)).IsCompleted(DateTime.Today); return(View()); }
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)); } }
public JsonResult RedistributeBalances(List <PropertyBalance> balances) { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } try { var provider = new PropertyBalanceProvider(_dbContext); provider.RedistributeBalance(balances); return(Json("success", JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(ex.Message, JsonRequestBehavior.AllowGet)); } }
public JsonResult UpdateBalances(DateTime month) { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } try { var provider = new PropertyBalanceProvider(_dbContext); provider.UpdateNextMonthBalances(month); return(Json("success", JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(ex.Message, JsonRequestBehavior.AllowGet)); } }
public JsonResult FinalizeSummary(DateTime month, string payoutMethod, string note, bool isFinalized = true) { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } try { var statementProvider = new OwnerStatementProvider(_dbContext); statementProvider.FinalizeSummary(month, payoutMethod, note, isFinalized); return(Json("success", JsonRequestBehavior.AllowGet)); } catch { Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError; return(Json("fail", JsonRequestBehavior.AllowGet)); } }
public ActionResult SummaryRebalance(DateTime month, string payoutMethod) { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } var model = new OwnerSummaryRebalanceModel { PayoutMethod = payoutMethod, PayoutMonth = month.Month, PayoutYear = month.Year, RebalanceDate = month, SummaryProperties = new PayoutMethodProvider(_dbContext).PropertyList(payoutMethod, month), PropertyBalances = new PayoutMethodProvider(_dbContext).PropertyBalances(payoutMethod, month) }; return(PartialView("_RebalancePartial", model)); }
public JsonResult Finalize(DateTime month, string propertyCode, string note, bool isFinalized = true) { if (!AuthorizationProvider.CanEditStatement()) { return(Forbidden()); } try { var provider = new OwnerStatementProvider(_dbContext); var viewModel = provider.GetOwnerStatement(month, propertyCode); var result = provider.FinalizeStatement(month, propertyCode, note, viewModel.EndingBalance, isFinalized); return(Json(result, JsonRequestBehavior.AllowGet)); } catch { Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError; return(Json(false, JsonRequestBehavior.AllowGet)); } }