コード例 #1
0
        public JsonResult Delete(string model)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            // parameter is passed in as a model with Json string
            var entity        = JsonConvert.DeserializeObject <ResolutionRevenueModel>(model);
            var ownerPayoutId = entity.OwnerPayoutId;

            try
            {
                var dataProvider = new ResolutionRevenueProvider(_dbContext);
                dataProvider.Delete(entity.ResolutionId);
                dataProvider.Commit();

                var provider = new OwnerPayoutProvider(_dbContext);
                provider.UpdateOwnerPayoutMatchStatus(ownerPayoutId);

                return(Json("success", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(InternalError(string.Format("Delete Resolution {0:d} fails.", entity.ResolutionId), "fail", ex));
            }
        }
コード例 #2
0
        public JsonResult DeleteRevenue(int id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                string message = string.Format("User '{0}' does not have permission to delete Owner Payout {1:d}.", this.User.Identity.Name, id);
                DojoLogger.Warn(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.Forbidden;
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }

            try
            {
                var dataProvider = new OwnerPayoutRevenueProvider(_dbContext);
                dataProvider.Delete(id);
                dataProvider.Commit();
                return(Json("success", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                string message = string.Format("Delete Owner Payout {0} fails. {1}", id.ToString(), ex.Message + ex.StackTrace);
                DojoLogger.Error(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                return(Json("fail", JsonRequestBehavior.AllowGet));
            }
        }
コード例 #3
0
        public JsonResult DeleteRevenue(int id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var dataProvider = new ResolutionRevenueProvider(_dbContext);
                var entity       = dataProvider.Retrieve(id);

                dataProvider.Delete(id);
                dataProvider.Commit();

                var provider = new OwnerPayoutProvider(_dbContext);
                provider.UpdateOwnerPayoutMatchStatus(entity.OwnerPayoutId);

                return(Json("success", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                string message = string.Format("Delete Resolution {0} fails. {1}", id.ToString(), ex.Message + ex.StackTrace);
                return(InternalError(message, "fail", ex));
            }
        }
コード例 #4
0
        public JsonResult Update(string model)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            // parameter is passed in as a model with Json string
            var entity = JsonConvert.DeserializeObject <ResolutionRevenueModel>(model);

            try
            {
                if (!string.IsNullOrEmpty(entity.ConfirmationCode))
                {
                    var provider     = new ReservationRevenueProvider(_dbContext);
                    var propertycode = provider.GetPropertyCodeByConfirmationCode(entity.ConfirmationCode);
                    if (!string.IsNullOrEmpty(propertycode))
                    {
                        entity.PropertyCode = propertycode;
                    }
                }

                var dataProvider = new ResolutionRevenueProvider(_dbContext);
                dataProvider.Update(entity.ResolutionId, entity);
                dataProvider.Commit();

                return(Json(entity, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Resolution {0:d} fails. {1} - {2}", entity.ResolutionId, ex.Message, innerErrorMessage);
                return(InternalError(message, "fail", ex));
            }
        }
コード例 #5
0
        public JsonResult SavePayoutAmount(int id, float amount)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                string message = string.Format("User '{0}' does not have permission to save Owner Payout {1}.", this.User.Identity.Name, id.ToString());
                DojoLogger.Warn(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.Forbidden;
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }

            try
            {
                var dataProvider = new OwnerPayoutRevenueProvider(_dbContext);
                var entity       = dataProvider.Retrieve(id);
                entity.PayoutAmount = amount;
                dataProvider.Update(id, entity);

                dataProvider.Commit(); // OwnerPayoutId will be filled for new OwnerPayout by EF

                return(Json(id.ToString(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Owner Payout {0} fails. {1},{2}", id.ToString(), ex.Message, innerErrorMessage);
                DojoLogger.Error(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }
        }
コード例 #6
0
        public JsonResult Update(string model)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            var codeModel = JsonConvert.DeserializeObject <MissingPropertyCodesModel>(model);

            try
            {
                var dataProvider = new ReservationRevenueProvider(_dbContext);
                var entity       = dataProvider.Retrieve(codeModel.ReservationId);
                entity.PropertyCode = codeModel.PropertyCode;
                dataProvider.Update(codeModel.ReservationId, entity);
                dataProvider.Commit();
                return(Json(codeModel, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Property Code for Reservation {0:d} fails. {1},{2}", codeModel.ReservationId, ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty, ex));
            }
        }
コード例 #7
0
        public JsonResult SplitReservation(ResevationSplitModel form)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var dataProvider = new ReservationRevenueProvider(_dbContext);
                var result       = dataProvider.SplitReservation(form);
                if (result != null)
                {
                    return(Json(result.Value.ToString(), JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json("-1", JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Splitting Reservation {0:d} for property code {1} fails. {2},{3}", form.ReservationId, form.PropertyCode, ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty, ex));
            }
        }
コード例 #8
0
        public JsonResult UpdateFieldStatus(int id, string field, int included)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var provider = new ExpenseRevenueProvider(_dbContext);
                var ok       = provider.SetFieldStatus(id, field, (included == 1 ? true : false));
                if (ok)
                {
                    return(Json(id, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(string.Empty, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                string message = string.Format("Change Expense 'IncludeInStatement' for ID = {0:d} fails. {1}", id, ex.Message + ex.StackTrace);
                return(InternalError(message, string.Empty, ex));
            }
        }
コード例 #9
0
        public JsonResult Create(string model)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            var entity = JsonConvert.DeserializeObject <ExpenseRevenueModel>(model);

            try
            {
                // parameter is passed in as a model with Json string
                var dataProvider = new ExpenseRevenueProvider(_dbContext);
                dataProvider.Create(entity);
                dataProvider.Commit();

                if (entity.ExpenseId == 0)
                {
                    entity.ExpenseId = dataProvider.GetKey(entity);
                }

                entity.ParentId = entity.ExpenseId;
                dataProvider.Update(entity.ExpenseId, entity);
                dataProvider.Commit();

                return(Json(entity, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Expense {0:d} fails. {1} - {2}", entity.ExpenseId, ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty));
            }
        }
コード例 #10
0
        public ActionResult SplitRevenue(int Id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            var model = new ResevationSplitModel();

            try
            {
                var provider = new ReservationRevenueProvider(_dbContext);
                var entity   = provider.Retrieve(Id);
                if (entity != null)
                {
                    model.ReservationId     = Id;
                    model.PropertyCode      = entity.PropertyCode;
                    model.ConfirmationCode  = entity.ConfirmationCode;
                    model.ReservationAmount = entity.TotalRevenue;
                    ViewBag.Title           = "Split Reservation";
                }
            }
            catch
            {
            }
            return(PartialView("_ReservationSplitPartial", model));
        }
コード例 #11
0
        public JsonResult Delete(string model)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            // parameter is passed in as a model with Json string
            var entity = JsonConvert.DeserializeObject <ExpenseRevenueModel>(model);

            try
            {
                if (entity.Children.Count == 0)
                {
                    var dataProvider = new ExpenseRevenueProvider(_dbContext);
                    dataProvider.Delete(entity.ExpenseId);
                    dataProvider.Commit();
                }
                return(Json("success", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(InternalError(string.Format("Delete Expense {0:d} fails.", entity.ExpenseId), "fail", ex));
            }
        }
コード例 #12
0
        public JsonResult SaveRevenue(OwnerPayoutRevenueModel form)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                string message = string.Format("User '{0}' does not have permission to save Owner Payout {1}.", this.User.Identity.Name, form.OwnerPayoutId.ToString());
                DojoLogger.Warn(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.Forbidden;
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }

            try
            {
                // treat checkin and checkout date as Hawaii time zone and covert it to UTC by adding 11 hours.
                if (form.PayoutDate != null)
                {
                    form.PayoutDate = ConversionHelper.ToUtcFromUs(form.PayoutDate.Value);
                }

                var dataProvider = new OwnerPayoutRevenueProvider(_dbContext);

                if (form.OwnerPayoutId == 0) // new OwnerPayout
                {
                    if (dataProvider.GetKey(form) != 0)
                    {
                        Response.StatusCode = (int)System.Net.HttpStatusCode.Conflict; // code = 409
                        return(Json(string.Empty, JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        dataProvider.Create(form);
                    }
                }
                else // updating OwnerPayout
                {
                    dataProvider.Update(form.OwnerPayoutId, form);
                }

                dataProvider.Commit(); // OwnerPayoutId will be filled for new OwnerPayout by EF

                // get the OwnerPayout ID
                if (form.OwnerPayoutId == 0)
                {
                    form.OwnerPayoutId = dataProvider.GetKey(form);
                }

                var provider = new OwnerPayoutProvider(_dbContext);
                provider.UpdateOwnerPayoutMatchStatus(form.OwnerPayoutId);

                return(Json(form.OwnerPayoutId.ToString(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Owner Payout {0} fails. {1},{2}", form.OwnerPayoutId.ToString(), ex.Message, innerErrorMessage);
                DojoLogger.Error(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }
        }
コード例 #13
0
        public JsonResult SaveRevenue(ReservationRevenueModel form)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                // treat checkin and checkout date as Hawaii time zone and covert it to UTC by adding 11 hours.
                if (form.PayoutDate != null)
                {
                    form.PayoutDate = ConversionHelper.ToUtcFromUs(form.PayoutDate.Value);
                }
                if (form.CheckinDate != null)
                {
                    form.CheckinDate = ConversionHelper.ToUtcFromUs(form.CheckinDate.Value);
                }

                var dataProvider = new ReservationRevenueProvider(_dbContext);
                if (form.ReservationId == 0) // new reservation
                {
                    if (dataProvider.GetKey(form) != 0)
                    {
                        Response.StatusCode = (int)System.Net.HttpStatusCode.Conflict; // code = 409
                        return(Json(string.Empty, JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        dataProvider.Create(form);
                    }
                }
                else // updating reservation
                {
                    dataProvider.Update(form.ReservationId, form);
                }

                dataProvider.Commit(); // ReservationId will be filled for new reservation by EF

                // get the reservation ID
                if (form.ReservationId == 0)
                {
                    form.ReservationId = dataProvider.GetKey(form);
                }

                var provider = new OwnerPayoutProvider(_dbContext);
                provider.UpdateOwnerPayoutMatchStatus(form.OwnerPayoutId);

                return(Json(form.ReservationId.ToString(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Reservation {0} fails. {1},{2}", form.ReservationId.ToString(), ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty, ex));
            }
        }
コード例 #14
0
        public ActionResult EditRevenue(int Id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            var provider    = new ReservationRevenueProvider(_dbContext);
            var reservation = provider.Retrieve(Id);

            ViewBag.Title      = "Edit Reservation";
            ViewBag.ButtonText = string.Format("Update Reservation for Property {0}", reservation.PropertyCode);
            return(PartialView("_ReservationEditPartial", reservation));
        }
コード例 #15
0
        public ActionResult Index()
        {
            if (!AuthorizationProvider.CanViewRevenue())
            {
                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.CanEditRevenue() ? string.Empty : " revenue-field-readonly";
            ViewBag.AdminClass     = AuthorizationProvider.IsRevenueAdmin() ? "revenue-grid-remover" : string.Empty;

            return(View());
        }
コード例 #16
0
        public ActionResult EditRevenue(int Id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            var provider   = new ResolutionRevenueProvider(_dbContext);
            var resolution = provider.Retrieve(Id);

            ViewBag.Title         = "Edit Resolution";
            ViewBag.ButtonText    = "Update Resolution";
            ViewBag.NewResolution = false;
            return(PartialView("_ResolutionEditPartial", resolution));
        }
コード例 #17
0
        public ActionResult TetrisRevenue(int Id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            var model    = new ResevationTetrisModel();
            var provider = new ReservationRevenueProvider(_dbContext);

            model.OldPropertyCode = provider.GetPropertyCodeById(Id);
            model.ReservationId   = Id;
            ViewBag.Title         = "Change Reservation";
            return(PartialView("_ReservationTetrisPartial", model));
        }
コード例 #18
0
        public JsonResult ConvertRevenue(int id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var reservationProvider = new ReservationRevenueProvider(_dbContext);
                var entity = reservationProvider.Retrieve(id);

                // create resolution entity
                var resolutionModel = new ResolutionRevenueModel();
                resolutionModel.ResolutionDate        = entity.PayoutDate;
                resolutionModel.OwnerPayoutId         = entity.OwnerPayoutId;
                resolutionModel.ConfirmationCode      = entity.ConfirmationCode;
                resolutionModel.PropertyCode          = entity.PropertyCode;
                resolutionModel.ResolutionType        = "Cancellation";
                resolutionModel.ResolutionDescription = "Converted from Reservation";
                resolutionModel.ResolutionAmount      = entity.TotalRevenue;
                resolutionModel.IncludeOnStatement    = true;
                resolutionModel.Impact         = string.Empty;
                resolutionModel.ApprovalStatus = RevenueApprovalStatus.NotStarted;

                var resolutionProvider = new ResolutionRevenueProvider(_dbContext);
                resolutionProvider.Create(resolutionModel);
                resolutionProvider.Commit();

                // set reservation revenue to 0 and excluded from statement
                entity.TotalRevenue       = 0;
                entity.IncludeOnStatement = false;
                reservationProvider.Update(id, entity);
                reservationProvider.Commit();

                var provider = new OwnerPayoutProvider(_dbContext);
                provider.UpdateOwnerPayoutMatchStatus(entity.OwnerPayoutId);

                return(Json("success", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                string message = string.Format("Delete Reservation {0} fails. {1}", id.ToString(), ex.Message + ex.StackTrace);
                return(InternalError(message, "fail", ex));
            }
        }
コード例 #19
0
        public ActionResult EditRevenue(int Id)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                string message = string.Format("User '{0}' does not have permission to edit Owner Payout.", this.User.Identity.Name);
                DojoLogger.Warn(message, typeof(OwnerPayoutController));
                Response.StatusCode = (int)System.Net.HttpStatusCode.Forbidden;
                return(Json(string.Empty, JsonRequestBehavior.AllowGet));
            }

            var provider = new OwnerPayoutRevenueProvider(_dbContext);
            var entity   = provider.Retrieve(Id);

            ViewBag.Title      = "Edit Owner Payout";
            ViewBag.ButtonText = Id == 0 ? "Create Owner Payout" : "Update Owner Payout";
            return(PartialView("_OwnerPayoutEditPartial", entity));
        }
コード例 #20
0
        public JsonResult SaveRevenue(ResolutionRevenueModel form)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                // Impact list is defined in lookup table; Advance Payout does not have a confirmation code
                if (form.Impact == "Advance Payout")
                {
                    form.ConfirmationCode = string.Empty;
                }

                var dataProvider = new ResolutionRevenueProvider(_dbContext);
                if (form.ResolutionId == 0) // new
                {
                    dataProvider.Create(form);
                }
                else // update
                {
                    dataProvider.Update(form.ResolutionId, form);
                }

                dataProvider.Commit(); // ReservationId will be filled for new reservation by EF

                // get the resolution ID
                if (form.ResolutionId == 0)
                {
                    form.ResolutionId = dataProvider.GetKey(form);
                }

                var provider = new OwnerPayoutProvider(_dbContext);
                provider.UpdateOwnerPayoutMatchStatus(form.OwnerPayoutId);

                return(Json(form.ResolutionId.ToString(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Resolution {0} fails. {1},{2}", form.ResolutionId.ToString(), ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty, ex));
            }
        }
コード例 #21
0
        public JsonResult UpdateWorkflow(int id, int state, int direction)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            RevenueApprovalStatus workflowState = (RevenueApprovalStatus)state;

            if (!((AuthorizationProvider.CanReviewRevenue() && workflowState == RevenueApprovalStatus.Reviewed) ||
                  (AuthorizationProvider.CanApproveRevenue() && workflowState == RevenueApprovalStatus.Approved) ||
                  (AuthorizationProvider.CanFinalizeRevenue() && workflowState == RevenueApprovalStatus.Finalized)))
            {
                return(Forbidden());
            }

            try
            {
                var dataProvider = new OtherRevenueProvider(_dbContext);
                RevenueApprovalStatus?nextState = null;
                if (direction > 0)
                {
                    nextState = dataProvider.MoveWorkflow(id, workflowState);
                }
                else
                {
                    nextState = dataProvider.BacktrackWorkflow(id, workflowState);
                }

                if (nextState != null)
                {
                    return(Json(nextState, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json("-1", JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                string message = string.Format("Change Other Expense {0} workflow fails. {1}", id.ToString(), ex.Message + ex.StackTrace);
                return(InternalError(message, "-1", ex));
            }
        }
コード例 #22
0
        public JsonResult UpdateCombinedExpense(int sourceId, int targetId)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var dataProvider = new ExpenseRevenueProvider(_dbContext);
                var id           = dataProvider.UpdateCombinedExpense(sourceId, targetId);
                return(Json(id, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Combine Expense {0:d} into {1:d} fails. {2} - {3}", sourceId, targetId, ex.Message, innerErrorMessage);
                return(InternalError(message, "-1", ex));
            }
        }
コード例 #23
0
        public ActionResult OwnerPayoutView(DateTime month, string source, int ownerPayoutId)
        {
            if (!AuthorizationProvider.CanViewRevenue())
            {
                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.CanEditRevenue() ? string.Empty : " revenue-field-readonly";
            ViewBag.AdminClass     = AuthorizationProvider.IsRevenueAdmin() ? "revenue-grid-remover" : string.Empty;

            var model = new ReservationRevenueModel();

            model.Month         = month;
            model.Source        = source;
            model.OwnerPayoutId = ownerPayoutId;

            return(View(model));
        }
コード例 #24
0
        public JsonResult ChangePropertyCode(ResevationTetrisModel form)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var dataProvider = new ReservationRevenueProvider(_dbContext);
                var entity       = dataProvider.Retrieve(form.ReservationId);
                entity.PropertyCode = form.NewPropertyCode;
                dataProvider.Update(form.ReservationId, entity);
                dataProvider.Commit();
                return(Json(form.ReservationId.ToString(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Changing Reservation {0:d} property code to {1} fails. {2},{3}", form.ReservationId, form.NewPropertyCode, ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty, ex));
            }
        }
コード例 #25
0
        public JsonResult SaveNote(int id, string note)
        {
            if (!AuthorizationProvider.CanEditRevenue())
            {
                return(Forbidden());
            }

            try
            {
                var dataProvider = new ReservationRevenueProvider(_dbContext);
                var entity       = dataProvider.Retrieve(id);
                entity.ApprovedNote = note;
                dataProvider.Update(id, entity);
                dataProvider.Commit();
                return(Json(id.ToString(), JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                var    innerErrorMessage = ex.InnerException != null ? ex.InnerException.Message : string.Empty;
                string message           = string.Format("Saving Reservation {0:d} fails. {1},{2}", id, ex.Message, innerErrorMessage);
                return(InternalError(message, string.Empty, ex));
            }
        }