public PregnancyViewModel GetDetail(string UserId, int PatientId) { var result = new PregnancyViewModel(); var adminRole = _repository.GetContext().Roles.Where(p => p.Name == "PatientAdmin").Select(p => p.Id).FirstOrDefault(); var applicationUser = _repository.GetContext().UserRoles.Where(p => p.UserId == UserId && p.RoleId == adminRole).ToList(); if (applicationUser.Count > 0) { result.IsAdmin = true; } else { result.IsAdmin = false; PatientId = _repository.GetContext().Patients.Where(p => p.UserId == UserId).Select(p => p.Id).FirstOrDefault(); } //var patient = _repository.GetContext().Patients.Where(p => p.Id == PatientId).FirstOrDefault(); var pregnancy = _repository.GetContext().Pregnancy.Include(p => p.Patient).Where(p => p.PatientId == PatientId).FirstOrDefault(); result.Id = pregnancy.Id; result.FirstName = pregnancy.Patient.FirstName; result.Surname = pregnancy.Patient.Surname; result.DateOfBirth = pregnancy.Patient.DateOfBirth; result.EDD = pregnancy.EDD; result.NHSNumber = pregnancy.NHSNumber; result.MaternityUnit = pregnancy.MaternityUnit; var communicationNeed = _repository.GetContext().CommunicationNeed.Include(p => p.Pregnancy).Where(p => p.PregnancyId == pregnancy.Id).FirstOrDefault(); result.CommunicationNeedViewModel = Mapper.Map <CommunicationNeed, CommunicationNeedViewModel>(communicationNeed); return(result); }
public bool SaveDetail(PregnancyViewModel model, string UserId) { var result = false; try { var patient = _repository.GetContext().Patients.Where(p => p.Id == model.PatientId).FirstOrDefault(); patient.FirstName = model.FirstName; patient.Surname = model.Surname; patient.DateOfBirth = model.DateOfBirth; patient.GenderId = model.GenderId; patient.NhsNumber = model.NHSNumber; patient.PasNumber = model.PASNumber; patient.SetUpdateDetails(UserId); _repository.SaveExisting(patient); var pregnancy = _repository.GetContext().Pregnancy.Where(p => p.Id == model.Id).FirstOrDefault(); //pregnancy.EDD = model.EDD; pregnancy.NHSNumber = model.NHSNumber; //pregnancy.MaternityUnit = model.MaternityUnit; _repository.SaveExisting(pregnancy); result = true; }catch (Exception ex) { result = false; } return(result); }
public IActionResult Detail(PregnancyViewModel model) { var SaveDetail = _patientService.SaveDetail(model, CurrentUserId.ToString()); if (SaveDetail) { return(RedirectToAction("Index")); } model.IsAdmin = true; return(View(model)); }
public PregnancyViewModel GetDetail(string UserId, int PatientId, bool isPharmixAdmin) { var result = new PregnancyViewModel(); if (IsAdminUser(UserId, isPharmixAdmin)) { result.IsAdmin = true; } else { result.IsAdmin = false; PatientId = _repository.GetContext().Patients.Where(p => p.UserId == UserId).Select(p => p.Id).FirstOrDefault(); } //var patient = _repository.GetContext().Patients.Where(p => p.Id == PatientId).FirstOrDefault(); var pregnancy = _repository.GetContext().Pregnancy.Include(p => p.Patient).Where(p => p.PatientId == PatientId).FirstOrDefault(); if (pregnancy != null) { result.Id = pregnancy.Id; result.FirstName = pregnancy.Patient.FirstName; result.Surname = pregnancy.Patient.Surname; result.DateOfBirth = pregnancy.Patient.DateOfBirth; //result.EDD = pregnancy.EDD; result.NHSNumber = pregnancy.Patient.NhsNumber; result.PASNumber = pregnancy.Patient.PasNumber; //result.MaternityUnit = pregnancy.MaternityUnit; result.PatientId = PatientId; result.GenderId = pregnancy.Patient.GenderId ?? 0; result.Gender = pregnancy.Patient.Gender != null ? pregnancy.Patient.Gender.Name : "N/A"; } result.GenderList = new SelectList(_repository.GetAll <Gender>(), "Id", "Name", result.GenderId); return(result); }
public bool SaveDetail(PregnancyViewModel model, string UserId) { var result = false; try { var patient = _repository.GetContext().Patients.Where(p => p.Id == model.PatientId).FirstOrDefault(); patient.FirstName = model.FirstName; patient.Surname = model.Surname; patient.DateOfBirth = model.DateOfBirth; patient.SetUpdateDetails(UserId); _repository.SaveExisting(patient); var pregnancy = _repository.GetContext().Pregnancy.Where(p => p.Id == model.Id).FirstOrDefault(); pregnancy.EDD = model.EDD; pregnancy.NHSNumber = model.NHSNumber; pregnancy.MaternityUnit = model.MaternityUnit; _repository.SaveExisting(pregnancy); if (model.CommunicationNeedViewModel.Id > 0) { //Save Existing var communicationNeed = _repository.GetContext().CommunicationNeed.Where(p => p.Id == model.CommunicationNeedViewModel.Id).FirstOrDefault(); communicationNeed.AssistanceRequired = model.CommunicationNeedViewModel.AssistanceRequired; communicationNeed.AssistanceRequiredDetail = model.CommunicationNeedViewModel.AssistanceRequiredDetail; communicationNeed.PreferredAssistance = model.CommunicationNeedViewModel.PreferredAssistance; communicationNeed.SpeakEnglish = model.CommunicationNeedViewModel.SpeakEnglish; communicationNeed.FirstLanguage = model.CommunicationNeedViewModel.FirstLanguage; communicationNeed.PreferedLanguage = model.CommunicationNeedViewModel.PreferedLanguage; communicationNeed.InterpreterPhone = model.CommunicationNeedViewModel.InterpreterPhone; communicationNeed.SetUpdateDetails(UserId); _repository.SaveExisting(communicationNeed); } else { //Add new Record var communicationNeed = new CommunicationNeed(); communicationNeed.AssistanceRequired = model.CommunicationNeedViewModel.AssistanceRequired; communicationNeed.AssistanceRequiredDetail = model.CommunicationNeedViewModel.AssistanceRequiredDetail; communicationNeed.PreferredAssistance = model.CommunicationNeedViewModel.PreferredAssistance; communicationNeed.SpeakEnglish = model.CommunicationNeedViewModel.SpeakEnglish; communicationNeed.FirstLanguage = model.CommunicationNeedViewModel.FirstLanguage; communicationNeed.PreferedLanguage = model.CommunicationNeedViewModel.PreferedLanguage; communicationNeed.InterpreterPhone = model.CommunicationNeedViewModel.InterpreterPhone; communicationNeed.PregnancyId = pregnancy.Id; communicationNeed.SetUpdateDetails(UserId); var saveNew = _repository.SaveNew(communicationNeed); } result = true; }catch (Exception ex) { result = false; } return(result); }