public IActionResult UpdateAvailability(IFormCollection collection) { var user_id = _userManager.GetUserId(HttpContext.User); Guid clinician_id = _profileService.Get().FirstOrDefault(e => e.user_id == user_id).id; var start_date = collection["start_date"]; _clinicianAvailabilityService.AddOrUpdate( new mp_clinician_availability { start_time = DateTime.Parse(collection["start_time"]), end_time = DateTime.Parse(collection["end_time"]), created_at = DateTime.Now, clinician_id = clinician_id }); return(RedirectToAction("MyProfile")); }
public IActionResult UpdateAvailability(IFormCollection collection) { try { var user_id = _userManager.GetUserId(HttpContext.User); Guid clinician_id = _clinicianService.Get().FirstOrDefault(e => e.user_id == user_id).id; var dayDate = DateTime.ParseExact(collection["day_name"], "MM/dd/yyyy", null); var startTime = DateTime.ParseExact(collection["start_time"], "h:mm tt", null).TimeOfDay; var endTime = DateTime.ParseExact(collection["end_time"], "h:mm tt", null).TimeOfDay; var dayName = dayDate.DayOfWeek.ToString(); _clinicianAvailabilityService.AddOrUpdate( new mp_clinician_availability { day_name = dayName, start_time = dayDate.Add(startTime), end_time = dayDate.Add(endTime), status = bool.Parse(collection["status"]), created_at = DateTime.Now, clinician_id = clinician_id }); //return RedirectToAction("MyProfile"); return(Redirect(Request.Headers["Referer"].ToString())); } catch (Exception ex) { ViewBag.Error = ex.Message + ex.InnerException; var user_id = _userManager.GetUserId(HttpContext.User); var profile = _clinicianService.Get().FirstOrDefault(e => e.user_id == user_id); //get all the appointments of the profile ViewBag.appointment = _appointmentService.GetProfileAppointments(profile.id); ViewBag.schedules = _clinicianAvailabilityService.Get(profile.id); //get the clients of the clinician ViewBag.profiles = _profileService.Get().Where(e => e.profile_type == 1); return(View("CProfile", profile)); } }
public IActionResult PostClinicianAvailability(AvailabilityModel model) { var days = new[] { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; foreach (var day in days) { var availabilities = model.availability.Where(e => e.Key.EndsWith(day)); if (availabilities.Any() && availabilities.Count() == 2) { if (!string.IsNullOrEmpty(model.availability["End_" + day]) && !string.IsNullOrEmpty(model.availability["End_" + day])) { try { var end_time = Convert.ToDateTime(model.availability["End_" + day]); var start_time = Convert.ToDateTime(model.availability["Start_" + day]); _clinicianAvailabilityService.AddOrUpdate( new mp_clinician_availability { day_name = day, start_time = start_time, end_time = end_time, status = true, created_at = DateTime.Now, clinician_id = model.clinician_id }); } catch (Exception) { } } } } return(Ok(200)); }