예제 #1
0
 private EditEventServiceModel GetEventEditServiceModel(EditEventFormModel editFormModel)
 {
     return(new EditEventServiceModel
     {
         Email = editFormModel.Email,
         PhoneNumber = editFormModel.PhoneNumber,
         FullName = editFormModel.FullName,
         HallId = editFormModel.HallId,
         EventStart = editFormModel.EventStart,
         EventEnd = editFormModel.EventEnd,
         NumberOfPeople = editFormModel.NumberOfPeople,
         TypeOfEvent = editFormModel.TypeOfEvent,
         Description = editFormModel.Description,
         Caterer = editFormModel.Caterer,
         UsingTablesAndChairs = editFormModel.UsingTablesAndChairs,
         TablesAndChairsCostPerPerson = editFormModel.TablesAndChairsCostPerPerson,
         ParkingLotSecurityService = editFormModel.ParkingLotSecurityService,
         ParkingLotSecurityHours = editFormModel.ParkingLotSecurityHours,
         SecurityStartTime = editFormModel.SecurityStartTime,
         SecurityEndTime = editFormModel.SecurityEndTime,
         SecurityCostPerHour = editFormModel.SecurityCostPerHour,
         AdditionalCharges = editFormModel.AdditionalCharges,
         AdditionalChargesInformation = editFormModel.AdditionalChargesInformation,
         HallRentalPrice = editFormModel.HallRentalPrice,
         TablesAndChairsPrice = editFormModel.TablesAndChairsPrice,
         ParkingLotSecurityPrice = editFormModel.ParkingLotSecurityPrice,
         SecurityDeposit = editFormModel.SecurityDeposit,
         TotalPrice = editFormModel.TotalPrice
     });
 }
예제 #2
0
        public IActionResult Edit(int id, EditEventFormModel editFormModel)
        {
            bool eventExists = this.eventAdminService.EventExists(id);

            if (!eventExists)
            {
                TempData.AddErrorMessage("The event does not exist");
                return(RedirectToAction(nameof(EventRequests)));
            }

            if (!ModelState.IsValid)
            {
                EditEventServiceModel editServiceModel = GetEventEditServiceModel(editFormModel);
                return(View(editServiceModel));
            }

            bool hallExists = this.hallAdminService.Exists(editFormModel.HallId);

            if (!hallExists)
            {
                EditEventServiceModel editServiceModel = GetEventEditServiceModel(editFormModel);
                TempData.AddErrorMessage($"The Hall with ID {editServiceModel.HallId} does not exist");
                return(View(editServiceModel));
            }

            if (editFormModel.EventDate.Date != editFormModel.EventStart.Date)
            {
                EditEventServiceModel editServiceModel = GetEventEditServiceModel(editFormModel);
                TempData.AddErrorMessage($"EventDate and EventStart should be on the same day");
                return(View(editServiceModel));
            }

            if (editFormModel.EventDate.Date != editFormModel.SecurityStartTime.Date)
            {
                EditEventServiceModel editServiceModel = GetEventEditServiceModel(editFormModel);
                TempData.AddErrorMessage($"EventDate and SecurityStartTime should be on the same day");
                return(View(editServiceModel));
            }

            this.eventAdminService.EditEvent(id,
                                             editFormModel.Email,
                                             editFormModel.PhoneNumber,
                                             editFormModel.FullName,
                                             editFormModel.HallId,
                                             editFormModel.EventDate,
                                             editFormModel.RentTime,
                                             editFormModel.EventStart,
                                             editFormModel.EventEnd,
                                             editFormModel.NumberOfPeople,
                                             editFormModel.TypeOfEvent,
                                             editFormModel.Description,
                                             editFormModel.Caterer,
                                             editFormModel.UsingTablesAndChairs,
                                             editFormModel.TablesAndChairsCostPerPerson,
                                             editFormModel.ParkingLotSecurityService,
                                             editFormModel.ParkingLotSecurityHours,
                                             editFormModel.SecurityStartTime,
                                             editFormModel.SecurityEndTime,
                                             editFormModel.SecurityCostPerHour,
                                             editFormModel.AdditionalCharges,
                                             editFormModel.AdditionalChargesInformation,
                                             editFormModel.HallRentalPrice,
                                             editFormModel.TablesAndChairsPrice,
                                             editFormModel.ParkingLotSecurityPrice,
                                             editFormModel.SecurityDeposit,
                                             editFormModel.TotalPrice);


            TempData.AddSuccessMessage($"Event {editFormModel.Id} has been edited successfully");


            return(RedirectToAction(nameof(EventRequests)));
        }