public async Task <IActionResult> Put([FromBody] PatientEditModel model) { var patient = MapModelToEntity(model); await _genericService.Update(patient); MapAndCreateConsultation(patient, model.Consultation); return(Ok(patient.Id)); }
private Patient MapModelToEntity(PatientEditModel model) { var patient = _mapper.Map <Patient>(model); if (model.SocialSecurityId.HasValue) { patient.SocialSecurity = _genericService.Get <SocialSecurity>(model.SocialSecurityId.Value).Result; } if (model.DiagnosticId.HasValue) { patient.Diagnostic = _genericService.Get <Diagnostic>(model.DiagnosticId.Value).Result; } return(patient); }
public PatientEditModel FromPatient(Patient patient) { var viewModel = new PatientEditModel(); if (patient.Id != null) { viewModel.Id = patient.Id; } viewModel.Name = patient.Name; viewModel.Status = patient.Status; viewModel.Birthday = patient.Birthday; viewModel.TaxCode = patient.TaxCode; viewModel.Doctors = DoctorsToMultiselect(patient.Doctors.Select(d => d.Id)); viewModel.AccountId = patient.AccountId; return(viewModel); }
public IActionResult Edit(Guid id) { var patient = patienService.GetPatient(id); var patientEditModel = new PatientEditModel() { Id = patient.Id, Photo = patient.Photo, Email = patient.Email, FullName = patient.FullName, MedData = patient.MedData, PassData = patient.PassData, Sex = patient.IsMan == true }; return(View(patientEditModel)); }
public ActionResult Edit(PatientEditModel viewModel) { if (ModelState.IsValid) { Patient patient = updater.ToPatient(viewModel); db.Patients.Update(patient); var user = UserManager.FindById(viewModel.AccountId); user.Email = viewModel.Email; user.UserName = viewModel.Email; if (UserManager.Update(user).Succeeded) { return(RedirectToAction("Index")); } return(new HttpStatusCodeResult(500)); } return(View(viewModel)); }
public IActionResult Edit(PatientEditModel patientEditModel) { if (ModelState.IsValid) { var patientModel = MapPatientModel(patientEditModel); patienService.UpdatePatient(patientModel); if (User.Identity.Name == "Admin") { return(Redirect($"/patient/{patientModel.Id}")); } return(RedirectToAction("Home", "Patient")); } else { return(View(patientEditModel)); } }
private PatientModel MapPatientModel(PatientEditModel editModel) { var config = new MapperConfiguration(cfg => cfg.CreateMap <PatientEditModel, PatientModel>()); var mapper = new Mapper(config); var patientModel = mapper.Map <PatientModel>(editModel); patientModel.IsMan = editModel.Sex == true; patientModel.IsWoman = editModel.Sex == false; if (editModel.PhotoFile != null) { byte[] imageData = null; // считываем переданный файл в массив байтов using (var binaryReader = new BinaryReader(editModel.PhotoFile.OpenReadStream())) { imageData = binaryReader.ReadBytes((int)editModel.PhotoFile.Length); } patientModel.Photo = $"data:image/jpeg;base64, {Convert.ToBase64String(imageData)}"; } return(patientModel); }
public Patient ToPatient(PatientEditModel viewModel) { Patient patient; if (viewModel.Id != null) { patient = db.Patients.Get((int)viewModel.Id); } else { patient = new Patient(); } patient.Name = viewModel.Name; patient.Status = viewModel.Status; patient.Birthday = viewModel.Birthday; patient.TaxCode = viewModel.TaxCode; if (viewModel.DocIds != null) { patient.Doctors.Clear(); patient.Doctors.AddRange(DoctorsForPatient(viewModel)); } patient.AccountId = viewModel.AccountId; return(patient); }
private IEnumerable <Doctor> DoctorsForPatient(PatientEditModel viewModel) { return(db.Doctors.GetAll().Where(d => viewModel.DocIds.Contains((int)d.Id))); }