Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
        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)));
 }