public DentistPage() { InitializeComponent(); BindingContext = model = new DentistViewModel(); this.Title = "Booking appointments"; NavigationPage.SetHasNavigationBar(this, true); }
public ActionResult Index(DentistViewModel viewModel) { if (this.ModelState.IsValid) { this.dentistService.updateDentist(this.User.Identity.Name, viewModel.Name, viewModel.Description, viewModel.Town, viewModel.Spec); return(this.RedirectToAction("Index")); } return(this.View(viewModel)); }
public IActionResult Details(string id) { var dentist = this._dentistService .GetDentistById(id); var dentistViewModel = new DentistViewModel { FirstName = dentist.FirstName, LastName = dentist.LastName, Specialty = this._specialtyService .GetSpecialtyNameById((int)dentist.SpecialtyId), ClinicName = this._clinicService .GetClinicById((int)dentist.ClinicId) .Name, ImageUrl = dentist.ImageUrl }; return(View(dentistViewModel)); }
public async Task <IActionResult> DentistPatients() { var user = await this._userManager.GetUserAsync(User); var patients = this._patientService .GetAllDentistPatients(user.Id) .Select(p => new PatientViewModel { Id = p.Id, FirstName = p.FirstName, LastName = p.LastName, }) .ToArray(); var ratings = this._ratingService .GetAllRatingsForDentist(user.Id) .Select(r => new RatingInputModel { DentistId = user.Id, PatientId = r.PatientId, RatingByPatient = r.RatingByPatient, }) .ToArray(); if (ratings.Length == 0 && patients.Length == 0) { return(View("NoPatients")); } var averageRatingForDentistPerPatient = new Dictionary <string, string[]>(); foreach (var patient in patients) { var ratingsByPatient = this._ratingService .GetAllRatingsForDentistByPatient(user.Id, patient.Id) .Select(r => new RatingInputModel { DentistId = user.Id, PatientId = r.PatientId, RatingByPatient = r.RatingByPatient, }) .ToArray(); if (ratingsByPatient.Length > 0) { double averageRating = ratingsByPatient .Average(r => r.RatingByPatient); averageRatingForDentistPerPatient[patient.Id] = new string[] { $"{patient.FirstName} {patient.LastName}", averageRating.ToString("0.00", CultureInfo.InvariantCulture) }; } else { averageRatingForDentistPerPatient[patient.Id] = new string[] { $"{patient.FirstName} {patient.LastName}", "Not Rated" }; } } var dentistViewModel = new DentistViewModel { AverageRatingByPatient = averageRatingForDentistPerPatient, AverageRating = ratings.Count() > 0 ? ratings.Average(r => r.RatingByPatient).ToString("0.00", CultureInfo.InvariantCulture) : "Not Rated" }; return(View(dentistViewModel)); }