public async Task AddPatient_Post(PatientForEditVM newPatient) { var patient = _mapper.Map <Patient>(newPatient); var address = _mapper.Map <Address>(newPatient.Address); await _patientRepository.Add(patient); address.PatientId = patient.Id; await _addressRepository.Add(address); }
public async Task EditPatient_Post(PatientForEditVM editedPatient) { var patient = _mapper.Map <Patient>(editedPatient); var address = _mapper.Map <Address>(editedPatient.Address); address.PatientId = patient.Id; await _addressRepository.Update(address); await _patientRepository.Update(patient); }
public FirstVisitVM FirstVisit_Get(PatientForEditVM newPatient, DateTime?date, int?dentistId) { if (date == null) { date = DateTime.Today; } var dentists = _dentistRepository.GetAll().ProjectTo <DentistBasicInfoVM>(_mapper.ConfigurationProvider); var patients = _patientRepository.GetAll().ProjectTo <PatientBasicInfoVM>(_mapper.ConfigurationProvider); var bookedVisits = new List <DateTime>(); var availableVisits = new List <TimeSpan>(); CheckForAvailableVisits(dentists, patients, bookedVisits, availableVisits, date.Value, dentistId); var dent = dentists.Select(s => new SelectListItem { Text = s.Name + " " + s.LastName, Value = s.Id.ToString() }).ToList(); dent.Insert(0, new SelectListItem { Text = "Any", Value = "0" }); var visit = new TemporaryVisitVM() { Dentists = dent, PatientId = newPatient.Id, AvailableVisits = availableVisits, VisitDate = date.Value, DentistId = dentistId.GetValueOrDefault(0) }; return(new FirstVisitVM() { Patient = newPatient, Visit = visit }); }
public async Task <ActionResult> Edit(IFormCollection collection, PatientForEditVM editedPatient) { await _service.EditPatient_Post(editedPatient); return(RedirectToAction(nameof(Index))); }
public async Task <ActionResult> Create(IFormCollection collection, PatientForEditVM newPatient) { await _service.AddPatient_Post(newPatient); return(RedirectToAction(nameof(Index))); }
//GET: VisitController public ActionResult FirstVisit(PatientForEditVM patient, DateTime?date, int?dentistId) { return(View(_service.FirstVisit_Get(patient, date, dentistId))); }