public ActionResult Create(DateTime startDateTime, int localRetreatID) { List <string> volunteerJobLabels; List <string> volunteerJobValues; GetVolunteerJobInfo(out volunteerJobLabels, out volunteerJobValues); var viewModel = new EventScheduleViewModel { EventSchedule = new EventSchedule(), EventActivity = _entities.EventActivities.ToList(), ScheduleOffset = _entities.ScheduleOffsets.ToList(), VolunteerJobNameLabels = volunteerJobLabels, VolunteerJobNameValues = volunteerJobValues }; if (startDateTime == null) { startDateTime = _entities.Events.Single(a => a.ID == localRetreatID).StartDateTime; } viewModel.EventSchedule.DateTimeFrom = startDateTime; viewModel.EventSchedule.ScheduleOffsetID = 2; // 1 hour return(View(viewModel)); }
public IHttpActionResult GetPropertySchedule(int id) { var repository = new EventTaskListRepository(); var taskLists = repository.GetPropertyEventTaskLists(id); var eventTaskListSchedules = new List <EventTaskListScheduleViewModel>(); foreach (var taskList in taskLists) { var eventTaskListSchedule = new EventTaskListScheduleViewModel(); eventTaskListSchedule.Id = taskList.Id; eventTaskListSchedule.Name = taskList.Name; eventTaskListSchedule.EventCount = taskList.PropertyService == null ? 0 : taskList.PropertyService.EventCount; eventTaskListSchedule.Schedules = new List <EventScheduleViewModel>(); decimal idx = 0; foreach (var eventSchedule in taskList.EventSchedules) { if (!string.IsNullOrEmpty(eventSchedule.RecurrenceRule)) { var pattern = new RecurrencePattern(eventSchedule.RecurrenceRule); var evaluator = new RecurrencePatternEvaluator(pattern); var items = evaluator.Evaluate(new CalDateTime(eventSchedule.StartTime), eventSchedule.StartTime, eventSchedule.EndTime, false); foreach (var item in items) { idx = idx + taskList.NumberServices ?? 0; var schedule = new EventScheduleViewModel(); schedule.Date = item.StartTime.Value.ToString("d"); schedule.Time = item.StartTime.Value.ToString("t"); schedule.DateTime = item.StartTime.Value; schedule.EventNumber = idx; schedule.FreeService = taskList.FreeServices.Any(f => f.ServiceTime == item.StartTime.Value); eventTaskListSchedule.Schedules.Add(schedule); } } else { idx = idx + taskList.NumberServices ?? 0; var schedule = new EventScheduleViewModel(); schedule.Date = eventSchedule.StartTime.ToString("d"); schedule.Time = eventSchedule.StartTime.ToString("t"); schedule.DateTime = eventSchedule.StartTime; schedule.EventNumber = idx; schedule.FreeService = taskList.FreeServices.Any(f => f.ServiceTime == eventSchedule.StartTime); eventTaskListSchedule.Schedules.Add(schedule); } } if (eventTaskListSchedule.Schedules.Any() || eventTaskListSchedule.EventCount > 0) { eventTaskListSchedules.Add(eventTaskListSchedule); } } return(Ok(eventTaskListSchedules)); }
public async Task <EventScheduleViewModel> SaveEventDetail([FromBody] EventScheduleViewModel model) { if (ModelState.IsValid) { try { var session = await _sessionProvider.Get(); model.EventScheduleModel.StartDateTime = new DateTime(model.EventScheduleModel.StartDateTime.Year, model.EventScheduleModel.StartDateTime.Month, model.EventScheduleModel.StartDateTime.Day, Convert.ToInt32(model.EventScheduleModel.LocalStartTime.Split(":")[0]), Convert.ToInt32(model.EventScheduleModel.LocalStartTime.Split(":")[1]), 0); model.EventScheduleModel.EndDateTime = new DateTime(model.EventScheduleModel.EndDateTime.Year, model.EventScheduleModel.EndDateTime.Month, model.EventScheduleModel.EndDateTime.Day, Convert.ToInt32(model.EventScheduleModel.LocalEndTime.Split(":")[0]), Convert.ToInt32(model.EventScheduleModel.LocalEndTime.Split(":")[1]), 0); if (!model.EventScheduleModel.TimeZoneOffset.Contains("-") && !model.EventScheduleModel.TimeZoneOffset.Contains("+")) { model.EventScheduleModel.TimeZoneOffset = "+" + model.EventScheduleModel.TimeZoneOffset; } model.EventScheduleModel.StartDateTime = _utcTimeProvider.GetUtcTime(model.EventScheduleModel.StartDateTime, model.EventScheduleModel.TimeZoneOffset); model.EventScheduleModel.EndDateTime = _utcTimeProvider.GetUtcTime(model.EventScheduleModel.EndDateTime, model.EventScheduleModel.TimeZoneOffset); model.EventScheduleModel.VenueId = 10694; EventScheduleCommandResult eventDetailsCommandResult = await _commandSender.Send <EventScheduleCommand, EventScheduleCommandResult>(new EventScheduleCommand { CurrentStep = model.CurrentStep, EventScheduleModel = model.EventScheduleModel, ModifiedBy = session.User != null ? session.User.AltId : Guid.Parse("7390283B-4A32-4860-BA3D-B57F1E5F2DAC"), }); if (eventDetailsCommandResult.Success) { eventDetailsCommandResult.EventScheduleModel.LocalStartDateTime = _localTimeProvider.GetLocalTime(eventDetailsCommandResult.EventScheduleModel.StartDateTime, eventDetailsCommandResult.EventScheduleModel.TimeZoneOffset); eventDetailsCommandResult.EventScheduleModel.LocalEndDateTime = _localTimeProvider.GetLocalTime(eventDetailsCommandResult.EventScheduleModel.EndDateTime, eventDetailsCommandResult.EventScheduleModel.TimeZoneOffset); return(new EventScheduleViewModel { Success = true, CurrentStep = eventDetailsCommandResult.CurrentStep, CompletedStep = eventDetailsCommandResult.CompletedStep, EventScheduleModel = eventDetailsCommandResult.EventScheduleModel }); } else { return(new EventScheduleViewModel { }); } } catch (Exception e) { return(new EventScheduleViewModel { }); } } else { return(new EventScheduleViewModel { }); } }
public ActionResult Edit(int id, FormCollection collection, string[] VolunteerJobChecks) { var localRetreatSchedule = _entities.EventSchedules.Single(a => a.ID == id); try { //UpdateModel(localRetreatSchedule, "localRetreatSchedule"); var oldVolunteerJobs = from r in _entities.EventVolunteerJobs where r.EventScheduleID == localRetreatSchedule.ID select r; //remove the old ones if (oldVolunteerJobs.Count() > 0) { foreach (var oldVolunteerJob in oldVolunteerJobs) { _entities.EventVolunteerJobs.DeleteObject(oldVolunteerJob); } } //Add new AddVolumnJob2LocalRetreatVolunteerJobs(localRetreatSchedule, VolunteerJobChecks); UpdateModel(localRetreatSchedule, "localRetreatSchedule"); _entities.SaveChanges(); return(RedirectToAction("Index", new { localRetreatID = localRetreatSchedule.EventID })); } catch { //Invalid - redisplay with errors List <string> volunteerJobLabels; List <string> volunteerJobValues; GetVolunteerJobInfoFromBefore(id, out volunteerJobLabels, out volunteerJobValues); var viewModel = new EventScheduleViewModel { EventSchedule = localRetreatSchedule, EventActivity = _entities.EventActivities.ToList(), ScheduleOffset = _entities.ScheduleOffsets.ToList(), }; return(View(viewModel)); } }
// GET: EventSchedules public ActionResult Index(string search) { //var schedule = _context.EventSchedules.Include(e =>e.Band).Include(e => e.Event).Where(e => e.EventId == id).ToList(); //filter ma Go garda data dekhauxa var schedule = _context.EventSchedules.Where(ev => ev.Band.Name.StartsWith(search) || search == null).Include(e => e.Event).ToList(); var band = _context.Bands.ToList(); var viewmodel = new EventScheduleViewModel { EventSchedule = schedule, Band = band }; return(View(viewmodel)); }
public ActionResult Create(int localRetreatID, DateTime startDateTime, EventSchedule EventSchedule, string[] VolunteerJobChecks) { try { EventSchedule.EventID = localRetreatID; EventSchedule.DateTimeFrom = startDateTime; // add new AddVolumnJob2LocalRetreatVolunteerJobs(EventSchedule, VolunteerJobChecks); _entities.AddToEventSchedules(EventSchedule); _entities.SaveChanges(); DateTime endDateTime = _entities.Events.Single(a => a.ID == localRetreatID).EndDateTime; DateTime DateTimeTo = EventSchedule.DateTimeFrom.AddHours(EventSchedule.ScheduleOffset.OffsetHours); if (DateTime.Compare(DateTimeTo, endDateTime) < 0) { return(RedirectToAction("Create", new { startDateTime = DateTimeTo, localRetreatID = localRetreatID })); } AddCleaner2LocalRetreatVolunteerJobs(localRetreatID, DateTimeTo); return(RedirectToAction("Index", new { localRetreatID = localRetreatID })); } catch { //Invalid - redisplay with errors List <string> volunteerJobLabels; List <string> volunteerJobValues; GetVolunteerJobInfo(out volunteerJobLabels, out volunteerJobValues); var viewModel = new EventScheduleViewModel { EventSchedule = EventSchedule, EventActivity = _entities.EventActivities.ToList(), ScheduleOffset = _entities.ScheduleOffsets.ToList(), VolunteerJobNameLabels = volunteerJobLabels, VolunteerJobNameValues = volunteerJobValues, }; return(View(viewModel)); } }
public ActionResult Edit(int id) { List <string> volunteerJobLabels; List <string> volunteerJobValues; GetVolunteerJobInfoFromBefore(id, out volunteerJobLabels, out volunteerJobValues); EventSchedule eventSchedule = _entities.EventSchedules.Single(a => a.ID == id); int eventID = eventSchedule.EventID; var viewModel = new EventScheduleViewModel { EventSchedule = eventSchedule, EventActivity = _entities.EventActivities.ToList(), ScheduleOffset = _entities.ScheduleOffsets.ToList(), VolunteerJobNameLabels = volunteerJobLabels, VolunteerJobNameValues = volunteerJobValues }; return(View(viewModel)); }